android通知只有声音播放通知未在通知抽屉中显示

时间:2015-04-26 06:12:28

标签: android android-notifications

我正在尝试使用AlarmManager和通知管理器在特定时间触发通知。我面临一个奇怪的问题。当通知被触发时,只播放声音,但通知抽屉中不显示通知。 我在日志中收到错误

04-26 11:32:09.217    1222-1222/? E/NotificationService﹕ WARNING: In a future release this will crash the app: com.example.shiv.selftweak

我的代码是。

调用AlarmManager的类

        Intent intent1 = new Intent(this, FireNotification.class);
        PendingIntent pendingIntent = PendingIntent.getService(this, 1000, intent1, 0);
        AlarmManager am = (AlarmManager)this.getSystemService(ALARM_SERVICE);
        am.set(AlarmManager.RTC_WAKEUP,System.currentTimeMillis(),  pendingIntent);

FireNotification类

public class FireNotification extends Service {

    @Override
    public void onCreate() {
        Intent intent = new Intent(this, MainActivity.class);
        long[] pattern = {0, 300, 0};
        PendingIntent pi = PendingIntent.getActivity(this, 1234, intent, 0);
        NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this)
                .setContentTitle("Self tweak")
                .setContentText("Habbits are waiting for last dones")
                .setVibrate(pattern)
                .setAutoCancel(false);

        mBuilder.setContentIntent(pi);
        mBuilder.setDefaults(Notification.DEFAULT_SOUND);
        mBuilder.setAutoCancel(false);
        NotificationManager mNotificationManager = (NotificationManager) this.getSystemService(NOTIFICATION_SERVICE);
        mNotificationManager.notify(1234, mBuilder.build());
    }

@Override
public IBinder onBind(Intent intent) {
    return null;
}

}

Android Menifest

 <service android:name=".FireNotification"></service>
        <intent-filter>

            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER"/>
        </intent-filter>

当通知仅触发声音播放时。但它没有显示在通知抽屉中,没有显示任何通知。

1 个答案:

答案 0 :(得分:1)

问题是您还没有指定mBuilder.setSmallIcon(R.drawable.ic_launcher)

基本上,您必须设置smallIconcontentTitlecontentText。如果您错过任何一个通知将根本不显示!这已明确指定HERE(您也可以在此处详细了解有关通知)。