仅当我在执行应用程序中的几个步骤后单击主页按钮时,我的应用程序中才存在特定设备的问题,因此最近的标签中显示了应用程序。 如果我从最近的选项卡打开应用程序,则它将从最后放置应用程序的最后一页打开,但是如果我单击应用程序图标而不是最近的选项卡,则该应用程序将从初始屏幕打开。
这只会发生在一个三星设备上,而其他应用在同一设备上运行正常。
如果有人遇到同样的问题,请帮助我。
答案 0 :(得分:2)
我过去确实遇到过同样的问题,而三星设备也遇到过同样的问题。
在我的案例中起作用的解决方案(可能是对您的临时修复,因为我未在其他型号的Samsung上进行过测试)是在初始/启动Activity的onCreate()中编写以下代码:
if (!isTaskRoot()
&& getIntent().hasCategory(Intent.CATEGORY_LAUNCHER)
&& getIntent().getAction() != null
&& getIntent().getAction().equals(Intent.ACTION_MAIN)) {
finish();
return;
}
答案 1 :(得分:1)
Android Manifest文件是确定“启动器”或从图标打开应用程序时将开始的活动的源。浏览应用程序时,如果您打开另一个应用程序或按主屏幕按钮,则应用程序将进入前台或“暂停”状态。这就是为什么当您在“最近使用的标签”中找到您的应用时,该应用会从其最后一个位置恢复。问题是您希望您的应用从哪里开始? 您的Android清单文件应该是项目文件列表中唯一带有橙色图标的文件。打开它,它应该看起来像这样:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.bnr.que_snitch">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity
android:name=".CrimePagerActivity"
android:parentActivityName=".CrimeListActivity">
</activity>
<activity
android:name=".CrimeListActivity">
//THIS IS YOUR LAUNCHER!!!
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
要复制并粘贴启动器(所有内容都在intent过滤器标签中),然后将其粘贴到您希望应用程序启动的活动标签中。