Android framework层自定义jni

本文介绍如何在Android框架层自定义并集成JNI模块,包括创建目录、编写C和Java代码、配置makefile及路径映射等步骤。

项目在framework层中自定义增加了jni,步奏如下:

1、在frameworks/base下创建自己的文件framework_jni目录


2、在framework_jni目录增加c代码和java代码




android.mk 代码如下:

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


LOCAL_SRC_FILES:= \
    test.cpp \


LOCAL_SHARED_LIBRARIES := \
    libandroid_runtime \
    liblog \

LOCAL_MODULE:= libtest-jni

include $(BUILD_SHARED_LIBRARY)

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


test.java 代码如下:

package com.test;


public class test {


static {
System.loadLibrary("test-jni");
}


private native int registListener();


private native void unRegistListener();
}


3、修改~/work-syk/n316b_i60a/device/vanzo/i60a/device.mk 
增加
PRODUCT_PACKAGES += libtest-jni

4、修改~/work-syk/n316b_i60a/build/core/pathmap.mk


FRAMEWORKS_BASE_SUBDIRS := \
        $(addsuffix /java, \
            core \
        featureoption \
            graphics \
            location \
            media \
            media/mca/effect \
            media/mca/filterfw \
            media/mca/filterpacks \
            drm \
            opengl \
            sax \
            telecomm \
            telephony \
            phone \
            wifi \
            keystore \
            rs \
    //添加  framework_jni \
         )

5、整编后,framework的java层可调用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值