MobileFirst on iOS: start Google Maps and let user return - ios

I use a standard Maps protocol for iOS in my MobileFirst 7.0 hybrid app:
...
The Google Maps app opens correctly, however there is no possibility to return back to my app. The iOS apps list shows my app icon with Google Maps screen. The Google Maps UI has no exit button to return back. I would expect there to be two separate processes: my app and Google Maps.
Am I doing anything wrong or is this intended? If so, how should one go about something like this?

Per the Apple guide, this will open either Safari or the Maps app. It does not mention anything on returning back to the app, so that's just that: https://developer.apple.com/library/ios/featuredarticles/iPhoneURLScheme_Reference/MapLinks/MapLinks.html
Edit: but to get it to work in web apps, like in the case of IBM MobileFirst, where the app is rendered in a WebView inside an app, you should not follow Apple's guidelines to use a URL such as: http://maps.apple.com?q=... but rather only maps:q=....
By using the second option the actual Apple Maps app will launch instead of replacing your app with Google Maps.

Related

Opening 'comgooglemaps://' uri is opening another app. - iOS

While opening google maps in iOS by using scheme comgooglemaps:// , It is opening another app named Pitch Gauge. I also confirm that Google Maps app is installed in my iPhone. Still its not picking the url scheme of Google Maps app and trigerring for Pitch Gauge App.
I am using the code given below with cordovaInAppBrowser.
cordova.InAppBrowser.open( "comgooglemaps://?q=" + address, "_system");
Want to know if there any change in URL scheme in iOS for redirecting to Google Maps. Or there's any need to make change related scheme url in iOS?

Fetch App referrer when iOS App opened from other iOS app

Did some research but haven't found way to detect app referrer in iOS app(App is based on Swift Language), Flow is
Someone has posted some web link on FB i.e. link is
https://example.com.
Assume our iOS app is already installed on user's
device, hence when someone click on that link it will trigger ourapp(via
deep linking flow), and its working fine but also would like to know
source from which app user land to our iOS app.
Looks like in android there is way to achieve this using AndroidAppUri but haven't found way for iOS, let me know if anybody has any suggestion\input.

Swift 3 .If I will use google Maps in my project (google sdk) will the user need to instal google maps before using it?

Swift 3. If I use google Maps in my project (google sdk) and whenever user will open View Controller with this maps will the user need to download google maps or it will work straight away even if user haven't got installed google maps?
Thank you
If you use Google Maps in your application through the SDK, there is no requirement for the user. They don't need to have the Google Maps app on their phone.
So yes, it will work straight away.
The only things you need to make sure is to make sure you configure the SDK as described in Google's SDK Start Guide and that you have an API key requested from Google and configured it in your app.
Size impact
It is hard to say how the Google SDK impacts the size of your app, because Apple does a lot of optimization (e.g. If you allow App Thinning it might be a lot smaller). I think for my apps it makes about a 3-10 MB difference.
iTunes Connect allows you to inspect the estimated size of the app. The screenshot is from an app I worked on that uses 13 different pods, including Google Maps.
In order to see this go to iTunes Connect > [Your App] > Activity > All Builds > [Select a Build] > App Store File Sizes

iOS Native Maps URL scheme multiple pins

I am using PhoneGap to build applications for iOS and Android.
I want to open the native map application on iOS with multiple pins. I am able to open the native map on iOS device using their Maps URL scheme using a ?q=lat,long parameter
http://developer.apple.com/library/ios/#featuredarticles/iPhoneURLScheme_Reference/Articles/MapLinks.html
Is it possible to open the native maps app and showing multiple pings instead of only one?
I have tried enough to search for it but there isn't enough documentation to answer my question.
Thank you for the help
Create an MKMapItem for each pin you want to display, save the MKMapItems to an array, and then use openMapsWithItems:launchOptions: to send the array to the Maps app. The Maps app will display a pin for each item in the array.
I have not used this myself, but it's from Apple's documentation at:
http://developer.apple.com/library/ios/documentation/MapKit/Reference/MKMapItem_class/Reference/Reference.html#//apple_ref/occ/clm/MKMapItem/openMapsWithItems:launchOptions:

Apple App rejection due to non native buttons and features

While developing a phonegap smartphone application which runs on ios/android and bb v6+, im using a web service call to google maps and using tags for navigating through the application. I received an answer from apple with the following rejection message:
We found the following issues with the user interface of your app:
- Did not include iOS features. For example, it would be appropriate to use native iOS buttons and iOS features.
Additional user interactive features are needed.
My app has 2 buttons, one for searching and one to view the search results, both of which are non-native, html < button > tags.
Is it possible to use the native iOS buttons with a phonegap project, i.e using the search button (magnifying glass with word 'search' underneath), with a plugin?
Is it possible that my app was rejected for using a Google Maps web service call? if that were the case, i imagine the rejection message would be similar to the rejection message seen in this previous post
Any ideas/suggestions/guidelines would be great,
thanks
You could implement the NativeControls plugin. Judging by your screenshots a the iOS tab bar should work well with your app.
Not using native controls isn't a problem in itself. However, your app is too close to the appearance of a standard iOS settings page, which means that anything which doesn't exactly match that will feel broken.

Resources