如何在应用程序 运行 android 时将通知图标放在通知区域?
How can I put notification icon in notification area while app is running android?
我想在我的应用 运行ning 时将我的应用图标放在通知区域。我搜索了很多并使它成为可能,以便在通知区域显示它。
public class MainActivity extends ActionBarActivity {
NotificationManager mNotificationManager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Context context = getApplicationContext();
NotificationCompat.Builder builder = new NotificationCompat.Builder(this)
.setTicker("This is a new notification")
.setContentTitle("Notification")
.setContentText("App runing..")
.setSmallIcon(R.mipmap.ic_launcher);
Intent intent = new Intent(context, MainActivity.class);
PendingIntent pIntent = PendingIntent.getActivity(context, 0, intent, 0);
builder.setContentIntent(pIntent);
mNotificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
Notification notif = builder.build();
mNotificationManager.notify(1, notif);
}
@Override
protected void onDestroy() {
super.onDestroy();
mNotificationManager.cancel(1);
}
}
但我想要的是我不想在点击通知时打开任何activity。
例如:电池充满后出现的电池信息图标,它不会打开任何应用程序或activity,点击它也不会将其从通知区域中删除。
PendingIntent pIntent = PendingIntent.getActivity(context, 0, intent, 0);
将这一行代码改成这样
PendingIntent pIntent = PendingIntent.getActivity(context, 0, null, 0);
它会像我想要的那样工作,但只有在模拟器上,当我 运行 这段代码在真实设备上时它会崩溃。
如何在我的应用程序中完成这个任务?如何在没有 Intent
和 PendingIntent
的情况下放置通知图标?
您可以使用此代码,如答案中所述 here and here:
PendingIntent contentIntent = PendingIntent.getActivity(
getApplicationContext(),
0,
new Intent(), // add this
PendingIntent.FLAG_UPDATE_CURRENT);
这与通知或通知管理器无关
你可以通过改变你的一行代码来做到这一点,
PendingIntent pIntent = PendingIntent.getActivity(getApplicationContext(), 0, new Intent(), PendingIntent.FLAG_UPDATE_CURRENT);
我想在我的应用 运行ning 时将我的应用图标放在通知区域。我搜索了很多并使它成为可能,以便在通知区域显示它。
public class MainActivity extends ActionBarActivity {
NotificationManager mNotificationManager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Context context = getApplicationContext();
NotificationCompat.Builder builder = new NotificationCompat.Builder(this)
.setTicker("This is a new notification")
.setContentTitle("Notification")
.setContentText("App runing..")
.setSmallIcon(R.mipmap.ic_launcher);
Intent intent = new Intent(context, MainActivity.class);
PendingIntent pIntent = PendingIntent.getActivity(context, 0, intent, 0);
builder.setContentIntent(pIntent);
mNotificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
Notification notif = builder.build();
mNotificationManager.notify(1, notif);
}
@Override
protected void onDestroy() {
super.onDestroy();
mNotificationManager.cancel(1);
}
}
但我想要的是我不想在点击通知时打开任何activity。
例如:电池充满后出现的电池信息图标,它不会打开任何应用程序或activity,点击它也不会将其从通知区域中删除。
PendingIntent pIntent = PendingIntent.getActivity(context, 0, intent, 0);
将这一行代码改成这样
PendingIntent pIntent = PendingIntent.getActivity(context, 0, null, 0);
它会像我想要的那样工作,但只有在模拟器上,当我 运行 这段代码在真实设备上时它会崩溃。
如何在我的应用程序中完成这个任务?如何在没有 Intent
和 PendingIntent
的情况下放置通知图标?
您可以使用此代码,如答案中所述 here and here:
PendingIntent contentIntent = PendingIntent.getActivity(
getApplicationContext(),
0,
new Intent(), // add this
PendingIntent.FLAG_UPDATE_CURRENT);
这与通知或通知管理器无关 你可以通过改变你的一行代码来做到这一点,
PendingIntent pIntent = PendingIntent.getActivity(getApplicationContext(), 0, new Intent(), PendingIntent.FLAG_UPDATE_CURRENT);