zoukankan      html  css  js  c++  java
  • android编译自己 内置的jar做法

       1.首先 android.mk

    LOCAL_PATH := $(call my-dir)
    # ============================================================
    include $(CLEAR_VARS)


    LOCAL_SRC_FILES :=  java/com/xxx/xxx/xxx.java

                                                java/com/xxx/xxx/xxx2.java 
                        


    LOCAL_NO_STANDARD_LIBRARIES := true
    LOCAL_JAVA_LIBRARIES := core framework
    LOCAL_MODULE_TAGS := eng
    LOCAL_MODULE:= test
    LOCAL_DX_FLAGS := --core-library

    include $(BUILD_JAVA_LIBRARY)


    # this is will add the test.xml  
    #===============================================================
    include $(CLEAR_VARS)
    LOCAL_MODULE := test.xml
    LOCAL_MODULE_CLASS := ETC
    # This will install the file in /system/etc/permissions
    LOCAL_MODULE_PATH := $(TARGET_OUT_ETC)/permissions
    LOCAL_SRC_FILES := $(LOCAL_MODULE)
    include $(BUILD_PREBUILT)

    include $(call all-makefiles-under,$(LOCAL_PATH))

    2.test.xml 内容

    <permissions>
        <library name="yecon" file="/system/framework/yecon190.jar"/>
    </permissions>

    3.makesdk.sh

    #!/bin/sh
    if [ -d $xxx_DIR -a -d $ANDROID4 ]; then
    echo "xxx_DIR is : $xxx_DIR"
    MANIFEST_FILE=$xxx_DIR/frameworks/xxx/core/MANIFEST.MF
    xxxx_SRC_FILE=$ANDROID4/out/target/common/obj/JAVA_LIBRARIES/xxxxx_intermediates/classes
    SDK_PATH=$ANDROID4/xxx/sdk
    if [ -d $ATCJAR_FILE ];then
    mkdir -p $SDK_PATH
    chmod a+x $SDK_PATH
    jar cvfm $SDK_PATH/yxxx.jar $MANIFEST_FILE -C $xxxx_SRC_FILE .
    chmod a+x -R $SDK_PATH
    else

    echo "++++No such directory: $xxxx_SRC_FILE!+++++"
    fi
    else
    echo "xxx or Android dir not set"
    echo "please run command : source ./selfenv bootmedia"
    echo "e.g. source ./selfenv sd2"
    fi

    4.MANIFEST.MF

    Manifest-Version: 1.0
    Created-By: yecon
    Specification-Vender: yecon
    Specification-Version: 1.0.0


    5.然后将  xxxx 与 xxx.xml 放入系统配置中编译   PACKAGE=  XXXX  

                                                                                                               xxxx.xml 

    6. 在init.rc 中增加

    BOOTCLASSPATH     " :/system/framework/xxxx.jar  "

    7.应用或者其它jar中调用

    LOCAL_STATIC_JAVA_LIBRARIES :=   xxxxx

    或者 

    LOCAL_JAVA_LIBRARIES :=   xxxxx




  • 相关阅读:
    Kotlin入门学习笔记
    bower安装使用入门详情
    Bower => 前端开发也有包管理器
    Bower : ENOGIT git is not installed or not in the PATH
    webstorm配置nodejs,bower,git,github
    VS2012远程调试(winform+web 远程调试)
    在使用Redis的客户端连接工具ServiceStack.Redis要注意的问题
    android 反编译 逆向工具整理
    android 插件化开发 开源项目列表
    未在本地计算机上注册"Microsoft.Jet.OLEDB.4.0"解决方案
  • 原文地址:https://www.cnblogs.com/mfrbuaa/p/5093302.html
Copyright © 2011-2022 走看看