我在我的应用程序中有选项启动浏览器并加载imdb网站.我正在使用ActionView.
Intent intent1 = new Intent(android.content.Intent.ACTION_VIEW,
Uri.parse(website));
try {
activity.startActivity(intent1);
} catch (Exception e) {
Toast.makeText(activity, R.string.no_imdb, Toast.LENGTH_SHORT)
.show();
}
Run Code Online (Sandbox Code Playgroud)
当我点按后退按钮时会出现问题.当默认浏览器应用程序启动时,一切正常.当Opera Mini应用程序启动时,当我点击后退按钮时,似乎我的应用程序收到两个后退动作,并完成我当前的活动.
怎么预防这个?
尝试在新任务中启动intent:
intent1.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
Run Code Online (Sandbox Code Playgroud)
要么
intent1.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
Run Code Online (Sandbox Code Playgroud)
请将此代码添加到您需要返回的活动的 Android 清单中
<activity
android:name="YourActivityName"
android:launchMode="singleTask">
<intent-filter>
<action android:name="schemas.your_package.YourActivityName" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.ALTERNATIVE" />
</intent-filter>
</activity>
Run Code Online (Sandbox Code Playgroud)
并将其添加到您的网页
<activity
android:name="YourActivityName"
android:launchMode="singleTask">
<intent-filter>
<action android:name="schemas.your_package.YourActivityName" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.ALTERNATIVE" />
</intent-filter>
</activity>
Run Code Online (Sandbox Code Playgroud)
由于手机上只有一个应用程序有此操作名称(schemas.your_package.YourActivityName),因此网页直接返回应用程序
| 归档时间: |
|
| 查看次数: |
2778 次 |
| 最近记录: |