tom*_*ung 13 android build apk
我已经和我的朋友一起检查了Android SDK工具版本21,就在apkbuilder那里.我已将Android SDK工具更新到版本22,我找不到apkbuilder了.
那么Andorid SDK工具似乎已经apkbuilder用其他东西取而代之了?如何在没有apkbuilder的情况下制作ant build.xml?有没有其他方法来构建Android的unsigned apk?
在旧版本的AndroidSDK中,apkbuilder就像一个shell,实际上是调用:${sdk.dir}/tools/lib/sdklib.jar
所以,如果你深入了解 apkbuilder 的根,你可以发现有两种方法可以调用它:
从 ant 下有一个 ant-extend lib: ${sdk.dir}/tools/lib/ant-tasks.jar 所以,你可以这样调用它:
<path id="android.antlibs">
<pathelement path="${sdk.dir}/tools/lib/ant-tasks.jar" />
</path>
<!-- Custom tasks -->
<taskdef resource="anttasks.properties" classpathref="android.antlibs" />
<apkbuilder
outfolder="${out.absolute.dir}"
resourcefile="${resource.package.file.name}"
apkfilepath="${out.packaged.file}"
debugpackaging="${build.is.packaging.debug}"
debugsigning="${build.is.signing.debug}"
verbose="${verbose}"
hascode="${manifest.hasCode}"
previousBuildType="${build.last.is.packaging.debug}/${build.last.is.signing.debug}"
buildType="${build.is.packaging.debug}/${build.is.signing.debug}">
<dex path="${intermediate.dex.file}"/>
<sourcefolder path="${source.absolute.dir}"/>
<jarfile refid="project.all.jars.path" />
<nativefolder path="${native.libs.absolute.dir}" />
<nativefolder refid="project.library.native.folder.path" />
<extra-jars/>
</apkbuilder>
Run Code Online (Sandbox Code Playgroud)用于脚本或其他开发您可以使用${sdk.dir}/tools/lib/sdklib.jar,其中包含apkbuilder。查看以前版本的apkbuild.bat,文件末尾:
set jarfile=sdklib.jar
set frameworkdir=
if exist %frameworkdir%%jarfile% goto JarFileOk
set frameworkdir=lib\
if exist %frameworkdir%%jarfile% goto JarFileOk
set frameworkdir=..\framework\
:JarFileOk
set jarpath=%frameworkdir%%jarfile%
call %java_exe% -classpath %jarpath% com.android.sdklib.build.ApkBuilderMain %*
Run Code Online (Sandbox Code Playgroud)