当前位置:萝卜系统 > 硬件软件教程 > 详细页面

如何将自己的项目编译到Android系统中并成为应用程序

如何将自己的项目编译到Android系统中并成为应用程序

更新时间:2023-06-20 文章作者:未知 信息来源:网络 阅读次数:

根据运行的环境,操作系统可以分为桌面操作系统,手机操作系统,服务器操作系统,嵌入式操作系统等。

android 系统编译签名_程序编译到android系统_linux编译android程序

1. 下载Android系统的源代码包(不同的手机使用方式不同,请根据自己的情况进行下载,这不是介绍)

2. 解压缩下载的源程序包(如果是.tar.gz文件,则解压缩方法如下)

tar -xzvf文件名

3. 在解压缩后的包中的alps / packages / apps下创建一个新文件夹***(项目名称),将数据复制到项目中主文件下,并将其放置在新创建的文件夹中,并将Java文件名更改为src. 最重要的一点是创建一个新的Android.mk文件. 该文件必须存在. 您可以参考下面的apps /项目中的.mk进行编写. 最简单的编写如下:

LOCAL_PATH: = $(call my-dir)//Android.mk文件和项目文件可以这样写在同一文件中

包括$(CLEAR_VARS)

LOCAL_MODULE_TAGS: =可选

LOCAL_SRC_FILES: = $(调用all-java-files-under,src)

LOCAL_PACKAGE_NAME: =项目名称

android 系统编译签名_linux编译android程序_程序编译到android系统

包括$(BUILD_PACKAGE)

4. 编译整个项目

./ oneCmdMake系统项目名称userdebug //可以是userdebug,eng,user

5. 单模块编译

./ moduleMake userdebug mmm包/应用/项目名称///请注意,此处的编译选项必须相同,否则将很麻烦.

如果编译成功,则可以开始闪烁. 如果编译不成功,则可以看到错误提示. 如果闪烁后手机上没有项目,请执行./moduleMake userdebug snod

再次闪烁,通常很好

成功编译整个项目后,无需将其整体编译. 总体编译是一项非常耗时的操作,通常大约需要一个小时,但是单个模块的编译非常快. 如果将来需要将自己的项目编译到此系统中(已成功编译),则只需直接编译一个模块并用snod打包即可. 我认为这是一种省时的方法. 另一种方法是配置自己的项目名称. 转到系统配置文件device.mk程序编译到android系统,模仿*** PACKAGES + =项目名称,然后将其作为一个整体进行编译,无需打包.

模块编译(将修改后的项目迅速推送到手机上)

linux编译android程序_程序编译到android系统_android 系统编译签名

source build / envsetup.sh#源代码用于运行Shell脚本. envsetup.sh中有一系列可用的命令程序编译到android系统,例如mm mmm mmmb,但是只有在运行脚本后才能使用内部的命令

午餐+平台名称#加载平台,该名称可以在out / target /下看到,例如: 没有正确大小写的通用文件夹

mmm -B项目名称#编译修改后的项目,-B是可选的,此处的项目名称应对应于其所在的路径,编译模块的所有文件,-B选项是必需的,并且-B未添加,仅编译更改的文件

adb root#获取电话的root权限

adb重新安装#安装手机

adb push此项目生成的.apk和.odex文件的位置与电话中的位置相对应#将经过修改和编译的生成的内容推送到电话中

adb shell重启#重启手机

对于无法重新安装的手机,您无法推动,可以在mmm一次编译后将make -j16 snod(直接使用)打包,然后刷新机器,选择系统并下载到手机,即可节省很多时间

android 系统编译签名_程序编译到android系统_linux编译android程序

Ali最近更新代码后,如果您无法在root用户身份后重新挂载,则需要执行以下操作:

在adb root之后,输入adb shell. 执行命令echo“ enable 0;”> / proc / alog,就可以了.

注意: 如果不确定推送是否成功,可以转到手机目录以查看相应文件的修改时间,例如

ls -l Utk.apk的结果将显示文件的修改时间和权限. 仅当权限为666时才正确,该时间为您按下的时间

m: 编译所有模块

mm: 编译当前目录中的模块,当前目录中必须有一个Android.mk文件

mmm: 编译指定路径下的模块,并且指定路径下必须有一个Android.mk文件

eng: 工程版

用户: 最终用户版本

android 系统编译签名_linux编译android程序_程序编译到android系统

userdebug: 调试测试版本

测试: 测试版本

通常来说,测试和userdebug的两个版本无法交付给最终用户.

所犯的错误和最后的修改:

1. Userdebug用于整体编译,而eng用于单个模块. 编译时我没有注意到. 将其更改为同一文件后,它可以生成燕麦文件.

2. AppCompatActivity继承自我的游戏项目,无法识别. 可能是由于软件包或版本,最后更改为Activity.

3. 使用./moduleMake userdebug mmmb更改为./moduleMake userdebug snod来编译单个模块并成功打包

4. 评论应尽可能不以中文显示. 布局中的文本内容最好在调用它之前用string.xml编写

5,. / birdCopy 6118SOP_V17_AY_HD_MV1616用户调试

./ mk_aliphone.sh bird_6737m_35g_m0 userdebug adb new YUNOS_CARRIER_CUSTOM = CMCC_DEEP_COOP

这是为了编译Ali平台. “新建”意味着每次完成整体编译后都会清除原始的编译数据. 如果编译时间很短,则无法将其更改为重新制作

请参阅以提高代码的编译速度


本文来自本站,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-286878-1.html



温馨提示:喜欢本站的话,请收藏一下本站!

本类教程下载

系统下载排行

网站地图xml | 网站地图html