これに関する多くのスレッドを見つけましたが、どれも私の問題を解決しませんでした。
私のアプリケーションはオンライン ラジオで、メニューをクリックするか、デバイスのホームページに移動すると、ラジオがまだ再生されます。
ただし、アプリケーション アイコンをクリックすると、アプリケーションの新しいインスタンスが開き、インスタンスが既に開いている場合にのみ返されます。これにより、2 つのラジオが同時に再生されます。終了するには、アプリケーションの最初のインスタンスで [アプリケーションの管理] メニューに移動し、アプリケーションを終了する必要があります。
launchMode を singleTask、singleTop、SingleInstance として使用してみましたが、どれも機能しません。
どうすればこの問題を解決できますか?
助けていただければ幸いです。
私のマニフェストの下:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.radiomiriam"
android:versionCode="3"
android:versionName="1.3" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />
<uses-feature />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<application
android:allowBackup="true"
android:icon="@drawable/logo_novo"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.radiomiriam.Main"
android:label="@string/app_name"
android:configChanges="orientation|keyboardHidden"
android:launchMode="singleInstance" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
<activity
android:name="com.radiomiriam.Nsi"
android:label="@string/app_name" >
</activity>
<activity
android:name="com.radiomiriam.Contato"
android:label="@string/contato" >
</activity>
</application>
</manifest>
親愛なる友よ、間違った問題をここに置いてください。ごめん。
戻るボタンをクリックしたときにのみ問題が発生し、アクティビティに次の関数を追加しました。
public void onBackPressed() {
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
}
現在は 100% 稼働しています。
回答してくれたすべての人に感謝します。