我正在尝试从扩展Application的类开始活动。我能够使用FLAG_NEW_ACTIVITY_TASK
作为创建活动的标志意图。
让我举例说明我正在尝试实施的方案。
有两个用户USER1和USER2。如果USER1按下按钮(HOLD),则会在USER2的设备上创建新活动。这个在USER2设备上启动的新活动是由扩展Application的类完成的。然后,当USER1按下一个按钮(UNHOLD)时,我希望USER2的设备调出上一个活动。我能够调出之前的活动但由于FLAG_NEW_ACTIVITY_TASK
标志正在重新创建,我希望恢复该活动而不是重新创建。
我被困在这里,我在谷歌搜索但无法理解我该怎么办。请帮助。
清单:
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<uses-permission android:name="android.permission.DISABLE_KEYGUARD" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS" />
<uses-permission android:name="android.permission.CALL_PHONE" />
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS" />
<uses-permission android:name="android.permission.CALL_PHONE" />
<uses-permission android:name="android.permission.RAISED_THREAD_PRIORITY" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-feature android:name="android.hardware.camera.autofocus" android:required="false" />
<uses-feature android:name="android.hardware.telephony" android:required="false" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme"
android:name=".MyApplication" >
<service android:name=".PortSipService"></service>
<service android:name=".Ringback"></service>
<service android:name=".LocationService"></service>
<activity
android:name=".MainActivity"
android:label="@string/app_name">
<intent-filter >
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<activity android:name=".SaveContacts" android:label="@string/app_name"> </activity>
<activity android:name=".IncomingCall" android:label="@string/app_name"> </activity>
<activity android:name=".ContactActivity" android:label="@string/app_name"></activity>
<activity android:name=".CallConnected" android:label="@string/app_name"></activity>
<activity android:name=".OutgoingCall" android:label="@string/app_name"></activity>
<activity android:name=".MusicPlayer" android:label="@string/app_name"></activity>
</application>
暂停时,
Intent music = new Intent(getApplicationContext(),MusicPlayer.class); music.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
getApplicationContext().startActivity(music);
这是在没有按下时,
Intent connect = new Intent(getApplicationContext(),CallConnected.class);
connect.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
getApplicationContext().startActivity(connect);
我不希望重新创建这个callconnected活动,但这是因为intent标志。
答案 0 :(得分:0)
您可以尝试使用Activity代替上下文:
Intent music = new Intent(MainActivity.this,MusicPlayer.class);
music.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
MainActivity.this.startActivity(music);