2017-05-09 10 views
0

通知のタイトルがチェックされ、特定のテキストが含まれている場合は&のWebベースのメッセージングサービスコードがあります。Toast &更新ページが表示されます。受信した通知のフィルタを削除する

今の事は、私は、テキストフィルタと呼ばれる線の下に削除したいです:

if (title.contains("Added")) { 

、誰もがコードの下に変更する方法を教えてください。

public class FcmMessagingService extends FirebaseMessagingService { 

    @Override 
    public void onMessageReceived(RemoteMessage remoteMessage) { 
     super.onMessageReceived(remoteMessage); 

     String title = remoteMessage.getNotification().getTitle(); 
     final String message = remoteMessage.getNotification().getBody(); 



     if (title.contains("Added")) { 
      Handler handler = new Handler(Looper.getMainLooper()); 
      handler.post(
        new Runnable() { 
         @Override 
         public void run() { 

          Log.d("webUrl",""+MainActivity.mWebview.getUrl()); 

          if(MainActivity.mWebview.getUrl().contains("http://example.com")) { 
           Toast.makeText(FcmMessagingService.this, message, Toast.LENGTH_SHORT).show(); 
           MainActivity.reLoad(); 
          } 
          } 
        } 
      ); 

    }else{ 
      Intent intent = new Intent(this, MainActivity.class); 
      intent.putExtra("value", "kh"); 
      intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
      PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intent, PendingIntent.FLAG_ONE_SHOT); 
      Uri sounduri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION); 
      NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this); 
      notificationBuilder.setContentTitle(title); 
      notificationBuilder.setContentText(message); 
      notificationBuilder.setSmallIcon(R.mipmap.ic_icon); 
      notificationBuilder.setSound(sounduri); 
      notificationBuilder.setAutoCancel(true); 
      notificationBuilder.setContentIntent(pendingIntent); 
      NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); 

      notificationManager.cancel(0); 
      notificationManager.notify(0, notificationBuilder.build()); 


     } 


    } 


} 
+0

あなたは "ページフィルタのみを保持" とはどういう意味ですか?あなたのページフィルタはどこですか? – FAT

+0

@FerdousAhamed更新された質問。私は削除する "if(title.contains(" Added ")) " – Observer

+0

実際にあなたの要件は何ですか?あなたはタイトルとメッセージの価値で何を望みますか? – FAT

答えて

0

これを試してみてください:

if(MainActivity.mWebview.getUrl().contains("http://example.com")) { 
     Handler handler = new Handler(Looper.getMainLooper()); 
     handler.post(
       new Runnable() { 
        @Override 
        public void run() { 

         Log.d("webUrl",""+MainActivity.mWebview.getUrl()); 
         Toast.makeText(FcmMessagingService.this, message, Toast.LENGTH_SHORT).show(); 
         MainActivity.reLoad(); 
        } 
       }); 
    } else { 
     Intent intent = new Intent(this, MainActivity.class); 
     intent.putExtra("value", "kh"); 
     intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
     PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intent, PendingIntent.FLAG_ONE_SHOT); 
     Uri sounduri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION); 
     NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this); 
     notificationBuilder.setContentTitle(title); 
     notificationBuilder.setContentText(message); 
     notificationBuilder.setSmallIcon(R.mipmap.ic_icon); 
     notificationBuilder.setSound(sounduri); 
     notificationBuilder.setAutoCancel(true); 
     notificationBuilder.setContentIntent(pendingIntent); 
     NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); 

     notificationManager.cancel(0); 
     notificationManager.notify(0, notificationBuilder.build()); 
    } 
+0

付与エラー - メソッドgetUrlはUIスレッドから呼び出されなければならず、現在推定されたスレッドはワーカースレッドです – Observer

関連する問題