2012-04-25 149 views
0

我有一個alarmservice是一個intentservice設置警報和一個onAlarmReceiver廣播接收器,開始通知。在我的通知中,我設置了一個意圖到我的應用程序的主頁面。當人們升級我的應用程序時,通知仍然正常工作,但它有時並不總是將它們重定向到上次打開的最後一頁。似乎懸而未決的意圖根本沒有啓動。這是否意味着存在導致應用程序加載之前狀態的異常?或應用程序被殺害?顯然它會回到以前的狀態。我甚至將待定意圖的活動更改爲其他內容,並且仍然存在這樣的問題....我怎樣才能看到設備中發生了什麼? 我這是怎麼叫的通知廣播:通知未啓動活動

AlarmManager mgrAlarm= (AlarmManager)ctxt.getSystemService(Context.ALARM_SERVICE); 
Intent intentAlarm = new Intent(ctxt, OnAlarmReceiver.class); 
sender = PendingIntent.getBroadcast(ctxt, ++alarmCounter, intentAlarm, 0); 
mgrAlarm.set(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(), sender); 

,這是我onAlarmReceiver

Intent welcomeIntent = new Intent(context, WelcomeActivity.class); 
PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, welcomeIntent, Intent.FLAG_ACTIVITY_NEW_TASK); 

清單:

<uses-sdk android:minSdkVersion="4" android:targetSdkVersion="14" />  
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />  
<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/> 

<application 
    android:name="pvApplication" 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" android:debuggable="false"> 
    <activity 
     android:name=".WelcomeActivity" 
     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=".unistall"></activity> 
    <activity android:name=".Preferences" android:label="@string/set_preferences" ></activity> 
    <activity android:name=".Questionnaire" ></activity> 
    <activity android:name=".AfterSubmission"></activity> 
    <activity android:name=".UserDemographics"></activity> 
    <activity android:name=".Instructions"></activity> 
    <activity android:name=".unistall"></activity> 
    <activity android:name=".PersonalityTest"></activity> 
    <activity android:name=".finalQuestions"></activity>     
    <receiver android:name=".OnBootReceiver" android:enabled="true"> 
     <intent-filter> 
      <action android:name="android.intent.action.BOOT_COMPLETED" /> 
     </intent-filter> 
    </receiver> 
    <receiver android:name=".OnAlarmReceiver" android:enabled="true" ></receiver>   
    <receiver android:name=".OnNetworkReceiver" > 
     <intent-filter> 
      <action android:name="android.net.conn.CONNECTIVITY_CHANGE" /> 
      <action android:name="android.net.wifi.WIFI_STATE_CHANGED"/> 
     </intent-filter>    
    </receiver> 
    <service android:name=".updaterService" /> 
    <service android:name=".alarmService" /> 
<receiver android:name=".onAppReplaced"> 
    <intent-filter> 
    <action android:name="android.intent.action.PACKAGE_REPLACED" /> 
    <data android:scheme="package"/>   
    </intent-filter> 
</receiver> 

</application> 

回答

1

FLAG_ACTIVITY_NEW_TASK那張Intent,而不是PendingIntent包裝。