平台:Amlogic 920L
版本:Android9.0
问题现象描述:
进入Settings --> System --> power Desktop -->选择“TV”,机子断电重启 -->进入TV主界面 -- >按EXIT退出TV界面,无法返回到Launcher
注:按HOME键可以退回Launcher
经查,在packages\apps\TV\LiveTv\src\com\android\tv\MainActivity.java
btn_sure.setOnClickListener(new android.view.View.OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
dismiss();
mQuickKeyInfo.cancelNoSingalTimeout();
Settings.System.putInt(getContentResolver(), "tv_enter_app", 0);
Intent startMain = new Intent(Intent.ACTION_MAIN);
startMain.addCategory(Intent.CATEGORY_HOME);
startActivity(startMain);
}
});
经测试验证在低版本系统能正常返回到Launcher,但在Android 9.0 版本会报错,报错信息如下:
01-01 05:33:09.394 3679 3679 E AndroidRuntime: FATAL EXCEPTION: main
01-01 05:33:09.394 3679 3679 E AndroidRuntime: Process: com.android.tv, PID: 3679
01-01 05:33:09.394 3679 3679 E AndroidRuntime: java.lang.IllegalStateException: Can't change activity type once set: { mBounds=Rect(0, 0 - 1280, 720) mAppBounds=Rect(0, 0 - 1280, 720) mWindowingMode=fullscreen mActivityType=home} activityType=standard
01-01 05:33:09.394 3679 3679 E AndroidRuntime: at android.os.Parcel.createException(Parcel.java:1958)
01-01 05:33:09.394 3679 3679 E AndroidRuntime: at android.os.Parcel.readException(Parcel.java:1918)
01-01 05:33:09.394 3679 3679 E AndroidRuntime: at android.os.Parcel.readException(Parcel.java:1868)
01-01 05:33:09.394 3679 3679 E AndroidRuntime: at android.app.IActivityManager$Stub$Proxy.startActivity(IActivityManager.java:3755)
01-01 05:33:09.394 3679 3679 E AndroidRuntime: at android.app.Instrumentation.execStartActivity(Instrumentation.java:1676)
01-01 05:33:09.394 3679 3