0

我可以通過點擊在widgetview使用PendingIntent
如果activity尚未啓動,android將創建一個新的,並呼籲onCreate()彈出一個activity,我可以從檢索getExtra()widgetAndroid小工具開始一個新的活動

但是,如果activity已經啓動,並在stack的頂部,目標activity只是在最前面顯示不運行任何代碼

我不能使用android:launchMode="SingleTop"打電話onNewIntent (Intent intent),但我需要從應用程序的其他部分「多」活動

我只是想在widget鑑於click event剛開始一個新的instance of activityandroid:launchMode="standard"的行爲,使我可以根據getExtra()

有什麼想法?謝謝

回答

1

當你點擊widget的時候發送廣播,會幫你解決啓動活動的問題。您可以使用PendingIntent的getBroadcast()方法。

公共靜態的PendingIntent getBroadcast(上下文的背景下,INT requestCode,意圖意圖,詮釋標誌)

+0

謝謝你,但我真的想啓動目標活動 – DayDayHappy

+0

它不是問題。您可以以任何方式在您的廣播接收器中開始活動。 –

+0

謝謝。我想的太複雜了。我將使用Service,因爲.....從Android 3.1開始,如果相應的應用程序從未由用戶啓動過,或者用戶通過Android菜單明確地停止了應用程序,則Android系統默認排除所有接收者接收意圖在管理→應用程序中)。 [link](http://www.vogella.com/tutorials/AndroidBroadcastReceiver/article.html) – DayDayHappy