android-jni 真实编译过程演示教学-adthree.doc_第1页
android-jni 真实编译过程演示教学-adthree.doc_第2页
android-jni 真实编译过程演示教学-adthree.doc_第3页
android-jni 真实编译过程演示教学-adthree.doc_第4页
android-jni 真实编译过程演示教学-adthree.doc_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

精这章是高级篇恭喜您进入高级阶段!时间:2010-11-30版本:v1.12问题:如何来进行JNI的编程呢?过程是如何样呢?所谓神马都是有解决方法的小哈做如下解:首先你肯定要有一个编译环境啦亮出我们本次的主角:ubuntu 10开始,是通过GIT 得到ANDROID源码,有了源码我们能做什么?打广告?写程序打广告赚钱?NO我们本次是要做JNI学会了JNI,才能更好地写程序打广告赚钱:D童鞋们有什么好的建议及问题就请联系大家一起交流本文章使用的环境是:UBUNTU 10 + G1 QQ群为:10334534 联系EMAIL: ericlzyu# (请把#换成)三人广告( )致力于为应用开发者提供一个宣传与盈利的平台,帮助开发者让更多的用户使用到您的服务让产品良性发展,让生活更娱乐,更美好三人广告真诚邀请您与我们合作,我们愿意帮助开发者在移动互联网领域携手并进共创美好未来好了,不罗嗦了,接下来就是漫长的等待华丽地等待等待着YY的到来终于编译完成了看到在BUILD目录下有个 envsetup.sh ,执行它看好了,使用:/build$ . envsetup.sh把环境搭建好之后实验在development/samples/SimpleJNI/ 目录下。执行: mm好了接下来的就是编译SimpleJNI项目的过程了要看好别走神了!coconutubuntu:/android$ mm development/samples/SimpleJNI/AndroidManifest.xml Android.mk jni/ src/ coconutubuntu:/android$ mm development/samples/SimpleJNI/=PLATFORM_VERSION_CODENAME=AOSPPLATFORM_VERSION=AOSPTARGET_PRODUCT=genericTARGET_BUILD_VARIANT=engTARGET_SIMULATOR=TARGET_BUILD_TYPE=releaseTARGET_ARCH=armHOST_ARCH=x86HOST_OS=linuxHOST_BUILD_TYPE=releaseBUILD_ID=MASTER=* Build configuration changed: generic-eng-sdk-mdpi - generic-eng-mdpi* Forcing make installclean.* Done with the cleaning, now starting the real build.diff: out/target/product/generic/obj/PACKAGING/updater_extensions_intermediates/register.inc.list: No such file or directory/bin/bash: line 0: cd: development/tools/layoutopt/app/src/resources: No such file or directorymake: Nothing to be done for development/samples/SimpleJNI/.cat Android.mk / 这个格式是ANDROID的专用MAKEFILE文件。/-接下来我们查看下mk文件coconutubuntu:/android/development/samples/SimpleJNI$ cat Android.mk |more# Copyright (C) 2008 The Android Open Source Project# Licensed under the Apache License, Version 2.0 (the License);# you may not use this file except in compliance with the License.# You may obtain a copy of the License at# /licenses/LICENSE-2.0# Unless required by applicable law or agreed to in writing, software# distributed under the License is distributed on an AS IS BASIS,# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.# See the License for the specific language governing permissions and# limitations under the License.# This makefile shows how to build a shared library and an activity that# bundles the shared library and calls it using JNI.TOP_LOCAL_PATH:= $(call my-dir)# Build activityLOCAL_PATH:= $(TOP_LOCAL_PATH)include $(CLEAR_VARS)LOCAL_MODULE_TAGS := samplesLOCAL_SRC_FILES := $(call all-subdir-java-files)LOCAL_PACKAGE_NAME := SimpleJNI/这个是就编译的包名!LOCAL_JNI_SHARED_LIBRARIES := libsimplejniinclude $(BUILD_PACKAGE)# =# Also build all of the sub-targets under this one: the shared library.include $(call all-makefiles-under,$(LOCAL_PATH)/-然后 ,回到 android 顶层目录。执行:coconutubuntu:/android$ make SimpleJNI=PLATFORM_VERSION_CODENAME=AOSPPLATFORM_VERSION=AOSPTARGET_PRODUCT=genericTARGET_BUILD_VARIANT=engTARGET_SIMULATOR=TARGET_BUILD_TYPE=releaseTARGET_ARCH=armHOST_ARCH=x86HOST_OS=linuxHOST_BUILD_TYPE=releaseBUILD_ID=MASTER=/bin/bash: line 0: cd: development/tools/layoutopt/app/src/resources: No such file or directoryNotice file: external/elfcopy/NOTICE - out/host/linux-x86/obj/NOTICE_FILES/src/lib/libelfcopy.a.txttarget Prelink: libdl (out/target/product/generic/symbols/system/lib/libdl.so)target Strip: libdl (out/target/product/generic/obj/lib/libdl.so)target SharedLib: libc (out/target/product/generic/obj/SHARED_LIBRARIES/libc_intermediates/LINKED/libc.so)target Prelink: libc (out/target/product/generic/symbols/system/lib/libc.so)libelfcopy: Warning: DW_FORM_data8 is unsupported when sizeof (unsigned long) != 8libelfcopy: Warning: Range lists in .debug_info section arent in ascending order!libelfcopy: Warning: Range lists in .debug_ranges section start at 0x40target Strip: libc (out/target/product/generic/obj/lib/libc.so)target SharedLib: libstdc+ (out/target/product/generic/obj/SHARED_LIBRARIES/libstdc+_intermediates/LINKED/libstdc+.so)target Prelink: libstdc+ (out/target/product/generic/symbols/system/lib/libstdc+.so)target Strip: libstdc+ (out/target/product/generic/obj/lib/libstdc+.so)target SharedLib: libm (out/target/product/generic/obj/SHARED_LIBRARIES/libm_intermediates/LINKED/libm.so)target Prelink: libm (out/target/product/generic/symbols/system/lib/libm.so)libelfcopy: Warning: Range lists in .debug_info section arent in ascending order!target Strip: libm (out/target/product/generic/obj/lib/libm.so)target SharedLib: liblog (out/target/product/generic/obj/SHARED_LIBRARIES/liblog_intermediates/LINKED/liblog.so)target Prelink: liblog (out/target/product/generic/symbols/system/lib/liblog.so)libelfcopy: Warning: Range lists in .debug_info section arent in ascending order!target Strip: liblog (out/target/product/generic/obj/lib/liblog.so)target SharedLib: libz (out/target/product/generic/obj/SHARED_LIBRARIES/libz_intermediates/LINKED/libz.so)target Prelink: libz (out/target/product/generic/symbols/system/lib/libz.so)libelfcopy: Warning: Range lists in .debug_info section arent in ascending order!target Strip: libz (out/target/product/generic/obj/lib/libz.so)target SharedLib: libcutils (out/target/product/generic/obj/SHARED_LIBRARIES/libcutils_intermediates/LINKED/libcutils.so)target Prelink: libcutils (out/target/product/generic/symbols/system/lib/libcutils.so)libelfcopy: Warning: Range lists in .debug_info section arent in ascending order!target Strip: libcutils (out/target/product/generic/obj/lib/libcutils.so)target SharedLib: libutils (out/target/product/generic/obj/SHARED_LIBRARIES/libutils_intermediates/LINKED/libutils.so)target Prelink: libutils (out/target/product/generic/symbols/system/lib/libutils.so)libelfcopy: Warning: DW_FORM_data8 is unsupported when sizeof (unsigned long) != 8libelfcopy: Warning: DW_FORM_data8 is unsupported when sizeof (unsigned long) != 8libelfcopy: Warning: Location lists in .debug_info section arent in ascending order!libelfcopy: Warning: Range lists in .debug_info section arent in ascending order!libelfcopy: Warning: Range lists in .debug_ranges section start at 0x5b8target Strip: libutils (out/target/product/generic/obj/lib/libutils.so)target SharedLib: libsimplejni (out/target/product/generic/obj/SHARED_LIBRARIES/libsimplejni_intermediates/LINKED/libsimplejni.so)target Non-prelinked: libsimplejni (out/target/product/generic/symbols/system/lib/libsimplejni.so)【!】target Strip: libsimplejni (out/target/product/generic/obj/lib/libsimplejni.so)Notice file: frameworks/base/libs/utils/NOTICE - out/host/linux-x86/obj/NOTICE_FILES/src/lib/libutils.a.txtNotice file: system/core/liblog/NOTICE - out/host/linux-x86/obj/NOTICE_FILES/src/lib/liblog.a.txtNotice file: system/core/libcutils/NOTICE - out/host/linux-x86/obj/NOTICE_FILES/src/lib/libcutils.a.txtNotice file: external/expat/NOTICE - out/host/linux-x86/obj/NOTICE_FILES/src/lib/libexpat.a.txtNotice file: external/libpng/NOTICE - out/host/linux-x86/obj/NOTICE_FILES/src/lib/libpng.a.txtCopying: out/target/common/obj/APPS/SimpleJNI_intermediates/classes-full-debug.jarCopying: out/target/common/obj/APPS/SimpleJNI_intermediates/classes.jartarget Dex: SimpleJNItarget Package: SimpleJNI (out/target/product/generic/obj/APPS/S

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论