gpt4 book ai didi

java - 不能使用 LocationCallback 类

转载 作者:可可西里 更新时间:2023-10-31 22:03:26 28 4
gpt4 key购买 nike

我想覆盖 LocationCallback(com.google.android.gms.location.LocationCallback) 中的 onLocationAvailability()

根据 this doc,LocationCallback 是一个抽象类。

所以我尝试扩展它,但我做不到,Android Studio 中什么也没有显示。

我尝试根据 this 实现它回答,但 android studio 也不允许。

有谁知道我如何使用这个类以便我可以使用 onLocationAvailability()

最佳答案

解决方法:

 protected LocationCallback mLocationCallback = new LocationCallback() // Implementacja abstract class
{
@Override
public void onLocationAvailability(LocationAvailability locationAvailability) {
super.onLocationAvailability(locationAvailability);
if(!locationAvailability.isLocationAvailable())
{// No location available
checkLocationSettings();
Snackbar snackLocationUnavailable = Snackbar.make(findViewById(R.id.myCoordinatorLayout), R.string.location_unavailable, Snackbar.LENGTH_LONG);
snackLocationUnavailable.show();
}
else
{
Snackbar snackLocationAvailable = Snackbar.make(findViewById(R.id.myCoordinatorLayout), R.string.location_available, Snackbar.LENGTH_LONG);
snackLocationAvailable.show();
}
}

//...

 LocationServices.FusedLocationApi.requestLocationUpdates(mGoogleApiClient, mLocationRequest, mLocationCallback, null).setResultCallback(new ResultCallback<Status>() {
@Override
public void onResult(@NonNull Status status) {
if (status.isSuccess()) { /** Udało się włączyć aktualizacje lokacji */
mRequestingLocationUpdates = true;

}
else {/** Nie udało się włączyć aktualizacji lokacji */
Snackbar.make(findViewById(R.id.myCoordinatorLayout), "Status Code: " + status.getStatusCode(), Snackbar.LENGTH_INDEFINITE).show();



}
}
});

private void stopLocationUpdates() {
LocationServices.FusedLocationApi.removeLocationUpdates(mGoogleApiClient, mLocationCallback) // trzeba było castnąć bo jakieś jaja były z LocationCallback
.setResultCallback(new ResultCallback<Status>() {
@Override
public void onResult(@NonNull Status status) {
if(status.isSuccess()) { /** Udało się wyłączyć aktualizacje lokacji */
mRequestingLocationUpdates = false;
}
else {/** Nie udało się wyłączyć aktualizacji lokacji */
// mRequestingLocationUpdates = true; // ?!!?
}
}
});

关于java - 不能使用 LocationCallback 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31189609/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com