Can I use Apple Car Play to get me the car VIN Number - carplay

I'm in the discovery stages of an extension to my application. I'm looking to enable my app to work with Apple CarPlay. I'm looking to see if a user plugs in their phone, can I get a VIN Number from the car?

Related

Trouble and needed clarification for Itunes Connect

I am adding game center to my application and I feel lost. First of all,, my app is nmot a game, but I want people to see thier friends "score". Will I have to classify the app as a game? I am working on adding my app to itunes connect but I dont quite get it. When I add it and select the distribution date, will I have to distribute it? What happens when that day is reached? Do I even need to do all this to use gamecenter in my beta version? How does the app know its connected to itunes connect? Sorrty if these are stupid questiopns, but I dont quite understand.
If your app uses Game Center, the most typical thing is that it was classified by you as a game. We don't know how, and especially who, will review your app, so it could pass the review process, though.
Let's see two things:
- if you need to show a leaderboard, but the app is not a game, you could create your own leaderboard, or use a third party leaderboard (eg Google's).
- different questions are those that you pose in the end of your multiple "question". I suggest you look for each one of those in the Internet. Shortly, the date of public release depends on app submission and approval. If the date for public release is 1/1/2011 and you send the app to Apple, when it is approved it will automatically be published. You shouldn't send beta versions to Apple. The Game Center features should be available in sandbox mode while developing (please look for those terms in the Internet).

Is there a method to track gps of another iphone if both the iphone is having application installed?

I am new to iphone development.I want to know that is there a framework or method to get the gps location of another iphone if the application is installed in both the iphone.
If there is any method can u please help me to sort out this
thanks in advance?
I agree with James, thank god it is not open in that anyone can see where anyone is via a single method, but I did create a solution that does this as a test app and it was not to difficult.
The frameworks that I used are Core Location to get the GPS coordinates, Foundation Framework to share the information with a web service using NSURLConnection, MapKit to map the coordinates, and the open source SBJson encoder/decoder.
I then created a PHP web service that enabled users of the app to register and choose who they would share their location with.
Then once per minute each instance of the app that is active would send its coordinates to the web service and then download any coordinates of other devices that it is allowed to see.
If I published this app, I would probably provide an option to chose the update frequency to conserve battery life.
Two free apps that also do this, that were created by Apple, are the Find Friends and Find iPhone apps.
If you are interested in creating something like this, check out the LocateMe sample code at developer.apple.com.

How to Find Nearby iOS Devices (GPS locations) using same app

I want to create an app that allows a user to find the nearby other users location using GPS coordinates who are Logged in to the same app .Also it can be track the location of the devices(Logged in to the same app) which are moving in a car .
Can someone give me an overview of how I can accomplish this. is there any free API available to accomplish this task.
Danielbeard is correct - you would need to be continually storing/updating locations on a server somewhere. Your app does get some running time when it is in the background, but I'm not sure it would be enough to run the web traffic that you'd need.
Check out this post: Running app in background and send frequent http request
And check out the multitasking guide here: Multitasking Guidelines
You can also look at Push Notifications. Hopefully this helps.
In iOS7 MultiPeerConnectivity was introduced to find near by applications, so if you have a coffee shop and someone walks by or in they could get the latest deals, or, you walk into a room and the music changes to what you like as your device exchanges information with another.
http://nshipster.com/multipeer-connectivity/

iPhone indoor location based app

I am researching how to create an app for my work that allows clients to download the app (preferably via the app store) and using some sort of wifi triangulation/fingerprints be able to determine their location for essentially an interactive tour.
Now, my question specifically is what is the best route to take for the iPhone? None of the clients will be expected to have jail broken iPhones.
To my understanding this requires the use of the wifi data which is a private api therefore not meeting the app store requirements. The biggest question I have is how does American Museum of Natural History get away with using the same technology, but still available on the app store?
if you're unfamiliar with American Museum of Natural History interactive tour app, see here:
http://itunes.apple.com/us/app/amnh-explorer/id381227123?mt=8
Thank you for any clarification you can provide.
I'm one of the developers of the AMNH Explorer app you're referencing.
Explorer uses the Cisco "Mobility Services Engine" (MSE) behind the scenes to determine its location. This is part of their Cisco wifi installation. The network itself listens for devices in the museum and estimates their position via Wifi triangulation. We do a bit of work in the app to "ask" the MSE for our current location.
Doing this work on the network side was (and still is) the only available option for iOS since, as you've found, the wifi scanning functions are considered to be private APIs.
If you'd like to build your own system and mobile app for doing something similar, you might start with the MSE.
Alternatively, we've built the same tech from Explorer into a new platform called Meridian which provides location-based services on both iOS and Android. Definitely get in touch with us via the website if you're interested in building on that.
Update 6/1/2017
Thought I would update this old answer - AMNH is no longer using the Wifi-based system I describe above, as of a few years ago. They now use an installation of a few hundred battery-powered Bluetooth Beacons (also provided by Meridian). The device (iOS or Android) scans for nearby beacons and, based on their known locations and RSSI values, triangulates a position. You can read more about it in this article.
Navizon offers an indoor positioning solution that works for iOS as well as any other platform. You can check it out here:
http://www.navizon.com/product-navizon-indoor-triangulation-system
It works by triangulating the WiFi signals transmitted by the device. Since it doesn't require an app to run on the phone, it bypasses the iOS limitations and can locate any other WiFi device for that matter.
Google recently launched an API called Maps Geolocation API. You can use it for indoor tracking of devices, which essentially can be used to achieve something similar to what AMNH's app does.
I would do this using Augmented Reality. There is a system sort of in place for this, the idea being that you place physical markers that have virtual information associated with them. I believe the system I saw was a type of bar code. When a user holds up the phone with the app, the app uses the camera to read the code and then display information. This could easily be used to make a virtual tour type app distributable through the app store and not even require a WIFI or 3/4G connection. This assumes that you simply load your information and store it locally with your app. Then to update it you simply push an update through the app store. Another solution is to use a SOAP/REST service and provide the information in that way, and this does not use private API's, though it does require some form of internet connection. For this you can see a question I asked about this topic a little bit ago:
SOAP/XML Tutorials Question
In addition, you could load a map of your tour location, and based on what code is scanned you can locate the user on the map and give suggested routes based on interests etc.
I found this tutorial recently on augmented reality, I haven't gone through it, but if its anything like the rest of Ray's tutorials, it will be extremely helpful.
http://www.raywenderlich.com/3997/introduction-to-augmented-reality-on-the-iphone
I'll stick around to clarify any questions or other concerns you may have with your app.
To augment the original answer for devs who were using Cisco MSE for indoor location - now they have an iOS and Android SDK which enables you to do indoor location using the MSE. A simulator can be used as well to develop the app without implementing the infrastructure to start with : https://developer.cisco.com/site/cmx-mobility-services/downloads/
For indoor location you can use Bluetooth LE beacons since it's a very accessible technology nowadays, there are several methods:
Trilateration: it uses 3 beacons, but with the noise and attenuation of Bluetooth signals, it gets quite difficult to determine the exact position and also it's not easy to use more than 3 beacons to increase accuracy.
Levenberg Marquadt method: used to solve non-linear squares problems showed good results on indoor positioning.
Dead Reckoning method: using the motion co-processor of the device, giving an initial position you can calculate the moving path of the device. Not that easy to implement anyway.
I wrote a post on the topic, you can find more info here: http://bits.citrusbyte.com/indoor-positioning-with-beacons/
And you can use this iOS app for your own indoor positioning experiments: https://github.com/citrusbyte/beacons-positioning
I doubt the American Museum is actually using private APIS; you'll probably find the routers that have been setup serve different responses to each other, so the app can detect it's position in the museum.
If you are looking for a cheaper to way to do the same task, you could have signs with QR codes, and use an open source library to let users scan these barcodes as they move through the museum, and update the onscreen content accordingly. On an even more low tech level, you can just tag each area with unique numbers, and distinguish that way.

GameCenter - taking into consideration in-app purchases

It looks to me like Apple was in a bit of a hurry to implement GameCenter. Maybe I am overlooking something.
If you create a game where you want to offer in-app purchases (say you want to sell additional maps or add ons), is there any way at all to match players who share the same maps (plural) using GKMatchRequest? i.e. whose in-app purchases overlap, but are not the exact same.
Or maybe you want to sell cars in a race game. How can you match players who share some of their cars, not necessarily all of them? I think you can't, because the playerGroup property in a GKMatchRequest compares only if users belong to the same group.
So if one user buys map A and map B and another user buys map B and map C, there is no way to match them, although they could be playing map B together. Of course you could implement your interface so that users have to specify which map they want to play on. But there are other scenarios where an in-app purchase might not be an either/or question, but might be combined in a game (e.g. if you can buy different soldier types in a battle game and then match players who share some of their soldier types... in the game itself you could then implement logic to exclude those types the players do not share).
Can anyone think of a solution that works?
In the map case, I think you would need to let the user choose the map first. Otherwise, say you match two players and they have maps B, C, and E in common. Now you need a way for them to agree on what map to play on. Maybe player 1 intended to play map B and player 2 wanted map E. Even if they share a subset, now you have to do the work that could have been done in the matching process.
In the cars case, I think you need to ask why you want to compare players this way. If it is simply out of fairness (so you don't match someone with powerful cars against a newbie) then you can create a "level" based on top car speed. Maybe you will match people with different sets of cars, but they can be evenly matched.
Finally, if the players absolutely need to have a matching thing, make a best effort using the previous suggestion, and if they don't, pop up a message saying, "Hey, you don't have any matching cars. Want to buy this one so you can play together?" Offer to buy it now or find another player. You might make some sales this way.
P.S. Sorry to be preachy, but it's not fair to say Apple did a half-a***d job. Game Center is a system that must scale up to millions of users, who want to find matches more or less instantly. Attempting to match by overlapping subsets would add a significant amount of complexity to the system, and I don't think you are appreciating the cost of such a design.
It sucks that can't do exactly what you need, but it's a poor attitude to assume the shortcomings are due to incompetence.
Here's another dilemma with supporting both In-app purchases and Game Center (please respond in the comments).
Say my game includes in-app purchases for ten individual puzzle packs and my game also includes a free multiplayer mode using Game Center. At any time, a single iOS device has an iTunes store account logged in and this is the account that is used for determining the status of all in-app purchases for my app. If a user logs out of their iTunes store account on a single device and a new user logs into their iTunes store account on the same device (using the "Store" tab in the settings application), then the status of in-app purchases for my app will be updated for the newly logged in iTunes store user. Perfect! Now what happens if my app uses Game Center to allow different users to use the same app? It seems suddenly you have two different types of user accounts for a single app. One account for Game Center and one account for the iTunes store, correct? For exmaple, if user1 logged into my app using Game Center and bought three puzzle packs, then those puzzle packs would be charged to whatever iTunes account is currently logged in on the device. If user1 logs out of Game Center and user2 logs into Game Center, won't the iTunes account that is currently logged in remain the same, meaning user2 will have access to the puzzle packs bought by user 1? Doesn't that also mean user2 can purchase additional puzzle packs under the same iTunes account that user1 used?
Even worse, what if I want to create Game Center achievements based on completing a purchased puzzle pack? Suddenly, different Game Center users would receive the achievements for puzzle packs they didn't solve since they share the same puzzle pack state, right?
In "Game Kit Programming Guide > Multiplayer > Player Groups", they state that "typically, your game should present its own user interface to allow the player to select parameters that are used to calculate the player group number." I guess they didn't planned to permit this kind of restriction you need.
I can only see four options:
Use a "demo version" of the map (i.e. if a user bought map A, it will allow him to "host" a match on A, wherever guest players bought A or not). If your game can also play as single player, it may be used as some kind of advertising for guests.
Create your own server. This is evil and obscure, but I guess you can make any kind of matching rule this way.
"Reject" a player that didn't bought the map (never tested, but I guess it will be unpleasant for the rejected player).
Create "groups of maps". Using the car's example (adapted to motorcycles), there could be a 100cc group, a 250cc group, and so on. People could by "A" (100cc) and compete against players that bought "B" (also 100cc). With maps, could be "water maps", "winter maps", and so on. This will add value to the purchase and make things easy for us. But I guess this will require some UI coding, too.
Considering the maximum number of players is only 4, I don't think Apple prepared Game Center to host complex games. Maybe it's just like OpenGLES: great tool, but you must be a super-hardcore-developer to make something uber-cool like the Unreal Engine's Epic Citadel (not available on Brazil's App Store - sadly).