我从GIT下载并编译了源代码,并成功运行了与代码一起编译的模拟器。
然后我设法使用mmm android/packages/inputmethods/LationIME
来编译LatinIME,
并使用adb install -r android/out/target/product/generic/system/app/LatinIME.apk
并安装得很好。
但这只适用于我自己编译的AVD,当我尝试通过相同的命令将LatinIME.apk
复制的表单android/out/target/product/generic/system/app/
安装到另一个模拟器或真实手机时:adb install -r LatinIME.apk
,我收到了消息:
165 KB/s (568039 bytes in 3.343s)
pkg: /data/local/tmp/LatinIME.apk
Failure [INSTALL_FAILED_OLDER_SDK]
我用Google搜索了很多东西并尝试了他们所说的话:
在“LatinIME / AndroidManifest.xml”文件中添加第<uses-sdk android:MinSdkVersion="3">
行
修改android/build/core/version_defaults.mk
,将第DEFAULT_APP_TARGET_SDK := $(PLATFORM_SDK_VERSION)
行更改为DEFAULT_APP_TARGET_SDK := 8
我甚至重新下载了源代码,我第一次下载的是API级别为10的默认最新版本,第二次下载API级别9的代码,两者都无法编译可以安装在API级别8或9或10的其他模拟器中。
我认为可能是因为我编写的SDK是AOSP
版本,因此无法安装
官方发布SDK?我不太清楚差异。
任何拥有源代码的人都请尝试mmm android/packages/inputmethods/LationIME
,看看生成的apk是否可以安装在官方SDK版本中?
答案 0 :(得分:4)
好的,我正在回答我自己的问题,我无法理解为什么我的问题总是很少回答。
然而,我在整个互联网上搜索并找到了答案,但幸运的是我看到了这个:
version_defaults.mk of API Key 7
我只是替换了下载的代码树中的android/build/core/version_defaults.mk
并重新编译了模块,它运行了!
以为我不知道它是否会在源代码中运行所有模块,但是我的IME运行良好。