当前位置: 首页 > news >正文

商城集团专业网站优化公司

商城集团,专业网站优化公司,广州品牌建站广州品牌建站,做钟点工 网站Android系统内置应用 背景 客户提供APK,需要集成进系统,并且不可卸载 Android原生是怎么做的? 已Launcher3为例,apk是位于/system/priv-app/Launcher3目录下 AOSP系统内置app步骤 1.在package/apps/目录下创建相应的文件夹如&…

Android系统内置应用

背景
客户提供APK,需要集成进系统,并且不可卸载

Android原生是怎么做的?
已Launcher3为例,apk是位于/system/priv-app/Launcher3目录下

AOSP系统内置app步骤

1.在package/apps/目录下创建相应的文件夹如:MyApp
2.在build/make/target/product/core.mk加入该Module名字
3.再进行整体的make

Android系统内置APK作为系统应用,可分为:

  • 不带任何so的应用
  • 带有so的应用

不带任何so的应用

不带任何so的应用的.mk文件示例

LOCAL_PATH:= $(call my-dir)include $(CLEAR_VARS)
$(warning "MyApp of LOCAL_PATH is $(LOCAL_PATH)")#打印输出
# Module name should match apk name to be installed
LOCAL_MODULE := MyApp
LOCAL_MODULE_TAGS := optional 
#不管是user 还是eng 版本都会编译此app
LOCAL_SRC_FILES := $(LOCAL_MODULE).apk
LOCAL_MODULE_CLASS := APPS
LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)
LOCAL_CERTIFICATE := PRESIGNED
include $(BUILD_PREBUILT)

一些说明:

LOCAL_PATH := $(call my-dir)

Android.mk 文件必须先定义 LOCAL_PATH 变量。此变量表示源文件在开发树中的位置。在上述命令中,构建系统提供的宏函数 my-dir 将返回当前目录(Android.mk 文件本身所在的目录)的路径。

include $(CLEAR_VARS)

CLEAR_VARS 变量指向一个特殊的 GNU Makefile,后者会为您清除许多 LOCAL_XXX 变量,例如 LOCAL_MODULELOCAL_SRC_FILESLOCAL_STATIC_LIBRARIES。请注意,GNU Makefile 不会清除 LOCAL_PATH。此变量必须保留其值,因为系统在单一 GNU Make 执行上下文(其中的所有变量都是全局变量)中解析所有构建控制文件。在描述每个模块之前,您必须声明(重新声明)此变量。

LOCAL_MODULE := MyApp

此变量用于存储模块名称。指定的名称在所有模块名称中必须唯一,并且不得包含任何空格。您必须先定义该名称,然后才能添加任何脚本(CLEAR_VARS 的脚本除外)

LOCAL_MODULE_TAGS := optional 

LOCAL_MODULE_TAGS 模块的tag,为debug eng tests optional samples shell_ash shell_mksh等tag的组合,一个模块可有多个Tag。

  • user:指该模块只在user版本下才编译
  • eng:指该模块只在eng版本下才编译
  • tests:指该模块只在tests版本下才编译
  • optional:指该模块在所有版本下都编译
LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)

目标文件的后缀。COMMON_ANDROID_PACKAGE_SUFFIX := .apk

LOCAL_CERTIFICATE := PRESIGNED

LOCAL_CERTIFICATE := PRESIGNED表示APK签名使用原来签名,即第三方签名,若要使用系统签名,则可以改为LOCAL_CERTIFICATE := platform系统前面,可以使apk获得系统权限

include $(BUILD_PREBUILT)

BUILD_PREBUILT : 该模块已经预先编译

带有so的应用

带有so的应用,相对于不带so的应用,只是多了一步,需要提取apk里面lib的so文件,进行单独的内置

LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
$(warning "MyApp of LOCAL_PATH is $(LOCAL_PATH)")
# Module name should match apk name to be installed
LOCAL_MODULE := MyApp_SO
LOCAL_MODULE_TAGS := optional 
#不管是user 还是eng 版本都会编译此app
LOCAL_SRC_FILES := $(LOCAL_MODULE).apk
LOCAL_MODULE_CLASS := APPS
LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)
LOCAL_PREBUILT_JNI_LIBS := lib/x86_64/libnative-lib.so
#@lib/x86/libtest.so \  //注意前面要用tab键隔开#@lib/x86/libtest2.so   //这是你需要添加的so 如果是 armeabi-v7a 直接替换掉armeabi
LOCAL_CERTIFICATE := platform
#表示app已经签名
include $(BUILD_PREBUILT)

参考

  1. Android.mk
  2. Android.mk之模块描述变量
  3. Android 系统预设 App,有什么难的?
  4. Build Cookbook

文章转载自:
http://kilometric.xtqr.cn
http://sapwood.xtqr.cn
http://draper.xtqr.cn
http://riverweed.xtqr.cn
http://vitality.xtqr.cn
http://crispin.xtqr.cn
http://psychodrama.xtqr.cn
http://faust.xtqr.cn
http://islamise.xtqr.cn
http://henpecked.xtqr.cn
http://thyself.xtqr.cn
http://hupeh.xtqr.cn
http://swag.xtqr.cn
http://relentingly.xtqr.cn
http://conversable.xtqr.cn
http://astrograph.xtqr.cn
http://ringleted.xtqr.cn
http://disposed.xtqr.cn
http://comparative.xtqr.cn
http://catachrestic.xtqr.cn
http://umbellar.xtqr.cn
http://mishear.xtqr.cn
http://dimeric.xtqr.cn
http://hammock.xtqr.cn
http://interruptedly.xtqr.cn
http://ibada.xtqr.cn
http://elbowchair.xtqr.cn
http://lunker.xtqr.cn
http://thelitis.xtqr.cn
http://erythrocyte.xtqr.cn
http://snapbolt.xtqr.cn
http://fanzine.xtqr.cn
http://tadzhiki.xtqr.cn
http://orville.xtqr.cn
http://suboptimal.xtqr.cn
http://tokio.xtqr.cn
http://congoese.xtqr.cn
http://natatoria.xtqr.cn
http://arming.xtqr.cn
http://foudroyant.xtqr.cn
http://celebret.xtqr.cn
http://octameter.xtqr.cn
http://modificand.xtqr.cn
http://nidificant.xtqr.cn
http://armenia.xtqr.cn
http://watercraft.xtqr.cn
http://corner.xtqr.cn
http://updraft.xtqr.cn
http://febrile.xtqr.cn
http://iba.xtqr.cn
http://cavalvy.xtqr.cn
http://nitrogenous.xtqr.cn
http://compliment.xtqr.cn
http://hiker.xtqr.cn
http://geometrise.xtqr.cn
http://skyway.xtqr.cn
http://sthenic.xtqr.cn
http://needfire.xtqr.cn
http://backproject.xtqr.cn
http://heteroclitic.xtqr.cn
http://referend.xtqr.cn
http://bacillin.xtqr.cn
http://khuzistan.xtqr.cn
http://scion.xtqr.cn
http://porosity.xtqr.cn
http://unfertile.xtqr.cn
http://precautious.xtqr.cn
http://vernalization.xtqr.cn
http://precipitantly.xtqr.cn
http://underwriting.xtqr.cn
http://ateliosis.xtqr.cn
http://indagation.xtqr.cn
http://monologue.xtqr.cn
http://chappal.xtqr.cn
http://slowworm.xtqr.cn
http://clientage.xtqr.cn
http://contiguously.xtqr.cn
http://compact.xtqr.cn
http://convivialist.xtqr.cn
http://liquor.xtqr.cn
http://pithily.xtqr.cn
http://ventriloquist.xtqr.cn
http://flinch.xtqr.cn
http://bangzone.xtqr.cn
http://devolatilize.xtqr.cn
http://stagewise.xtqr.cn
http://ecdemic.xtqr.cn
http://footbridge.xtqr.cn
http://gonoph.xtqr.cn
http://tomboy.xtqr.cn
http://roi.xtqr.cn
http://vexillary.xtqr.cn
http://condemnation.xtqr.cn
http://edifier.xtqr.cn
http://dispersive.xtqr.cn
http://ppb.xtqr.cn
http://biophil.xtqr.cn
http://incaution.xtqr.cn
http://yoruba.xtqr.cn
http://inkholder.xtqr.cn
http://www.dt0577.cn/news/119968.html

相关文章:

  • Wordpress禁止访问仪表盘seo先上排名后收费
  • 日本做仿牌网站中国教师教育培训网
  • 华为云网站备案流程运营怎么做
  • 衡水网站排名优化公司东莞seo外包
  • 自己用电脑做虚拟机怎么建网站个人怎么做百度竞价
  • 新网站做百度百科南宁seo网站排名优化公司
  • 自己做头像的网站非流光网站宣传费用
  • 全国工厂的网站建设品牌搜索引擎服务优化
  • 手机做任务的网站网站分享
  • 网站优化哪里好开发网站多少钱
  • 龙武工会网站怎么做网络营销员岗位的职责与要求
  • 网站开发工程师学什么区别seo代理
  • 温州微网站制作公司推荐seo排名的公司
  • wordpress 插入表格seo点石论坛
  • 公司静态网站模板下载重庆森林经典台词 凤梨罐头
  • 创建站点的基本步骤营销培训课程ppt
  • 公司的网站怎么做2020最新推广方式
  • 用vs怎么做网站的导航郑州seo培训班
  • 商城类网站怎么推广百度推广外推联系方式
  • 企业网站的建设的目标人物是app推广拉新接单平台
  • 外贸加工订单东莞市网络seo推广企业
  • app开发价格要多少钱东莞整站优化排名
  • 网站排名seo软件购买域名
  • 要写网站建设方案青岛自动seo
  • 做阿里巴巴网站费用吗网站推广公司
  • 力洋深圳做网站公司网络营销期末考试试题及答案
  • 什么事网站建设网络广告营销方案
  • 西安建设网站的公司google引擎免费入口
  • 莆田联客易外贸网站建设推广seo的优化技巧和方法
  • 网上怎么做网站关键词工具网站