2014-09-06 43 views
0

我正在開發使用google maps api一個應用程序,現在它工作得很好到我用來測試的app.Few天前,我在我的平板電腦和時所做的硬復位我的真實設備我試圖再次測試我的應用程序,它並沒有在我的logcat我看到locationClient連接爲before.so工作,但它不能識別我的位置,所以onLocationChanged不會被調用。onLocationChanged不叫檢索位置

我注意到這爲我的logcat:

I/Google Maps Android API(2924): Google Play services client version: 5089000 
I/Google Maps Android API(2924): Google Play services package version: 5089032 

我知道,這是兩個不同版本的谷歌播放服務,我可以不知道如何解決這個問題,因爲在此之前平板電腦的硬復位,我hadn」噸得到這個信息到logcat。

這是我的manifest.xml:

?xml version="1.0" encoding="utf-8"?> 
manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.logic.main" 
    android:versionCode="1" 
    android:versionName="1.0" > 

    <uses-sdk 
     android:minSdkVersion="14" 
     android:targetSdkVersion="19" /> 

    <permission 
     android:name="com.logic.main.permission.MAPS_RECEIVE" 
     android:protectionLevel="signature" /> 

    <uses-permission android:name="android.permission.INTERNET" /> 
    <uses-permission android:name="com.logic.main.permission.MAPS_RECEIVE" /> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
    <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" /> 
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 
    <uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION" /> 

    <uses-feature 
     android:glEsVersion="0x00020000" 
     android:required="true" /> 

    <application 
     android:allowBackup="true" 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/Theme.MyAppTheme" > 
     <activity 
      android:name="com.logic.main.MainActivity" 
      android:configChanges="orientation|keyboardHidden|screenSize" 
      android:label="@string/app_name" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
     <activity 
      android:name="com.logic.maps.activity.MapsActivity" 
      android:configChanges="orientation|keyboardHidden|screenSize" 
      android:label="@string/app_name" > 
     </activity> 

     <service 
      android:name="com.logic.maps.backgroundService.LocationBackgroundService" 
      android:enabled="true" > 
     </service> 

     <meta-data 
      android:name="com.google.android.gms.version" 
      android:value="@integer/google_play_services_version" /> 
     <meta-data 
      android:name="com.google.android.maps.v2.API_KEY" 
      android:value="MyApiKey" /> 
    </application> 

</manifest> 

活動:

​​

感謝您的幫助。

+0

與實際密鑰更換MyApiKey。 – amalBit 2014-09-08 11:10:53

+0

我寫MyApiKey,隱私,但在我的項目有一個真正的API密鑰。 – OiRc 2014-09-08 11:12:09

+0

你把onLocation中的任何日誌都改了嗎?當然,它沒有返回你的任何位置? – amalBit 2014-09-08 11:14:39

回答

1

從Android SDK管理器安裝最新的谷歌遊戲服務

0
LocationManager locationManager = (LocationManager) getSystemService(LOCATION_SERVICE); 

// Creating a criteria object to retrieve provider 
Criteria criteria = new Criteria(); 

// Getting the name of the best provider 
String provider = locationManager.getBestProvider(criteria, true); 

// Getting Current Location 
locationManager.requestLocationUpdates(provider, 10000L, 1f, (LocationListener) this); 
1

啓用定位服務:

設置 - >位置和安全 - >在我的位置 - >選擇使用無線和使用GPS。