美文网首页
系统级应用apk集成和mk文件配置介绍

系统级应用apk集成和mk文件配置介绍

作者: 清晨的麦田 | 来源:发表于2018-01-04 15:18 被阅读550次

Android源码目录下,应用的整体目录如下,根目录为Chat,文件夹中有如下结构:

图一.png

lib中存放的是so文件,打开lib可以看到

图二.png

Android.mk文件用来向编译系统描述你的源代码,内容如下:

PREBUILT_PATH := $(call my-dir)

LOCAL_PATH          := $(PREBUILT_PATH)
include $(CLEAR_VARS)

LOCAL_JNI_SHARED_LIBRARIES := libimagepipeline_chat  libjingle_peerconnection_videochat_so  libyuv_utils_videochat  libyuv
LOCAL_MODULE        := VideoChat
LOCAL_MODULE_OWNER  := qcom
LOCAL_DEX_PREOPT    := $($(LOCAL_MODULE)_DEX_PEROPT)
LOCAL_MODULE_TAGS   := optional
LOCAL_MULTILIB      := 32
LOCAL_MODULE_CLASS  := APPS
LOCAL_CERTIFICATE   := platform
LOCAL_MODULE_SUFFIX := .apk
LOCAL_SRC_FILES     := ./VideoChat.apk
LOCAL_SRC_FILES_32  := ./VideoChat.apk
include $(BUILD_PREBUILT)


LOCAL_PATH          := $(PREBUILT_PATH)
include $(CLEAR_VARS)
LOCAL_MODULE        := libjingle_peerconnection_videochat_so
LOCAL_MODULE_OWNER  := qcom
LOCAL_MODULE_TAGS   := optional
LOCAL_MODULE_CLASS  := SHARED_LIBRARIES
LOCAL_CERTIFICATE   := platform
LOCAL_MODULE_SUFFIX := .so
LOCAL_SRC_FILES     := ./lib/libjingle_peerconnection_videochat_so.so
LOCAL_MULTILIB := 32
LOCAL_32_BIT_ONLY := true
include $(BUILD_PREBUILT)

LOCAL_PATH          := $(PREBUILT_PATH)
include $(CLEAR_VARS)
LOCAL_MODULE        := libimagepipeline_chat
LOCAL_MODULE_OWNER  := qcom
LOCAL_MODULE_TAGS   := optional
LOCAL_MODULE_CLASS  := SHARED_LIBRARIES
LOCAL_CERTIFICATE   := platform
LOCAL_MODULE_SUFFIX := .so
LOCAL_SRC_FILES     := ./lib/libimagepipeline_chat.so
LOCAL_MULTILIB := 32
LOCAL_32_BIT_ONLY := true
include $(BUILD_PREBUILT)

LOCAL_PATH          := $(PREBUILT_PATH)
include $(CLEAR_VARS)
LOCAL_MODULE        := libyuv_utils_videochat
LOCAL_MODULE_OWNER  := qcom
LOCAL_MODULE_TAGS   := optional
LOCAL_MODULE_CLASS  := SHARED_LIBRARIES
LOCAL_CERTIFICATE   := platform
LOCAL_MODULE_SUFFIX := .so
LOCAL_SRC_FILES     := ./lib/libyuv_utils_videochat.so
LOCAL_MULTILIB := 32
LOCAL_32_BIT_ONLY := true
include $(BUILD_PREBUILT)

LOCAL_PATH          := $(PREBUILT_PATH)
include $(CLEAR_VARS)
LOCAL_MODULE        := libyuv
LOCAL_MODULE_OWNER  := qcom
LOCAL_MODULE_TAGS   := optional
LOCAL_MODULE_CLASS  := SHARED_LIBRARIES
LOCAL_CERTIFICATE   := platform
LOCAL_MODULE_SUFFIX := .so
LOCAL_SRC_FILES     := ./lib/libyuv.so
LOCAL_MULTILIB := 32
LOCAL_32_BIT_ONLY := true
include $(BUILD_PREBUILT)

LOCAL_JNI_SHARED_LIBRARIES 这样在编译的时候,NDK自动会把这个libxxx并不会打入apk中,只是放在系统的 /system/app/yourapk/lib/目录下

root@HeraFHD:/system/app/VideoChat # ls
VideoChat.apk
lib
root@HeraFHD:/system/app/VideoChat # cd lib/                                
root@HeraFHD:/system/app/VideoChat/lib # ls
arm
root@HeraFHD:/system/app/VideoChat/lib # cd arm/                            
root@HeraFHD:/system/app/VideoChat/lib/arm # ls
libimagepipeline_chat.so
libjingle_peerconnection_videochat_so.so
libyuv.so
libyuv_utils_videochat.so

相关文章

  • 系统级应用apk集成和mk文件配置介绍

    Android源码目录下,应用的整体目录如下,根目录为Chat,文件夹中有如下结构: lib中存放的是so文件,打...

  • Android系统级应用开发集成

    系统级应用开发,目前据我所了解到的并且用到的分为两种: 1.源码集成 2.apk集成 这两种方式都需要配置mk文件...

  • android移除系统apk

    移除系统apk:在build/target/product/generic_no_telephony.mk文件中,...

  • Linux环境变量相关

    一、系统环境变量配置文件 Linux系统环境变量配置文件分为两种:系统级文件和用户级文件。 1、系统级文件: /e...

  • Ubuntu系统环境变量详解

    一、Ubuntu系统环境变量配置文件 Ubuntu 系统环境变量配置文件分为两种:系统级文件和用户级文件,下面详细...

  • Android系统编译只生成apk,不生成odex

    Android系统编译只生成apk,不生成odex APP的在Android.mk文件中加入: 全局的 在/bui...

  • Android.mk编译apk库

    我们通过源码编译apk的时候,Android.mk文件写法如下: 这样就可以通过Android.mk文件编译.ap...

  • 3-安卓底层-实现安卓控制LED

    安卓源码目录: build : build 目录中存放的是编译系统mk文件,编译规则和generic产品基础配置文...

  • 第一章:理解Android.bp

    介绍Android最新的编译系统 一、简介 早期的Android系统都是采用Android.mk的配置来编译源码,...

  • cocos2d-x 系列

    NDK mk文件语法 0. Android.mk简介: Android.mk文件用来告知NDK Build 系统关...

网友评论

      本文标题:系统级应用apk集成和mk文件配置介绍

      本文链接:https://www.haomeiwen.com/subject/xternxtx.html