启动模式 Singletop 无法使用权限对话框显示
Launch Mode Singletop not working with permisison dialog showing
我有一个 Activity
启动模式 singleTop
显示权限对话框。
但是当存在权限对话框并且针对该 activity 出现新的 Intent 时,会创建另一个实例。
onNewIntent()
没有被调用。
有什么解决方法吗?
下面是清单条目。
<activity
android:name=".auth.activity.AJRAuthActivity"
android:screenOrientation="portrait"
android:theme="@style/Theme.PageIndicatorDefaults"
android:launchMode="singleTop"
android:windowSoftInputMode="adjustResize" />
我开始的方式activity:
Intent loginIntent = new Intent(context, AJRAuthActivity.class);
context.startActivity(loginIntent);
显示权限对话框通常会在您的 Activity
之上启动另一个 Activity
(系统 Activity
)。在这种情况下,您的 Activity
将被暂停(调用 onPause()
)。那时,您的 Activity
不再是堆栈顶部的 Activity
,因此 Activity
的另一次启动将创建另一个实例,即使 "singleTop" 启动模式 and/or Intent.FLAG_ACTIVITY_SINGLE_TOP
已指定。
见
要解决这个问题,您应该确保您尽早拥有可能需要的所有权限,或者重新构建您的应用程序,这样您就不会遇到多个实例的问题。
我有一个 Activity
启动模式 singleTop
显示权限对话框。
但是当存在权限对话框并且针对该 activity 出现新的 Intent 时,会创建另一个实例。
onNewIntent()
没有被调用。
有什么解决方法吗?
下面是清单条目。
<activity
android:name=".auth.activity.AJRAuthActivity"
android:screenOrientation="portrait"
android:theme="@style/Theme.PageIndicatorDefaults"
android:launchMode="singleTop"
android:windowSoftInputMode="adjustResize" />
我开始的方式activity:
Intent loginIntent = new Intent(context, AJRAuthActivity.class);
context.startActivity(loginIntent);
显示权限对话框通常会在您的 Activity
之上启动另一个 Activity
(系统 Activity
)。在这种情况下,您的 Activity
将被暂停(调用 onPause()
)。那时,您的 Activity
不再是堆栈顶部的 Activity
,因此 Activity
的另一次启动将创建另一个实例,即使 "singleTop" 启动模式 and/or Intent.FLAG_ACTIVITY_SINGLE_TOP
已指定。
见
要解决这个问题,您应该确保您尽早拥有可能需要的所有权限,或者重新构建您的应用程序,这样您就不会遇到多个实例的问题。