0

ダウンロード機能を実行しているアクティビティがあります。アクティビティは進捗ダイアログをポップアップし、ダウンロードの際のユーザのやりとりを無効にし、通知の進捗状況を作成します。通知の以前のアクティビティアクションを復元する方法

通知をクリックして、進行状況と無効なユーザーのやりとりを示すダイアログが表示されているアクティビティにユーザーを戻したいとします(基本的にユーザーがホーム画面に移動してからアプリ)。

現在の試行はアクティビティを再起動し、まだダウンロードしていますが、ダイアログは消えてユーザーの操作は無効になっています。これをどうすれば解決できますか?

私のアプローチ:

設定の意図アクション

private static void buildNotification() 
{ 
    //create intent for onClick 
    Intent resultIntent = new Intent(activity, activity.GetType()); 
    resultIntent.SetAction(Intent.ActionMain); 
    resultIntent.AddCategory(Intent.CategoryLauncher); 
    PendingIntent resultPendingIntent = PendingIntent.GetActivity(activity, 0, resultIntent, PendingIntentFlags.UpdateCurrent); 

    //set builder 

    builder.SetContentIntent(resultPendingIntent); 
    notificationManager = activity.GetSystemService(Context.NotificationService) as NotificationManager; 
} 

設定の意図フラグ

private static void buildNotification() 
{ 
    //create intent for onClick 
    Intent resultIntent = new Intent(activity, activity.GetType()); 
    resultIntent.SetFlags(ActivityFlags.SingleTop | ActivityFlags.ClearTop); 
    PendingIntent resultPendingIntent = PendingIntent.GetActivity(activity, 0, resultIntent, PendingIntentFlags.UpdateCurrent); 

    //set builder 

    builder.SetContentIntent(resultPendingIntent); 
    notificationManager = activity.GetSystemService(Context.NotificationService) as NotificationManager; 
} 

答えて

1

私は意図にちょうどSingleTop旗を置くことになりました。私はXamarin.Android

を使用していますちなみに

private static void buildNotification() 
{ 
     //create intent for onClick 
    Intent resultIntent = new Intent(activity, activity.GetType()); 
    resultIntent.SetFlags(ActivityFlags.SingleTop); 
    PendingIntent resultPendingIntent = PendingIntent.GetActivity(activity, 0, resultIntent, PendingIntentFlags.UpdateCurrent); 

    //set builder 

    builder.SetContentIntent(resultPendingIntent); 
    notificationManager = activity.GetSystemService(Context.NotificationService) as NotificationManager; 
} 

:うまくいけば、これは誰かに役立ちます