博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android NDK 编译hellojni 例子文件
阅读量:6314 次
发布时间:2019-06-22

本文共 4130 字,大约阅读时间需要 13 分钟。

运行android-cmd.bat,使用cd命令切换到samples/hello-jni目录下,

运行android update project -p . -s,会生成build.xml文件,用于ant命令,要注意的是,编译的时候会发生错误,提示:

Error: The project either has no target set or the target is invalid.

Please provide a --target to the 'android.bat update' command.

这个时候,可以使用android list targets命令来查看当前系统中的android模拟器,我有两个,如下:

I:\android\android-ndk-r7c\samples\native-activity>android.bat list targets

Available Android targets:
----------
id: 1 or "android-8"
     Name: Android 2.2
     Type: Platform
     API level: 8
     Revision: 1
     Skins: HVGA, QVGA, WQVGA400, WQVGA432, WVGA800 (default), WVGA854
     ABIs : armeabi
----------
id: 2 or "android-10"
     Name: Android 2.3.3
     Type: Platform
     API level: 10
     Revision: 2
     Skins: HVGA, QVGA, WQVGA400, WQVGA432, WVGA800 (default), WVGA854
     ABIs : armeabi

如果没有的话,需要使用SDK的AVD Manager来创建一个就可以了.而我使用的是android 2.3.3的模拟器,所以我的编译命令是:

I:\android\android-ndk-r7c\samples\native-activity>android update project -p . -

t android-10 -s
Updated and renamed default.properties to project.properties
Updated local.properties
No project name specified, using Activity name 'NativeActivity'.
If you wish to change it, edit the first line of build.xml.
Added file I:\android\android-ndk-r7c\samples\native-activity\build.xml
Added file I:\android\android-ndk-r7c\samples\native-activity\proguard.cfg

从上面看出,已经生成了build.xml文件了.

 

运行ant debug命令,输出如下:

I:\android\android-ndk-r7c\samples\hello-jni>ant debug

Buildfile: I:\android\android-ndk-r7c\samples\hello-jni\build.xml

-set-mode-check:

-set-debug-files:

-set-debug-mode:

-debug-obfuscation-check:

-setup:

     [echo] Gathering info for HelloJni...
    [setup] Android SDK Tools Revision 16
    [setup] Project Target: Android 2.2
    [setup] API level: 8
    [setup]
    [setup] ------------------
    [setup] Resolving library dependencies:
    [setup] No library dependencies.
    [setup]
    [setup] ------------------
    [setup]
    [setup] WARNING: Attribute minSdkVersion in AndroidManifest.xml (3) is lower
 than the project target API level (8)

-build-setup:

     [echo] Creating output directories if needed...

-pre-build:

-code-gen:

     [echo] ----------
     [echo] Handling aidl files...
     [aidl] No AIDL files to compile.
     [echo] ----------
     [echo] Handling RenderScript files...
[renderscript] No RenderScript files to compile.
     [echo] ----------
     [echo] Handling Resources...
     [aapt] Found Deleted Target File
     [aapt] Generating resource IDs...

-pre-compile:

-compile:

    [javac] Compiling 2 source files to I:\android\android-ndk-r7c\samples\hello
-jni\bin\classes

-post-compile:

-obfuscate:

-dex:

      [dex] Converting compiled files and external libraries into I:\android\and
roid-ndk-r7c\samples\hello-jni\bin\classes.dex...

-crunch:

   [crunch] Crunching PNG Files in source dir: I:\android\android-ndk-r7c\sample
s\hello-jni\res
   [crunch] To destination dir: I:\android\android-ndk-r7c\samples\hello-jni\bin
\res
   [crunch] Crunched 0 PNG files to update cache

-package-resources:

     [aapt] Creating full resource package...
     [aapt] Warning: AndroidManifest.xml already defines debuggable (in
chemas.android.com/apk/res/android); using existing value in manifest.

-package:

[apkbuilder] Current build type is different than previous build: forced apkbuil
der run.
[apkbuilder] Creating HelloJni-debug-unaligned.apk and signing it with a debug k
ey...

-do-debug:

 [zipalign] Running zip align on final apk...
     [echo] Debug Package: I:\android\android-ndk-r7c\samples\hello-jni\bin\Hell
oJni-debug.apk

debug:

[propertyfile] Creating new property file: I:\android\android-ndk-r7c\samples\he
llo-jni\bin\build.prop
[propertyfile] Updating property file: I:\android\android-ndk-r7c\samples\hello-
jni\bin\build.prop
[propertyfile] Updating property file: I:\android\android-ndk-r7c\samples\hello-
jni\bin\build.prop
[propertyfile] Updating property file: I:\android\android-ndk-r7c\samples\hello-
jni\bin\build.prop

BUILD SUCCESSFUL

Total time: 5 seconds

从上面,可以看出,生成了HelloJni-debug.apk,那么使用adb命令安装到当前的虚拟机上就可以了.

运行adb install bin/HelloJni-debug.apk命令,如果出现:error: device not found,说明你的android模拟器尚未start.

运行后,出现如下提示:

185 KB/s (85934 bytes in 0.453s)

        pkg: /data/local/tmp/HelloJni-debug.apk
Success

转载于:https://www.cnblogs.com/geeeknerd/archive/2013/05/09/3068898.html

你可能感兴趣的文章
Linux的任务调度
查看>>
在Android studio中添加jar包方法如下
查看>>
iframe 在ie下面总是弹出新窗口解决方法
查看>>
分享10款漂亮实用的CSS3按钮
查看>>
安装nginx 常见错误及 解决方法
查看>>
Gorun8电子商城
查看>>
在之前链表的基础上改良的链表
查看>>
android编译系统makefile(Android.mk)写法
查看>>
MD5源代码C++
查看>>
Eclipse 添加 Ibator
查看>>
Linux中变量$#,$@,$0,$1,$2,$*,$$,$?的含义
查看>>
Python编程语言
查看>>
十四、转到 linux
查看>>
Got error 241 'Invalid schema
查看>>
ReferenceError: event is not defined
查看>>
男人要内在美,更要外在美
查看>>
为什么要跟别人比?
查看>>
app启动白屏
查看>>
Oracle 提高查询性能(基础)
查看>>
学习知识应该像织网一样去学习——“网状学习法”
查看>>