小编Tec*_*r12的帖子

LocationCallback没有被调用

我正在使用FusedLocationProviderClient进行位置请求.我保留了一个计时器30秒,以检查在该时间范围内是否收到位置.代码如下:

 public void requestLocationUpdates() {
    initializeLocationRequest();
    mFusedLocationProviderClient.requestLocationUpdates(mLocationRequest, mLocationCallback, null);
    startTimer();
}

 private void initializeLocationRequest() {
    mFusedLocationProviderClient = LocationServices.getFusedLocationProviderClient(mContext);
    mLocationRequest = new LocationRequest();
    mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
    mLocationRequest.setInterval(5000);
    mLocationRequest.setFastestInterval(5000);

    mLocationCallback = new LocationCallback() {

        @Override
        public void onLocationResult(LocationResult locationResult) {
            synchronized (SilentCurrentLocationProvider.this) {
                super.onLocationResult(locationResult);
                Location location = locationResult.getLastLocation();
        }
    };
}

  private void startTimer() {
    if (mTimeout < 1) {
        mTimeout = mDefaultTimeout;
    }
    mTimer = new Timer();   
    mTimer.schedule(new LocationTimer(), mTimeout * 1000);
}
Run Code Online (Sandbox Code Playgroud)

在少数设备上,位置不会到来.在进一步调试时,我发现正在创建LocationRequestLocationCallback,但它没有进入onLocationResult()方法.

由于这是实时产品的一部分,因此很难在每台设备上进行调试.即使我尝试重新启动手机,但它无法正常工作.用户尝试了其他应用程序,如Ola和位置即将到来. …

android google-location-services fusedlocationproviderclient

15
推荐指数
2
解决办法
2174
查看次数

吐司正在更改仅肖像应用程序的方向

这是最主要的:

 <activity android:name=".MainActivity"
        android:screenOrientation="portrait">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:name=".Main2Activity"
        android:screenOrientation="portrait">
    </activity>
Run Code Online (Sandbox Code Playgroud)

我们有两个活动,这两个活动的方向都限于清单中指定的“ 纵向 ”。MainActivity是发射Main2ActivityonBackPressed()Main2Activity被覆盖并显示一个Toast代码如下:

@Override
public void onBackPressed() {
    Toast.makeText(Main2Activity.this,"This is from Second",Toast.LENGTH_SHORT).show();
    super.onBackPressed();

}
Run Code Online (Sandbox Code Playgroud)

问题陈述:
1.将手机保持在横向状态
2.启动应用程序
3. MainActivity以纵向创建(直到此处都没有问题)
4. Main2Activity从中启动MainActivity,有一个按钮可以进行操作
5. Main2Activity以纵向打开(直到此处都没有问题) )
6.按下硬件后退按钮, 使它Main2Activity消失。7
. 用Toast MainActivity 在横向显示,然后自动变为纵向。
8.在所有这些步骤中,设备处于正常状态
。9.尝试将上下文更改为应用程序上下文,但没有运气
。10.移除了Toast,一切正常

为什么在第7点出现这种行为?

主要活动

Main2活动

在按下Main2Activity的返回按钮后

android android-orientation android-toast

5
推荐指数
1
解决办法
195
查看次数