如何修复Android中的通知以涵盖所有API级别

时间:2013-04-21 02:21:07

标签: java android android-notifications

我想覆盖所有API级别的通知。 要使用TaskStackBuilde,我需要API级别至少16.我不想将minSdkVersion设置为16,因为我的目标是降低API级别。所以我的代码如何检测API级别,如果大于16,我遵循这种格式。如果降低Sdk,我会遵循这种格式。我希望如下:

           int currentapiVersion = android.os.Build.VERSION.SDK_INT;
           if (currentapiVersion >= android.os.Build.VERSION_CODES.JELLY_BEAN){
                // Do something for JELLY_BEAN and above versions
               TaskStackBuilder stackBuilder = TaskStackBuilder.create(context);
               // Adds the back stack for the Intent (but not the Intent itself)
               stackBuilder.addParentStack(DetailMapView.class);
               // Adds the Intent that starts the Activity to the top of the stack
               stackBuilder.addNextIntent(resultIntent);
               PendingIntent resultPendingIntent =
                          stackBuilder.getPendingIntent(
                          0,
                          PendingIntent.FLAG_UPDATE_CURRENT
                          );
               mBuilder.setContentIntent(resultPendingIntent);
            } else{
                // do something for phones running an SDK before JELLY_BEAN
                Intent intent = new Intent(context, DetailMapView.class);
                PendingIntent activity = PendingIntent.getActivity(context, 0, intent, 0);
                mBuilder.setContentIntent(activity);
            }

但代码在TaskStackBuilde时出错,因为我的minSdk为8.我不想更改为16,因为我想将我的应用用于较低的API级别。我该如何解决?任何样本代码都可以使用吗? 感谢

1 个答案:

答案 0 :(得分:0)

为了解决这个问题。你可以使用

import android.support.v4.app.TaskStackBuilder;
而不是 导入android.app.TaskStackBuilder;