Android通知:与API的兼容性

时间:2012-10-16 11:53:40

标签: android notifications android-4.2-jelly-bean android-2.3-gingerbread

我正在尝试在我的应用中显示通知以及其中的进度条。

我的应用规格是我的目标是API 15,最低SDK设置为8.我使用以下代码来显示通知:

NotificationManager mNotificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this);

mBuilder.setContentTitle("My Application")
        .setContentText("Downloading...")
        .setProgress(0, 0, true)
        .setSmallIcon(R.drawable.ic_launcher);

PendingIntent in = PendingIntent.getActivity(getApplicationContext(), 0, getIntent(), 0);
mBuilder.setContentIntent(in);

mNotificationManager.notify(0, mBuilder.build());

使用上面的代码,通知会显示在通知抽屉中,但没有进度条(在Android 2.2和2.3.3上)。但Android 4.1上的进度条显示正常。所以很明显它是兼容性问题。

如何使用无限制的进度条对我的目标API进行编码。我尝试使用Notification.Builder,但此类在我当前的规格中不可用。

提前致谢!

-Faraz Azhar

2 个答案:

答案 0 :(得分:0)

我鼓励您使用Notification Compat 2。它的创建是为了解决这类问题 如果要为通知使用自定义RemoteView,请查看at my fork。我已经提出拉取请求但尚未集成。

答案 1 :(得分:0)