How to aggregate iOS location data on server? - ios

How do I send location data from an iPhone to some webserver?
Is a web server the best way to store that data?
If so, what kind of server?
EDIT: Since people were getting confused about the question, understandably, I'm really looking for best practices on how to store location data in a web server. I don't know if the server would be SQL or no-SQL, I have very little experience in the way of web servers.
So here's what I do know:
I know how to get the location of a user.
I know to use CoreLocation.
My questions:
How do I send the location data from the application to a server, both SQL and non-SQL?
On the server side: How to I store that data? I'm familiar with SQL a little bit but all I'm trying to store is GPS coordinates so I'm not sure if a table is the best way to do that.

Please try to expand your question it will help others to help you.
However, I suggest you firstly read the iOS Location Awareness Programming Guide - this will tell you how to get the location of the device.
Next, read about REST/web server/web frameworks etc and check out the AFNetworking framework for sending data from iOS to a web server.
Then you need to decide how to store the data: in a SQL/no-SQL database? It really depends on what you want to do with the data and what, if any, web servers you have access to/experience with.
I'm afraid your question in it's current form simply raises more questions!

CoreLocation
Ya, guessing you want to do something with it that's not in the app otherwise just use a database.
Be lazy use something like parse.com cloud code.(free 1million api request a month)
Not a great question can you give us a context. What are your doing with the location and why do you need it online.

Although this answer doesn't necessarily promote learning how to do backend stuff yourself, there's this amazing service called Parse that handles almost everything for you. It's incredibly awesome and saves a ton of time. Plus it's free for up to 1,000,000 API calls and 1GB of storage. Absolutely perfect for a small-time business/startup.

Related

Information about API's, Core data iOS design from the start

Good Morning,
I am in the process of designing an app. It will capture data in the device and will sync with a web server, I have a few months learning Swift to develope iOS apps and I am learning to use core data now with small samples.
I have a book I've been reading and available resources like this one:
https://developer.apple.com/library/watchos/documentation/Cocoa/Conceptual/CoreData/index.html
My question is:
Do I have to start learning how to sync and save data in the device at the same time? or I can learn Core Data first, make the app and then start the process of syncing (using JSON)?
What available resources can I see to learn what I need?
This is new for me, I have a friend who knows Ruby and has knowledge about API, but he does not know how mobile devices works in this matter.
I have searched here, but a lot of question and answers I see covers specific topics.
Your help and time is really appreciated. Thanks!
P.S.
I apologize for the term sync (send and receive data to/from the server) if I a using it wrong, or should I use the term API? For me is a little confusing on how to use the term, since it is use for a few things, like data, but also it's used when talking about a method which all the info you need to go to the API of the method, function or class.
The process you should follow is first learn basic iOS developemeet. Check out the tutorials at raywenderlich and hacking with swift. In the process you will learn a bit about networking(working with APIs) and Data Persistence(Core Data).
Since collection of data precedes storage of data you must learn first about REST APIs, JSON, JSON parsing and related stuff, third party libraries available like Alamofire and SwiftyJSON(these can be installed using cocoapods)
And then jump into data persistence which can be done through sqlite database(FMDB is a wrapper available and is super easy), Core Data, NSUserDefaults, plist, Realm etc.

How to get everyone to see everyone else's photos in an instagram-like app

I am a first time iOS developer trying to build an iOS app from the ground up. It is for a photo-sharing startup that will have similar functionality to Instagram.
I am not sure how to approach the sharing/viewing aspect. Would I use something like Parse or Google cloud storage? It is an iOS only app, if that helps. Given that we are just a startup, a long trial or a cost per GB is fine, but I don't want to be stuck with something expensive if we start getting a lot of photo uploads.
Given that I'm the only developer, I'm hoping for something that doesn't require me to learn too many new technologies. Any help would be greatly appreciated!
Parse.com, the API is fairly easy to use. The free plan has a lot of functionality and it scales up well.
That's really a tough question. You first want to research each company and weigh the pros and cons with selecting each service. The Google Cloud and Google App Engine (while they do work extremely well together) are going to be a little less "centralized" since they are essentially marketed as separate services. Parse does have that "centralized" feeling since all of their services are designed to work together.
Another nice thing about Parse is that it has build in support for iOS local datastore which means even if your users don't have an internet connection the request will be queued until a connection is made. If you go with a service like the Google Cloud then you would have to implement that on your own or just not have offline functionality.
While Parse looks like a good solution for you, it would be hard for someone to answer your question with a definitive solution as that is up to you exactly how you want your product to work. Just continue to research other solutions as there may be something better and more suited for your exact needs. You may want to build a small prototype on one platform before dedicating all of your development to that platform.

App that will pull data from website flash game

Basically I need information on how to pull data from a flash game webbased client and put that data into an app. The game is evony.com its a webbased flash game. I can probably figure out the coding such as parse the login and password and display the information in the app. What Im have major problems is following,
How can I find out what data in what format is being transmitted from
webbased client to their server.
What software, preferably free, is out there that will do this for me?
Is there any tutorials, explanations, pointers anything describing this
on the inet because I have searched high and low without success.
I think the problem is because I am a beginner, I do not know the correct wording to serch for to find this information. It's a little like a needle in a haystack :) If you know what you want but dont know what it is called, get a new hobby :(
VERY much appreciated for any help, pointers, explanations, descriptions, tutorials or anything that can help me with this, very very much appreciated all.
/Core
The tool of choice to get started is WireShark. Its a software to monitor in- and outgoing datatransfer. It's very powerfull and a bit complex to get filtering right. Try something different to get started (e.g. do a ftp-login and try to "steal" your own password).
In Step two, you need to reverse engineer the communication between your client and the server. Thats the fun part. If it is encrypted, bad luck.
If you want to read the data, you can use libraries like LibCap to get the data in a language of choice. The flash player interacts with the game and you read the data transmitted.
If you are going for a stand alone program without the running flash client, you need to write your own client based on the protocol you got from step two. Be prepared to be kicked and banned permanently on the slightest error. I haven't checked on this one but every MMO I know and I can imagine do prohobit such tools.

Developing a decoder for CANbus / J1939

So, I have been told that I will need to integrate some CANbus / J1939 output into a Windows app, and I know nothing about it.
There are vague plans to use an off the shelf device, and capture the output from that.
Since this seems to be a 7 layer model, I am presuming that I need to decode layer 3.
And, at that, I am stuck.
Any links to the correct spec? Other information? Existing free code which will take that data, parse it and stuff it into a MySql database? If there a central site, with forum, where I can better direct such questions? Any good books? Any same data for me to practise decoding? I am drowning in google results, but none greatly help.
take a look here http://www.ixxat.com/sae_j1939_api_en.html?navigation=28834, this is a proprietary API.

Geolocation, Is it possible to get latitude and longitude from address and store locally in my database

I want to be able to run queries locally comparing latitude and longitude of locations so I can run queries for certain addresses I've captured based on distance.
I found a free database that has this information for zip codes but I want this information for more specific addresses. I've looked at google's geolocation service and it appears it's against the TOS to store these values in my database or to use them for anything other than doing stuff with google maps. (If somebody's looked deeper into this and I'm incorrect let me know)
Am I likely to find any (free or pay) service that will let me store these lat/lon values locally? The number of addresses I need is currently pretty small but if my site becomes popular it could expand quite a bit over time to a large number. I just need to get the coordinates of each address entered once though.
This question hasn't received enough attention...
You're correct -- it can't be done with Google's service and still conform to the TOS. Cheers to you for honestly seeking to comply with the TOS.
I work at a company called SmartyStreets where we process addresses and verify addresses -- and geocode them, too. Google's terms don't allow you to store the data returned from the API, and there's pretty strict usage limits before they throttle or cut off your access.
Screen scraping presents many challenges and problems which are both technical and ethical, and I don't suppose I'll get into them here. The Microsoft library linked to by Giorgio is for .NET only.
If you're still serious about doing this, we have a service called LiveAddress which is accessible from any platform or language. It's a RESTful API which can be called using GET or POST for example, and the output is JSON which is easy to parse in pretty much every common language/platform.
Our terms allow you to store the data you collect as long as you don't re-manufacture our product or build your own database in an attempt to duplicate ours (or something of the like). For what you've described, though, it shouldn't be a problem.
Let me know if you have further questions about address geocoding; I'll be happy to help.
By the way, there's some sample code at our GitHub repo: https://github.com/smartystreets/LiveAddressSamples
http://www.zip-info.com/cgi-local/zipsrch.exe?ll=ll&zip=13206&Go=Go could use a screen scraper if you just need to get them once.
Also Microsoft provides this service. Check if this can help you http://msdn.microsoft.com/en-us/library/cc966913.aspx

Resources