我有以下代码可以打开浏览器访问我的社交资料:
ImageView iv1 = (ImageView) dialog.findViewById(R.id.imgFB);
iv1.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Uri uri = Uri.parse("https://www.facebook.com/profile");
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
}
});
现在,当我选择浏览器打开配置文件并按back时,它不仅会关闭浏览器,还会关闭我的应用程序。有什么方法可以在让我的应用程序在后台运行的同时关闭浏览器?
更新:
这工作正常:
ImageView iv1 = (ImageView) dialog.findViewById(R.id.imgFB);
iv1.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Uri uri = Uri.parse("https://www.facebook.com/PagesByZ"); //Uri.parse("market://details?id=" + facebookpackagename);
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
//intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
dialog.dismiss();
startActivity(intent);
}
});
现在我没有收到错误,但是当Complete action using
窗口出现时,我没有选择一个选项,而是按返回,我的应用程序就关闭了。知道如何解决它,所以如果我按返回它会返回到我的应用程序而不是主页?
更新:以下是重新措辞,以帮助更好地理解问题。
在我的应用程序中,我有一个打开浏览器的图像链接,但如果用户安装了多个浏览器,它会显示“使用完成操作”窗口,我可以在其中选择。如果我按下后退按钮,它应该关闭它回到我的应用程序。相反,如果我按下后退按钮,我的应用程序就会关闭并返回主屏幕
我的主要活动:http: //pastebin.com/FVwEKLAT
我的安卓清单:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.sikni8.tollculator"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="11"
android:targetSdkVersion="18" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.sikni8.tollculator.MainActivity"
android:label="@string/app_name"
android:noHistory="true"
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="com.sikni8.tollculator.CurrentTrip"
android:label="@string/title_activity_current_trip"
android:parentActivityName="com.sikni8.tollculator.MainActivity" >
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.sikni8.tollculator.MainActivity" />
</activity>
<activity
android:name="com.sikni8.tollculator.DisplayTrip"
android:label="@string/title_activity_display_trip"
android:parentActivityName="com.sikni8.tollculator" >
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.sikni8.tollculator" />
</activity>
<activity
android:name="com.sikni8.tollculator.ShowHelp"
android:label="@string/app_name" >
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.sikni8.tollculator.MainActivity" />
</activity>
<activity
android:name="com.sikni8.tollculator.ShowSettingOptions"
android:label="@string/app_name" >
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.sikni8.tollculator.MainActivity" />
</activity>
</application>
</manifest>
我如何确保如果用户改变主意不去浏览器并按下后退按钮,它只是回到我的应用程序而不是进入主屏幕?
如果他们确实转到浏览器并按下将关闭浏览器并且我的应用程序将返回查看的后退,也将修复上述修复?