• Android Call requires API level 11 (current min is 8)的解决方案


    【错误描述】

    在用Eclipse开发过程中,为了兼容Android2.2和4.0以上版本,我在使用Notification类时做了2个版本的代码,代码根据系统版本不同执行相应模块,结果,等我输完代码,发现系统提示了一个这么的错误。

    【原因分析】

    不详,可能和Run Android Lint有点关系吧。就是创建项目时,我们设置了最低版本API Level,比如我的是8,因此,Eclipse检查我调用的API后,发现版本号不能向低版本兼容,比如我用的“Notification.Builder”是Level 11 以上才有的,自然超过了8,所以提示错误。

    【解决方案】

    右键点击项目->Android tools ->Clear Link Markers.即可临时解决,但是如果调试用的模拟器是低版本的,则在调试完后还有这个错误。

    如果把manifest文件中的user-sdk的android:minSdkVersion改为报错的那个高版本就没事。比如下面:

    <uses-sdk

    android:minSdkVersion="11" //这个之前是8

    android:targetSdkVersion="17" />


    【扩展】

    这种错误不仅发生在Level11,也同时发生于其他因为设置了最低版本,但使用了高版本API的代码中,解决方案应该相同

  • 相关阅读:
    策略模式Strategy
    flex项目
    模板方法Template Method
    timer与ScheduledExecutorService
    java两个字符串的相似度
    一个简单的webshell
    状态模式State
    Java性能优化
    责任链模式China of Responsibility
    ns2.34下mflood协议的完美移植
  • 原文地址:https://www.cnblogs.com/anyuan9/p/6171628.html
Copyright © 2020-2023  润新知