小米手环APP 失败:Failure [INSTALL_FAILED_OLDER_SDK] 原因

最近想给女朋友买个小米手环,结果淘宝客服说要求Android版本4.4以上,蓝牙4.0以上。

百度手机型号查了半天参数,发现我的2个手机一个蓝牙版本不够,一个android版本4.2,怎么办呢?先下个小米手环APP(现改为小米运动APP)试试吧,结果安装时候老安装失败:Failure [INSTALL_FAILED_OLDER_SDK]

根据意思好像是SDK版本太老?百度了一下,网上都说是因为程序源码下的“AndroidManifest.xml”文件中定义了“minSdkVersion”的原因,唉,我也没有人家的源码,也无法修改,只好期待女朋友手机sdk版本可以了。

记不清sdk与api版本对应的可以看下这里:SDK与API版本对应关系

在查阅资料的时候考虑到自己以后的代码可能也会遇到这种问题,把解决办法记录如下:

1.打开源码目录下的AndroidManifest.xml文件,然后注释掉或者删除掉这行:

 <uses-sdk android:minSdkVersion="4" />

2.考虑到可能有使用gradle等构件工具的情况,光进行上述操作并不奏效,原因是在自动构件时会重新生成AndroidManifest.xml文件。那我们就要追根溯源,找到gradle的构件文件,进行相应修改.

  • 解决方案:
  • 修改源码app目录下的“build.gradle”文件,将其中的minSdkVersion 、targetSdkVersion 修改为跟虚拟设备的安卓API版本一致即可。
    这里写图片描述

3.还有网友是Ubuntu下编译Android,通过mmm编译,如果出现这个错误,就需要在/build/core/version_defaults.mk文件中这一段

ifeq “” “$(DEFAULT_APP_TARGET_SDK)”

# This is the default minSdkVersion and targetSdkVersion to use for
# all .apks created by the build system. It can be overridden by explicitly
# setting these in the .apk’s AndroidManifest.xml. It is either the code
# name of the development build or, if this is a release build, the official
# SDK version of this release.
ifeq “REL” “$(PLATFORM_VERSION_CODENAME)”

DEFAULT_APP_TARGET_SDK := $(PLATFORM_SDK_VERSION)

else

DEFAULT_APP_TARGET_SDK := $(PLATFORM_VERSION_CODENAME)
endif
endif

将DEFAULT_APP_TARGET_SDK直接赋值相应的API等级即可。

转载于:https://my.oschina.net/u/3126720/blog/803470

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值