2017-02-14 11 views
0

新しいチームで大規模なプロジェクトを進めており、特定の条件が満たされても通知を追加するように求められていますまったく表示しません。ここでAndroidの通知は表示されませんが、エラーなしでコードが実行されます

私が今持っているコード、関係のないコードを省略している:

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
    this.context = container.getContext(); 
    view = inflater.inflate(R.layout.module_menu, container, false); 
    this.initNotify("TITLE","Message"); 
    return view; 
} 

private void initNotify(String title, String message) { 
    NotificationCompat.Builder b = new NotificationCompat.Builder(context) 
      .setAutoCancel(true) 
      .setOngoing(false) 
      .setSmallIcon(R.drawable.ic_launcher) 
      .setContentTitle(title) 
      .setContentText(message) 
      .setFullScreenIntent(PendingIntent.getActivity(context, 1, new Intent(), PendingIntent.FLAG_UPDATE_CURRENT), true) 
      .setStyle(new NotificationCompat.BigTextStyle()); 

    NotificationManager nm = (NotificationManager) context.getSystemService(context.NOTIFICATION_SERVICE); 
    nm.notify(1, b.build()); 
} 

それがであるクラスでは、私の主な活動によって呼び出された断片です。このコードは問題なく新しいアプリケーションに入れられると実行され、通知は適切に表示されますが、この特定のプロジェクトでの作業は拒否されます。最小限のAPIは8です。

通知が表示されない可能性のあるものがありますか?

また、アプリケーションで通知が表示されないようにすることができますか?その場合、どのコードを探してください。

答えて

0

通知IDを定数nm.notify(1, b.build());として設定しているからです。すべての通知を表示するには、動的値を使用する必要があります。この

private void initNotify(String title, String message,int id) { 
    NotificationCompat.Builder b = new NotificationCompat.Builder(context) 
      .setAutoCancel(true) 
      .setOngoing(false) 
      .setSmallIcon(R.drawable.ic_launcher) 
      .setContentTitle(title) 
      .setContentText(message) 
      .setFullScreenIntent(PendingIntent.getActivity(context, 1, new Intent(), PendingIntent.FLAG_UPDATE_CURRENT), true) 
      .setStyle(new NotificationCompat.BigTextStyle()); 

    NotificationManager nm = (NotificationManager) context.getSystemService(context.NOTIFICATION_SERVICE); 
    nm.notify(id, b.build()); 
} 

と私はあなたのコードを試してみました

for(int i=0;i<10;i++){ 
initNotify("title", "message",i); 
} 
+0

私はあなたのメソッドを試しましたが、同じ結果が発生します。前と同じようにコードは間違いなく実行されますが、何も表示されません。あなたのメソッドは、私がテストに使用した空のアプリケーション上で動作し、意図したとおりに通知を表示します。これは私が何か理由で通知を抑制するかもしれないと思うものです –

+0

'.setContentIntent' –

+0

まだ運がいい、残念ながら –

0

(例)として、通知を設定するよう 。私のマシンはOKだった。

通知がありますか?

+0

私はあなたが何を意味するか分かりません。私は明示的に私のマニフェストにそれのための許可を宣言しなければなりませんか? –

+0

targetSdkVersionは何ですか? – jianfeng

+0

ターゲットが9で、最小値が8で、変更できません –

関連する問題