2017-02-04 3 views
2

В моем приложении я получаю уведомления, и я могу видеть их в журналах. Но на некоторых мобильных телефонах они не отображаются. Пример: один плюс A0001 (Android 5.1.1 API22). Я прочитал другие вопросы о стеке и понял, что все необходимые методы есть. После некоторых исследований я узнал, что причиной этого может быть Cyanogenmod. Но в этом случае отображаются уведомления приложений.Уведомления на некоторых мобильных телефонах Android

public class MainActivity extends AppCompatActivity { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    Intent intent = new Intent(this, MainActivity.class); 
    PendingIntent pIntent = PendingIntent.getActivity(this, (int) System.currentTimeMillis(), intent, 0); 
    Notification n = new Notification.Builder(this) 
      .setContentTitle("New mail from " + "[email protected]") 
      .setContentText("Subject") 
      .setSmallIcon(R.drawable.ic_launcher) 
      .setContentIntent(pIntent) 
      .setAutoCancel(true).build(); 

    NotificationManager notificationManager = 
      (NotificationManager) getSystemService(NOTIFICATION_SERVICE); 

    notificationManager.notify(6578, n); 
} 

Над кодом работает на всех других мобильных телефонах.

+0

Попробуйте использовать «NotificationCompat». Дать ему шанс. – Wizard

+0

@Wizard Уже пробовал этот. Но не использовать –

ответ

0

Проверьте разрешения на уведомление вашего приложения. Какой контроль у вашего телефона. Возможно, в настройках или предустановленном приложении. Специально в Китае многие телефоны предустановили приложение под названием «权限 管家» для управления разрешениями сторонних приложений. Например, показ уведомления в панели уведомлений, подключение к Интернету при запуске фона или при закрытии экрана.

+0

Я проверил эти настройки @Oscar Zhang –