Could not find class 'com.google.android.gms.location.internal.ParcelableGeofence referenced from method glt.a

老子叫甜甜 提交于 2019-11-29 04:52:55
Alex Ferrer

I show you how I solved the same problem you have.

First of all, I cleaned all sdk and I downloaded again Google Play Services lib. Then I removed .android folder of my computer and I regenerated my debug.keystore.

After that, I just get my new SHA1 to obtain my Google Maps V2 Api Key.

After update my apikey, let's see how I change my code.

Now I use fragment with MapFragment insted of MapView in your xml layout.

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MapsActivity" >

    <fragment
        android:id="@+id/map"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        class="com.google.android.gms.maps.MapFragment" />

</RelativeLayout> 

And use FragmentManager to locate it:

    public class MapsActivity extends Activity
{
    private GoogleMap map;

    @Override
    protected void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_map);

        // Gets the MapView from the XML layout and creates it
        map = ((MapFragment) getFragmentManager().findFragmentById(R.id.map)).getMap();
        map.getUiSettings().setMyLocationButtonEnabled(false);
        //map.setMyLocationEnabled(true);
        map.setOnMapClickListener(this);
        map.setOnMapLongClickListener(this);
        try 
        {
            MapsInitializer.initialize(MapsActivity.this);
        } 
        catch (Exception e) 
        {
            e.printStackTrace();
        }
    }

I hope that's helpfull and sorry if my english is so bad, regards

I had the same issue after upgrading to API Level 23 in July (with client google-play-service_lib 5.0.77).

The issue was resolved after Google Play Service was updated to latest (6.1.09) on the test device.

So, it seems to have been (a device-specific issue) due to incompatibility between the Google Play Service version on the device/emulator and the client library API (google-play-service_lib) in the project.

According to Google's documentation, when the client is newer than the service, the client library API is supposed to resolve out-of-date service apk issues; (and it does in this case since the issue does not really affect released apk's) https://developer.android.com/google/play-services/index.html.

My earlier attempts to resolve this issue by using new API key, and fresh installs of Eclipse/ADT/SDK/google-play-service_lib, as suggested in this and other similar questions did not work.

Could you post your manifest? Sans API key, of course.

Your log looks almost identical to mine for a problem I've had recently, which was fixed by adding the following to the manifest:

 <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />

I'm working on an application that was accessing maps just fine, then stopped out of the blue. I couldn't see anything actually pointing to a missing permission; I only picked up on it when I compared the manifest with another application that used maps api v2.

I'm still confused as to why it previously worked without it (Google says you need the permission for maps to work). Perhaps I'd once put it there and accidentally deleted the line, but either way putting it in is what fixed it.

Source: https://developers.google.com/maps/documentation/business/mobile/android/config

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!