android编译产生的apk或so不安装

Android APK文件结构 完整打包编译的流程 APK安装过程 详解 Android 构建系统编译应用资源和源代码,然后将它们打包成可测试、部署、签署和分发的 APK。一般使用 Android Studio开发的时候使用Gradle构建工具包来自动执行和管理构建流程,同时也可以灵活地自定义构建配置。 Gradle 和 Android 插件独立于 Android Studio 运行。所以我们可以在 Android Studio上或者计算机上的命令行构建 Android... 阅读详情

上周六碰到android在线编译系统中的几个问题,记录如下:

问题1:
问题描述:将java应用放在packages\apps下面一起编译,单独进入应用mm编译,可以install安装到out下面的system/app下面,但根目录上make却不会
原因:LOCAL_MODULE_TAGS :=optional 的模块会被编译,但不会安装到image里面,要想让是optional的模块安装的话,需要将模块名加入到相关product的PRODUCT_PACKAGES里面
解决方法:
修改\build\target\product\generic.mk下面的PRODUCT_PACKAGES,加所编译的应用加入其应用包即可,


问题2:
在libhardware下面moudle中实现copybit及openMMX相关hal接口代码,单独进入应用mm编译,可以install安装到out下面的system/lib/hw下面,但根目录上make却不会


解决方法:
Android.mk中的LOCAL_MODULE_TAGS变量设置的有问题。
LOCAL_MODULE_TAGS :=optional
把这项改为
LOCAL_MODULE_TAGS :=eng即可
设置好以后,重新编译即可


原因是LOCAL_MODULE_TAGS 变量跟TARGET_BUILD_VARIANT 变量息息相关。 android系统编译时如果不指定
TARGET_BUILD_VARIANT 变量的值,默认 TARGET_BUILD_VARIANT=eng ,这一项指定 编译android时形成的版本风格

LOCAL_MODULE_TAGS :=user eng tests optional

user: 指该模块只在user版本下才编译

eng: 指该模块只在eng版本下才编译

tests: 指该模块只在tests版本下才编译

optional:指该模块在所有版本下都编译


Android 11源码——预置无源码apk到Android系统(带so文件) 模块名,可不用定义,默认=$(LOCAL_PACKAGE_NAME),不能和既有模块相同,如果该变量未设置,则使用LOCAL_PACKAGE_NAME,如果再没有,就会编译失败。经过对系统中存在的文件夹的访问测试,这种方式编译出来的APK所在进程的UID为system,可以参见Settings。例如LOCAL_MODULE,LOCAL_SRC_FILES,LOCAL_STATIC_LIBRARIES等等,但不清理LOCAL_PATH。testkey普通APK,默认情况下使用。... 阅读详情

相关推荐

Android JNI以及打包so文件到apk中

Android JNI 的使用,之前很少使用这个,所以这次用到占用了很多时间搞,不熟悉C++好痛苦的说啊~ Android JNI如何用呢? 说说我知道的两种: 1. 在jni目录下放置你的.c等源文件,在Android.mk文件中标注好源文件,生成的lib文件名称等,然后在NDK中 ndb-build编译so文件,这种适合大多数的单独的第三方应用,就是在应用市场

学习记录 1万+

AOSP.~ Android.bp 添加自定义模块

AOSP.~ Android.bp 添加自定义模块

南柯好萌的博客 4681

浅谈Android系统编译apk后so文件在dlopen时出现linker权限问题

浅谈Android系统编译apk后so文件在dlopen时出现linker权限问题 展开 文章目录 一、概述 二、问题描述 三、具体分析 四、解决方案 在Android 9.0中的解决方案 五、总结 参考 一、概述 由于技术能力有限,本文的部分观点可能描述的并非准确,欢迎指正 1 在早期Android系统源码编译环境中,我们想要编译一个apk需要将java源码,资源文件等同时放在一个工程文件夹中,...

weixin_42082222的博客 3388

Andorid 使用bp或者mk编译C文件生成so

文件夹列表Android.mk 内容如下最终生成 ./out/target/product//system/system_ext/lib64/lib_cmkdemo.so如果去掉 LOCAL_MULTILIB := 64 ,会生成。

weixin_44021334的博客 2417

Android系统预装带so的apk

需求是预装带so的apk当作系统app,自己的app成了预装软件,是不是想起当年新买的手机被厂商支配的那段日子,如今转变下身份,预装自己的app到手机当中 ,还不能卸载!心中不免有些暗爽。

Android小码家 2250

Android利用.c文件生成So库

Android 调用C方法,在Android Studio中新建.C文件,使用命令生成对应的So,用安卓jin调用so库调用C方法

Android.bp添加编译好的so库

2. so文件会被copy到out/target/product/xxx/system/lib64 或 out/target/product/xxx/system/lib ,被识别到;1.在工程根目录添加lib 和lib64文件目录,并添加so文件;

weixin_42381214的博客 2363

C语言 在合并编译 ( 多.c文件 ) 情况下 实现 linked list ( 链表 ) 教程 . 更新ing

写在前面  依旧是参考借鉴了 浙江大学 温老师 的视频教程,很不错,在中国大学MOOC上,强力推荐!  虽说有借鉴,但是能保证的是每一行代码都是我自己经过理解后手敲出来的,所以才来做了这部分的教程。  最后,带 * 字符是我个人觉得可以添加的功能,按理来讲是可以不看的,而且大概率是可以有更好的改进的。  PS: 文章还在更新,如果文字蓝了(有超链接),说明写完了,如果没蓝,说明我在开军舰.jpg 源代码:  这里→源代码. 第一步:前置工作  先说一下每一篇都会出现 main 函数的,stage1 只是给没

weixin_47287635的博客 524

android.bp编译生成so,Android导入第三方静态库.a编译成动态库.so

在Android开发的时候,经常会使用到用c或c++编写的第三方的静态库。如果有源码的话,可以直接跟你自己的代码一去编译成动态库so,但是如果没有源码的话,你就必须在自己的动态库so里面将别人生成好的静态库导入进来一起编译了。我在编译的时候遇到了不少问题,我觉得有必要进行总结一下。下面我以一个简单的实际例子来讲解如何在动态库中导入静态库。静态库中的源代码有两个文件:static.h, static...

weixin_34321959的博客 2631

Python脚本自动化芯片设计?PyAether实战教程带你玩转EDA

本文通过PyAether实战教程,详细介绍了如何利用Python脚本实现芯片设计自动化。内容涵盖环境搭建、核心对象模型解析,并重点演示了原理图自动生成、参数化单元创建及设计验证流程集成,帮助EDA工程师从重复性手动操作中解放,显著提升设计效率与一致性。

e4f5g6h的博客 1312

ADS新手必看:5分钟搞定Smith圆图阻抗匹配(附详细操作截图)

本文为射频电路设计新手提供了在ADS软件中快速使用Smith圆图进行阻抗匹配的实战指南。通过清晰的步骤和操作截图,详细演示了如何从负载阻抗点出发,通过添加电感和电容元件,在5分钟内完成向50欧姆标准阻抗的匹配,并介绍了仿真验证与性能调优的方法,帮助工程师和学生直观掌握这一核心技能。

weixin_29261711的博客 391

android build 编译打印详细过程

我们在make otapackage编译android代码的时候,有时候需要跟踪详细的过程,包括所有的过程,可以修改build/core/Makefile,赋值hide := 为空即可

csdn66_2016的博客 3130

JMeter压力测试全攻略:从入门到精通

本文系统讲解JMeter压力测试的完整流程与结果评估方法。开篇介绍压力测试的核心概念及JMeter工具特性,随后从环境搭建入手,详细说明JDK配置、JMeter安装及中文界面设置。主体部分围绕测试流程展开,涵盖测试计划创建、线程组参数调优、HTTP请求配置、断言与监听器添加等实操步骤;结果评估环节深入解析聚合报告指标、结果树分析及性能瓶颈定位方法,并通过电商接口测试案例演示全流程应用。文末总结关键要点,为读者提供从基础操作到分布式压测、性能调优的进阶学习方向,助力掌握JMeter在系统性能评估中的核心应用。

邓邓子的博客 2414

android编译产生的apk或so不安装 .

问题1: 问题描述:将java应用放在packages\apps下面一起编译,单独进入应用mm编译,可以install安装到out下面的system/app下面,但根目录上make却不会 原因:LOCAL_MODULE_TAGS :=optional 的模块会被编译,但不会安装到image里面,要想让是optional的模块安装的话,需要将模块名加入到相关product的PRODUCT_PAC

joben的专栏 689

NX二次开发-用户自定义资源栏选项卡RegisterActivationCallback

NX二次开发-用户自定义资源栏选项卡RegisterActivationCallback

阿飞2018 1385

基于RK3588平台的高分辨率多摄像头系统深度优化:从48M单摄到双摄分时复用的完整解决方案

本文深入解析了RK3588平台的高分辨率摄像头实现方案。重点介绍了:1)RK3588的MIPI PHY硬件架构,包括DCPHY和DPHY的资源配置及工作模式;2)双ISP合成技术,通过并行处理提升48M高分辨率图像的处理能力;3)以OV50C40传感器为例,详细展示了48M单摄系统的硬件连接、I2C设备配置和关键参数设置。文章为开发者提供了从硬件连接到软件配置的完整技术方案,有助于实现高性能嵌入式视觉系统。

FJN110的博客 673

android编译产生的apk或so不安装 - LOCAL_MODULE_TAGS :=user eng tests optional

android编译产生的apk或so不安装 - LOCAL_MODULE_TAGS :=user eng tests optional

张同光 (Tongguang Zhang):Hello everyone ! 4220

【IxNetwork】史上最全IxNetwork测试仪使用精讲(一),图文教程超赞超详细!!!

IXIA使用的是Server-client模式,Server端在测试仪表的主机上,在开机后会随着主机内的操作系统的启动而自动启动,一般情况下不需要人为的手工启动。因此在通常不需要为主机配置专用的显示器和键盘。client端包括两个测试软件: Ixia Explorer和ScriptMate。这两个软件一般安装在测试用计算机上,在仪表自带的主机中也有这两个软件。根据测试项目的不同来选择使用不同的软件。Ixia Explorer主要提供数据流的测试,针对设备的功能进行测试;

风云说通信 2053

Android apk安装包反编译——apktool工具

到这里你已经得到了一个修改后的 apk,但是这个编译后的 apk 还无法安装到手机上,因为修改了文件,在安装时手机会对安装包里的签名进行比对签名,如果签名对不上说明apk被篡改了,就不会进行安装。一般 apk 都会进行加固,即对 Dex 加密,Dex 就是格式的文件里是 apk 的代码,加密后反编译是看不到项目主要代码的,从而保证了 apk 的安全性。使用 apksigner.jar 然后用 new.keystore 密钥库对 sign1.apk进行签名,最后生成 sign2.apk。

西凉的悲伤博客 2万+

从零开始讲DDR(8)——AXI 接口MIG 使用(1)

我们简单拆解了MIG AXI接口中测试文件的整体框架,首先在sim_tb_top.sv文件中例化了DDR模型和example_top。在example_top中,又例化了MIG IP和一个流量产生器ddr4_v2_2_8_axi_tg_top。在ddr4_v2_2_8_axi_tg_top中的主要功能是分别例化了boot_mode_gen,prbs_mode_gen,custom_mode_gen和axi_opcode_gen。

apple_53311083的博客 1587

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

解决编译打包apk时自动删除第三方so文件或不完整问题

背景:小黑开发cocos2dx游戏,开发完成,接某游戏平台SDK打包APK以实现游戏计费及平台相关功能。 按SDK文档做:把SDK的jar文件都拷贝到安卓项目下的libs目录下, 把SDK的so文件都拷贝到安卓项目下的libs对应目录下(比如:libs/armeabi, libs/armeabi-v7a, libs/x86等) 编译打包结果:并没有把这些so文件打包进apk里面来,(原

小黑的博客主页 5268

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

【apktool】Android apk安装包反编译、apk 签名

在Android开发和学习过程中,了解APK的组成结构以及掌握反编译和签名技术至关重要。本文将深入探讨APK反编译的完整流程,并详细讲解APK签名的原理和实践。

李赛赛的专栏 2210

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

android apk编译工具,编译apk文件需要使用哪些软件?安卓apk反编译教程

编译apk文件需要使用哪些软件?目前反编译安卓apk的软件非常多,但其中有个比较有特色的编译软件IDA,全名AndroidKiller IDA Jeb jadx,想知道这款安卓apk反编译神器怎么使用吗?请看下文。安卓apk反编译软件介绍:作为一个安卓开发人员,反编译应该是必会的~1、apktool 获取资源文件2、安卓逆向助手(推荐) 可视化的工具3、jd-gui Jar文件(源码)查看器4、d...

weixin_28786193的博客 1万+
上一篇: 中国人唯一不认可的成功
下一篇: Tinyxml简单使用法
andyhuabing
博客等级 码龄19年 704粉丝 165原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值