0

我用过

public class MyGPSStatusV24 extends GnssStatus.Callback {

        @Override
        public void onStarted() {
            super.onStarted();
            myLogApp.log("[onGpsStatusChanged] GPS_EVENT_STARTED...");

        }

        @Override
        public void onStopped() {
            super.onStopped();
            myLogApp.log("[onGpsStatusChanged] GPS_EVENT_STOPPED...");

        }

        @Override
        public void onSatelliteStatusChanged(GnssStatus status) {
            super.onSatelliteStatusChanged(status);
            myLogApp.log("[onGpsStatusChanged] onSatelliteStatusChanged...");
        }

        @Override
        public void onFirstFix(int ttffMillis) {
            super.onFirstFix(ttffMillis);
            myLogApp.log("[onGpsStatusChanged] GPS_EVENT_FIRST_FIX...");

        }
    }

用于检查 android 8 中的 GPS 状态。

主要有:

mlocManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
            mlocListener = new MyLocationListener();

            if(Build.VERSION.SDK_INT < Build.VERSION_CODES.N ){
                ...
            }else{
                mlocManager.registerGnssStatusCallback(new MyGPSStatusV24());
            }
            mlocManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, mlocListener);

但是 MyGPSStatusV24 中的方法从未被触发。

即使我禁用 GPS,也不会触发 onStopped。

我已经在 Android 7 设备中尝试过这段代码并且工作了,但是当我使用谷歌像素时没有工作。我不知道这是否是 android 8 中的 google pixel o 中的错误。

4

1 回答 1

-2

好的,我已经测试过,错误来自设备,它不是编解码器错误。

于 2018-05-07T08:35:40.810 回答