当前位置:首页 » 安卓系统 » android编译代码

android编译代码

发布时间: 2023-03-08 04:10:18

⑴ Linux命令行怎么编译Android代码

这个问题已经找到解决方案了,方法如下:
1.在Linux设置文件共享,将项目
共享,最好有个密码什么的。
2.在Linux上配置ssh server,用于
和编译安卓源码
3.Linux mac 通过
连接,原因是有线传输比无线的快很多,ping只是0.3左右ms,不影响使用。然后就可以mac编写代码,然后ssh
编译什么的,很方便,

⑵ android 修改代码怎样编译

1: ./mk n(r) kernel; ./mk bootimage;当修改kernel相关代码时,具体如下:
alps/kernel/
alps/mediatek/platform/mt65xx/kernel/
alps/mediatek/source/kernel/
alps/mediatek/customer/mt65xx/kernel/
alps/mediatek/customer/common/kernel/
alps/mediatek/customer/$porject_name$/kernel
......
2: ./mk n pl 当修改preloader相关代码时, 具体如下:
alps/mediatek/platform/mt65xx/preloader/
alps/mediatek/source/preloader/
alps/mediatek/customer/mt65xx/preloader/
alps/mediatek/customer/common/preloader/
alps/mediatek/customer/$porject_name$/kernle
......
3: ./mk uboot 当修改uboot相关代码时,具体如下:
alps/mediatek/platform/mt65xx/uboot/
alps/mediatek/source/uboot/
alps/bootable/bootloader/uboot/
alps/mediatek/customer/mt65xx/uboot/
alps/mediatek/customer/common/buoot/
alps/mediatek/customer/$porject_name$/uboot/
......
4: ./mk systemimage 当修改system相关代码时,具体如下:
alps/frameworks/
alps/packages/
alps/vendor/
alps/hardware/
alps/dalvik/
...........
5: ./mk recoverimage 当修改recover相关代码时,具体如下:
alps/bootable/recovery/
alps/mediatek/customer/$project_name$/recovery/
......
6: ./mk factoryimage: 当修改factory相关代码时使用此命令,具体如下:
alps/mediatek/customer/$project_name$/factory/
alps/mediatek/customer/common/factory/
alps/mediatek/source/factory/
......
7: ./mk secroimage 当修改secro相关代码时,具体如下:
alps/mediatek/source/secro/
alps/mediatek/customer/$project_name$/secro/
.....

⑶ android如何把apk的工程代码放到源码目录下编译

啥平台的,是原生的还是高通的还是mtk的?反正都类似,你需要一个Android.mk然后源码需要整体new过。然后编译的时候编译到Android.mk所在目录就可以了。反正我现在接触mtk平台的,new代码方法如下:1、首先到XXXXXX/L23_XXXXXXX_AN5.1_MT6735_65C_L1.MP3.V1.8.9_150503/android_mtk_6753_mp目录下,使用如下命令./TmakeGionee
BFL7506A
-p
packages/apps/XXXXX(XXXXXX就是你apk代码所存放的并且与Android.mk同级的目录)。

⑷ 如何在Ubuntu编译Android2.3源代码以及制作自己的SDK

网上下一个软碟通软通(UitraISO)工具、然后去官网上下载一个64位ubuntu.*.iso系统文件、然后软碟通工具自己制作一个USB启动盘(非常简单)不会用软碟通的网络一下一大把!、系统最好是10.40以上的版本

使用的是ubuntu官网下载的ubuntu10.04 LTS 64位版本(ubuntu-10.04.2-desktop-amd64.iso)

配置软件源:

系统安装完毕以后应该首先换一个速度快的软件源

一般用的是ubunt

不然下载各种更新和软件包的时候非常的慢

安装JDK:

我要编译的是2.3姜饼的源代码 所以需要使用jdk6 (还需要是64位的系统)

如果是32为系统藐视jdk要安装jdk5.0的吧!藐视说有个doc什么的不行!所以系统一般装64的、如果是32的小伙们赶快把jdk看看

安装方法:

打开终端

输入

sudo add-apt-repository "deb "

sudo add-apt-repository "deb-src "

sudo apt-get update

sudo apt-get install sun-java6-jdk

就安装好了 (ubuntu10.04 LTS版会自带那两个源)

并且不需要配置环境变量

这一步可以参考

安装各种软件包:

终端中输入

sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev libgl1-mesa-dev g++-multilib mingw32 tofrodos texinfo libsdl-dev libwxgtk2.6-dev

最后三个是我补充的 其他都是官方文档提供的

这一步可以参考

下载源代码:

打开终端并输入

mkdir ~/bin

PATH=~/bin:$PATH

这两句是在你的个人文件夹下创建了一个名字叫bin的文件夹 并且把其加入到了环境变量中

再输入

curl ; ~/bin/repo

chmod a+x ~/bin/repo

这两句首先在bin目录下面下载了一个repo文件 repo简单来说就说用来版本控制的 我们就是用的它来同步代码

然后建立一个用来存放源代码的文件夹 我的这个文件夹的名字是android2.3

输入

mkdir android2.3

cd android2.3

进入android2.3目录

输入

repo init -u git://androi/platform/manifest.git -b gingerbread

在此说明一下:

安卓总称:“机器人”

1.5系统:“纸杯蛋糕”

Android 1.6 Donut甜甜圈
Android 2.0 Eclair松饼
Android 2.1 Eclair松饼
Android 2.2 Froyo冻酸奶
Android 2.3 Gingerbread姜饼(以上系统都是用于手机的)官方消息说2.4准备出来了!至于3.0目前只用于平板电脑

Android 4.0 Ice Cream Sandwich(简称ICS,冰淇淋三明治),

表示你需要的代码是姜饼的 所以最后是gingerbread 如果是2.2代码 就把gingerbread改成froyo

然后你需要输入你的名字跟邮箱地址

如果提示找不到repo命令的话 需要重新设置环境变量 就是之前的PATH=~/bin:$PATH

输入

repo sync

开始同步代码 这个过程会根据你的网速来决定快慢

这一步需要下载的数据有3g那么大

可以续传 一次没下完也没关系

如果之前就已经下过一次的话 只需要把源代码目录(我的是android2.3)下有一个叫.repo的隐藏文件夹里的projects文件夹备份出来就可以了

以后还需要同步的时候再把projects文件夹拷贝回去

ctrl+h查看隐藏文件

这一步可以参考

编译整个源代码:

cd android2.3

进入你的代码目录

输入

. build/envsetup.sh

注意.和build中间有个空格

输入

lunch full-eng

make -j2

输入make就是开始编译代码了 加一个-j2参数就是开两个线程去编译 速度会快些 我花了两个小时的时间

编译完毕以后马上输入

emulator

就可以运行模拟器了 系统能跑起来就说明编译成功了

如果提示找不到emulator命令的话

需要添加环境变量

在android2.3目录下的out/target/proct/generic文件夹下会看到system.img

能看到的话应该算是成功了

这一步可以参考

编译SDK:

这一步在官方网站上没有说明

但是在源代码文件夹里面有文档提到了

就是在android2.3/sdk/docs目录下有一个叫howto_build_SDK.txt的文件介绍了如何编译SDK

原文

Then once you have all the source, simply build the SDK using: $ cd ~/my-android-git $ . build/envsetup.sh $ lunch sdk-eng $ make sdk

看来不需要先编译整个系统再编译SDK 可以直接上来就编译SDK

按提示输入

make到时候也可以加上-j参数 比如 make -j2 sdk

但是不推荐 因为容易编译失败 而且编译SDK只需要二十多分钟到时间 不算很长

当出现

Package SDK: out/host/darwin-x86/sdk/android-sdk_eng.<build-id>_mac-x86.zip

的时候 就表示编译成功了 其中<build-id>默认是系统的用户名

howto_build_SDK.txt中还提到了编译ADT插件

我发现自己编译到ADT插件竟然认不到platform 自己编译出来到SDK也一样

原因不明

只要使用官方的SDK和ADT就没有问题了

具体就是把自己编译出来platform拷贝到官方SDK里到platforms文件夹下 搞过Android开发都懂的

最后:

非常简单的一步

就是直接修改源代码然后编译SDK就可以得到自己的SDK了

我就示范一个简单的例子 抛砖引玉

首先我找到TextView的代码

在frameworks/base/core/java/android/widget 如图

我在updateTextColors方法的开头添加了一句System.out.println

打印了一句话"Source Code Changed"

updateTextColors方法会在TextView的setTextColor方法中被调用

好 保存

编译

然后使用这个platform

新建一个项目

调用一下TextView的setTextColor方法看看有什么效果一个很简单的例子看看

Source Code Changed被打出来了

SDK修改成功

⑸ 如何将源代码编译后的文件编译到android中

1.将应用程序源码复制进Android源码目录中(提前编译好源码)
2.使用build/envsteup.sh 配置shell -
mm TARGET_PRODUCT=proct_name
或直接./build_android.sh 也能完成编译。
3.在源码目录:out/target/proct/proctname/obj/APPS/test_cert_intermediates 下有三个文件:package.apk package.apk.unsigned package.apk.unaligned
将package.apk.unsigned复制出来,单独进行sign.
4.在Windows下进行sign: jarsigner -verbose -keystore youkey.keystore d:\package.apk.unsigned youkey
5.zipalign -v 4 d:\package.apk.unsigned d:\package.signed.apk

⑹ 如何编译和调试android源码中platform/system/core下的代码

首先在Android源代码目录下的build目录下,有个脚本文件envsetup.sh,执行这个脚本文件后,就可以获得一些有用的工具:
USER-NAME@MACHINE-NAME:~/Android$ . ./build/envsetup.sh
注意,这是一个source命令,执行之后,就会有一些额外的命令可以使用:
- croot: Changes directory to the top of the tree.
- m: Makes from the top of the tree.
- mm: Builds all of the moles in the current directory.
- mmm: Builds all of the moles in the supplied directories.
- cgrep: Greps on all local C/C++ files.
- jgrep: Greps on all local Java files.
- resgrep: Greps on all local res/*.xml files.
- godir: Go to the directory containing a file.
这些命令的具体用法,可以在命令的后面加-help来查看,这里我们只关注mmm命令,也就是可以用它来编译指定目录的所有模块,通常这个目录只包含一个模块。

⑺ Androidapp证书反编译代码

反编译代码dex2jar。
在学习android程序的开发过程中,有时候需要借鉴别人的代码,提升自己的开发水平。
前面说了反编译,我们当然不希望我们的应用被别人反编译,所以就得在打包的时候进行代码混淆,这样的包也可反编译出代码,但是代码的可读性很低,从而达到保护代码的目的。

热点内容
visa存储卡 发布:2025-05-15 09:35:07 浏览:618
js调用php的方法 发布:2025-05-15 09:29:13 浏览:496
android添加sdk 发布:2025-05-15 08:59:20 浏览:6
oracle数据导入sql 发布:2025-05-15 08:55:00 浏览:50
最适合做的脚本 发布:2025-05-15 08:54:27 浏览:381
太原php培训班 发布:2025-05-15 08:41:38 浏览:938
豌豆服务器地址 发布:2025-05-15 08:34:56 浏览:713
linux下php编译安装 发布:2025-05-15 08:30:37 浏览:593
c语言八进制十六进制 发布:2025-05-15 08:22:17 浏览:283
华为安卓如何更新鸿蒙 发布:2025-05-15 08:18:52 浏览:374