C2DM的API水平较低?

时间:2010-10-30 16:25:51

标签: android android-c2dm

要使C2DM正常工作,设备显然必须处于API级别8.但是,这是否真的需要在该级别编译应用程序?使用C2DM的代码都不需要8级的任何API。那么是否可以在较低级别(可能是API级别4或6)使用应用程序并尝试进行C2DM注册?可能在API级别较低的设备上注册失败,希望可以检测到这种情况,以便可以使用备用机制。但是,对于API等级为8或更高的设备,是否应该注册成功?我在这里尝试做的是利用C2DM,同时仍然在4级编译,这样我的应用程序可以达到最多的用户。理想情况下这是可能的,我可以检测到设备何时无法使用C2DM,并做出相应的反应。

2 个答案:

答案 0 :(得分:2)

您可以使用android.os.Build.VERSION.SDK我认为可以确定设备支持的最高级API,并分别处理API 8和< 8,而无需用户使用某个API级别来安装应用。

答案 1 :(得分:0)

对于现在遇到此问题的任何人 - 现在不推荐使用android.os.Build.VERSION.SDK,但您可以使用android.os.Build.VERSION.SDK_INT,如下所示:

    int current_sdk = android.os.Build.VERSION.SDK_INT;

    if (current_sdk >= android.os.Build.VERSION_CODES.FROYO) {
        registerForC2DM(activity);
    }

以下是您可以使用的所有版本代码的参考:http://developer.android.com/reference/android/os/Build.VERSION_CODES.html