App was rejected cause non-public API in Google Maps SDK for iOS - google-maps-sdk-ios

My app was rejected by Apple this week because of the following non-public APIs
nextStartIndex
canGoOffline
I did find the nextStartIndex in Google Client API, and I renamed it to _nextStartIndex.
But I can not find canGoOffline anywhere. The reviewer of Apple indicated that it was used by [GMSServices checkReadyForOffline] which is provided by Google Maps SDK for iOS. What can I do now? I can not fix this issue as I did on nextStartIndex since there is no way to get source code of it.
I think there are lots of Apps integrated Google Maps SDK, they should encounter the same problem. But after searching for a while online, I did not find any information helpful.
This problem occurred after I upgraded Google Maps SDK for iOS to version 2.0.1. Reverse the SDK to a previous version is a possible solution. But is there any other better way?
Any suggestion will be appreciated
Anderson

This is a false positive and Google are working on a new version of the SDK.
https://code.google.com/p/gmaps-api-issues/issues/detail?id=10393
In the mean time if using Obj-C put this in your App Delegate.
-(BOOL)canGoOffline{return false;}
Or Swift...
func canGoOffline() -> Bool {
return false
}

Related

Minimum google play service version for min Sdk Version 17

My application minimum sdk version is 17 and i have map, that old google play services do not support it. I want to know from which versions of google play service do not support this sdk version?
Here is a list of required SDK's for different android versions:
https://developer.android.com/distribute/best-practices/develop/target-sdk
check, it will help you.
i find another solution to my problem. in fact i wanted to handle the devices that not support google map because their google play services are not updated. so i use code below
int resultCode = GoogleApiAvailability.getInstance().isGooglePlayServicesAvailable(this);
if (resultCode != ConnectionResult.SUCCESS) {
//my handling code
}
to handle.

iOS Wikitude Google Maps SDK Did not clear context upon block exist

I am using Wikitude SDK for augmented reality. It works ok.
Google Maps SDK for iOS work fine.
Problem is when I turn on Wikitude SDK and then I try using Google Maps SKD.
On Console I receive information:
"Did not clear context upon block exist"
On second try Google Maps doesn't render a map.
What should I do to fix this problem. Mapkit doesn't have this problem but my boss wants to use Google Maps SDK. I don't want to write a app with single ViewController.
I searched Google for phrase "Did not clear context upon block exist" but I didn't find anything.
Edit:
I am using iOS 7 SDK with Xcode 5. Wikitude draw point on camera. On Google Maps SDK I just insert markers on map. Nothing special. Everything works fine just one thing trigger something another as programmer I know I am in deep trouble. I don't know what is happening inside this SDKs.
I am also using container views to separate map and my view with buttons .
Google Maps iOS API version 6.1 resolved that bug.
I should thank Google developers for fix and Wikitude developers for help on forum.
Wikitude forum

Google Maps Heatmap in Websharper?

I'm evaluating Websharper, and the project I'm doing is all about heat maps in Google Maps.
Is it possible to use the Google Maps extension for Websharper to display heatmaps?
I'm not using Fusion tables.
There is hardly any documentation available, but through browsing IntelliFactory.WebSharper.Google.Maps in intellisense it doesn't look possible.
Please try the latest NuGet package. I have not yet been able to finish the upgrade yet, but this binary will give you just enough to get started with Heatmaps API. For example, see this. The Google Maps extension is now open-source with matching Bitbucket and GitHub repositories, contributions are very welcome.

Google Maps iOS SDK - Search for places

I'm new to both iOS programming & the Google Maps iOS SDK, so apologies if this is a basic question.
I want to include a Google map, in an app and give users the ability to search for various places (restaurants, bars, gyms, etc) within a certain radius of a marker.
I know this is possible using the javascript api, but can it be done using the maps iOS SDK? I have read all of the information here and have searched Stack Overflow & Google but I can't really find anything that gives me any pointers.
Within the documentation, Google say that using a URL Scheme you can launch a native iOS app and pass in parameters for searches, directions etc. Is this what I need to be using, or is that more tailored to a webapp?
Any help, advice, or pointers to tutorials (other than the ones provided by Google) would be massively appreciated.
Cheers
The Google Maps URL Scheme can currently only be used to open the Google Maps app to search for a location or for directions. It can't search for places. Also, if your own app did this, then it would shut down your app and switch to the maps app, which may not be what you want. It will also only work if the user has installed the Google Maps app.
You would probably want to use the Google Places API to make http requests from your native app. You can request a response in either JSON or XML format. Then you'll need to parse the response, and use it to add markers to a GMSMapView using the Google Maps SDK for iOS.
This blog post describes this library which the blog post's author wrote to wrap the Google Places API. You wouldn't need most of this code, but it might give you an idea of where to start. This class is the main one which handles the requests to the places API.
Note that this library uses a third-party JSON parser - SBJsonParser. As of version 5.0 iOS includes a native JSON parser, NSJSONSerialization. So if your app's minimum supported iOS version is 5.0 or higher, you don't need to use a third-party library.

How can an IOS app access Google Drive files

Does anyone know how if IOS apps can access files stored on Google Drive?
I did not find what I was looking for on https://developers.google.com/drive/
thanks
Andy
The API for Google Drive is now released for Objective C. You can find it here:
http://code.google.com/p/google-api-objectivec-client/
Google Drive App for iOS will be release soon, is what was said in some articles. See below.
http://www.gottabemobile.com/2012/04/24/google-drive-for-iphone-and-ipad-coming-soon/
http://www.readwriteweb.com/archives/full-sized_screenshots_of_the_google_drive_ipad_ap.php
I think the generic Google GTL Library (Google APIs Client Library for Objective-C - http://code.google.com/p/google-api-objectivec-client/ ) is going to include some generated code for Drive access. Drive SDK docs seem to link there but the code is still missing. Doc is also a bit inconsistent regarding iOS native apps:
"Apps will not have any API access to files unless the app has been installed in Chrome Web Store. To test an app during development, you must first create a listing and install it."
Nico.
Yep although not directly through Objective C you would need to interface with Ruby, Python, PHP, or Java.
Here is a list of Examples: https://developers.google.com/drive/examples/index
http://itunes.apple.com/us/app/idocs-hd-pro-for-google-docs/id498653441?mt=8, I found this App
can access google drive files on iPad, maybe google docs api can
You can use the Google Data APIs Objective-C Client Library to access files stored in Google Drive using the Documents List API.
The library also includes a complete sample: http://code.google.com/p/gdata-objectivec-client/source/browse/#svn%2Ftrunk%2FExamples%2FDocsSample
"Google APIs Client Library for Objective-C" has been depreciated by Google and is only working for apps already on AppStore.
New Implementation for accessing Google Drive API for iOS using "Google APIs Client Library for Objective-C For REST".
Here is the working implementation for accessing Google Drive Files in iOS using "Google APIs Client Library for Objective-C For REST" library : https://stackoverflow.com/a/41649210/1999368