2016-11-17 99 views
0

我試圖開發一個基於谷歌地點API的應用程序。當我嘗試使用PlacePicker.getPlace()和GooglePlayServicesUtil.getErrorDialog()已被棄用

Place place=PlacePicker.getPlace(data,this); 

GooglePlayServicesUtil.getErrorDialog(e.getConnectionStatusCode(), MainActivity.this, 0); 

有證據顯示getPlace()是deprecated.I已經嘗試

getPlace(Context, Intent) 

一個錯誤,但它並沒有work.Please建議一個辦法。提前致謝!

+0

您是否在使用新的GoggleApiClient? –

+0

是的我正在使用新的GoogleApiClient – Gsingh

+0

您是否在您的gradle依賴項中添加了編譯'com.google.android.gms:play-services-places:9.6.1'的東西? –

回答

0

official android documentation記載的方法

PlacePicker.getPlace(Intent, Context) 

已棄用。爲了得到你應該使用的地方:

Place place = PlacePicker.getPlace(Context, Intent); 

這是說,是錯誤堅持,你應該做的是檢查,如果你使用的是最新的依賴性第一件事情(目前這些都是10.0.1)。我建議檢查你的build.gradle文件。它應該是這個樣子:

[...] 
dependencies { 
    testCompile 'junit:junit:4.12' 

    compile 'com.android.support:appcompat-v7:25.0.1' 
    compile 'com.android.support:design:25.0.1' 
    compile 'com.android.support:support-v4:25.0.1' 
    compile 'com.google.android.gms:play-services-maps:10.0.1' 
    compile 'com.google.android.gms:play-services-location:10.0.1' 
    compile 'com.google.android.gms:play-services-gcm:10.0.1' 
    compile 'com.google.android.gms:play-services-places:10.0.1' 
} 

apply plugin: 'com.google.gms.google-services' 

現在,這裏真正重要的位是最後4行dependencies塊中,它們是:

compile 'com.google.android.gms:play-services-maps:10.0.1' 
compile 'com.google.android.gms:play-services-location:10.0.1' 
compile 'com.google.android.gms:play-services-gcm:10.0.1' 
compile 'com.google.android.gms:play-services-places:10.0.1' 

最後一行,它HAS成爲文檔的最後一行:

apply plugin: 'com.google.gms.google-services'