Android入门之源码开发基础教程

本文讲述了Android入门之源码开发基础教程。分享给大家供大家参考,具体如下:

下载 Android 源码之后,接下来就是学习或者进行开发。

在开发之前,谈一些开发必备知识或者工具,工欲善其事必先利其器嘛!

在前面一篇《Android入门之使用eclipse进行源码开发的方法》中基本上说了开发使用工具。

但是我们如何使用模拟器开发呢?!

当然你去删除或者增加app到模拟器就不可以按常规来操作了,花 5 -10 分钟了解一下,如果你有需要。

0. 编译源码

直接在下载的源码根目录下面,执行:

source build/envsetup.sh
make  -j4

1. 设置变量

设置好 android 模拟器的环境变量,以便于在任何路径下面就可以使用 emulator、adb 命令。

创建一个模拟器设备,这里为 HVGA2.3

2. 启动模拟器

emulator -avd HVGA2.3 -partition-size 256

注意:不要将之前创建的模拟器设备名称写错,否则,你会得到这样的错误:

PANIC: Could not open: /home/mark/.android/avd/HVGA2.3.ini

终端执行上面的命令启动模拟器。然后执行:

adb remount

3. push apk

这里假设把 Gallery3D.apk push 到指定目录。

adb -e push
/out/target/product/generic/system/app/Gallery3D.apk  /system/app

4. 删除某个文件

使用 adb shell 然后进入相关目录,rm 即可!

5. 编译模块

如果修改了某个模块,比如修改了 Gallery3D,那麽这样做即可:

mmm  -j4  /source2.3.7/packages/apps/Gallery3D

或者:

cd source2.3/packages/apps/Gallery3D
mm  -j4

6. 编译源码导入 emulator

模块编译或者系统编译之后,需要查看一下自己修改的效果,需要将×img文件导入模拟器。

编译成功之后,在源码目录会产生 out 目录,在 /out/target/product/generic 下面可以看见很多 img 文件,

执行下面命令即可导入 emulator :

cd  src/out/target/product/generic
emulator -system system.img -data userdata.img -ramdisk ramdisk.img

更多关于Android相关内容感兴趣的读者可查看本站专题:《Android开发入门与进阶教程》、《Android多媒体操作技巧汇总(音频,视频,录音等)》、《Android基本组件用法总结》、《Android视图View技巧总结》、《Android布局layout技巧总结》及《Android控件用法总结》

希望本文所述对大家Android程序设计有所帮助。

(0)

相关推荐

  • 简略分析Android的Retrofit应用开发框架源码

    面对一个项目,对于Android应用开发框架的选择,我想过三种方案: 1.使用Loader + HttpClient + GreenDao + Gson + Fragment,优点是可定制性强,由于使用Google家自己的Loader和LoaderManager,代码健壮性强. 缺点是整套代码学习成本较高,使用过程中样板代码较多,(比如每一个Request都需要产生一个新类) 2.Volley,作为Google在IO大会上得瑟过的一个网络库,其实不算什么新东西(2013 IO发布),使用较为简单

  • Android入门之使用eclipse进行源码开发的方法

    本文实例讲述了Android入门之使用eclipse进行源码开发的方法.分享给大家供大家参考,具体如下: 一.版本说明: 1. eclipse for javaEE 3.5.2 2. jdk1.6 3. adt12.0 4. linux/Ubuntu10.04 或者 linux/ubuntu10.10 二.准备工作: 1. 下载 Android2.3.7 源码 欲了解具体内容可以参看 android 官网. 2. 编译源码 必须编译源码,否则会引发很多问题.记住:如果下载没问题的话,编译只是时间

  • 从源码分析Android的Volley库的工作流程

    Volley现在已经被官方放到AOSP里面,已经逐步成为Android官方推荐的网络框架. 类抽象 对Http协议的抽象 Requeset 顾名思义,对请求的封装,实现了Comparable接口,因为在Volley中是可以指定请求的优先级的,实现Comparable是为了在Request任务队列中进行排序,优先级高的Request会被优先调度执行. NetworkResponse Http响应的封装,其中包括返回的状态码 头部 数据等. Response 给调用者返回的结果封装,它比Networ

  • Android开发之在程序中时时获取logcat日志信息的方法(附demo源码下载)

    本文实例讲述了Android开发之在程序中时时获取logcat日志信息的方法.分享给大家供大家参考,具体如下: 今天分享一个在软件开发中很实用的例子,也是这几天在通宵加班中我使用的一个小例子, 在程序中监听Log信息. 为什么说它实用?原因是Android的开发厂商各种修改之后手机和手机之间以后存在很多差异.比如说魅族M9手机 开发中如果项目中涉及到访问手机系统的地方,例如访问系统短信库,M9手机它会提示一个dialog框 让用户自己去选择 访问还是不访问.这样就给开发适配带来了巨大的麻烦.本来

  • Eclipse开发环境导入android sdk的sample中的源码

    初学Android编程,Android SDK中提供的Sample代码自然是最好的学习材料. Sample代码在SDK安装目录(X:\Android\android-sdk\samples)下.但我在用Eclipse 开发环境导入的时候遇到了一些麻烦.网上看到有人是通过"File -> Import..."或"File -> New->Project -> Create Project From Existing Code"解决的,但我试过,

  • Android入门之源码开发基础教程

    本文讲述了Android入门之源码开发基础教程.分享给大家供大家参考,具体如下: 下载 Android 源码之后,接下来就是学习或者进行开发. 在开发之前,谈一些开发必备知识或者工具,工欲善其事必先利其器嘛! 在前面一篇<Android入门之使用eclipse进行源码开发的方法>中基本上说了开发使用工具. 但是我们如何使用模拟器开发呢?! 当然你去删除或者增加app到模拟器就不可以按常规来操作了,花 5 -10 分钟了解一下,如果你有需要. 0. 编译源码 直接在下载的源码根目录下面,执行:

  • android微信支付源码分享

    本文为大家分享了android微信支付源码,供大家参考,具体内容如下 参数配置 public static final String APP_ID ; /** 在微信开放平台注册app,微信给分配的id **/ public static final String MCH_ID; /** 申请开通微信支付,成功后微信会给你发一封邮件,给你分配一个商户平台账号,在资料里有商户ID **/ public static final String API_KEY; /** 在微信发给你的那封邮件里,给你

  • 搭建Tomcat 8源码开发环境的步骤详解

    前言 最近在网上搜索了很多关于tomcat源码环境搭建的文章,发现按照文章的步骤,几乎都启动不了,于是自己尝试搭建,下面是搭建的方法. 基础环境搭建 1.下载tomcat源代码,我这里是通过svn的方式下载的,svn下载地址 2.下载安装maven工具,这里我就不多说了,安装说明太多了,自己网上找. 3.IDE,我这里使用idea 生成maven工程 我的代码本地目录是: /Users/helanzhou/Documents/helanzhou/java/Tomcat/tomcat8/tomca

  • Android入门之Adapter的简单使用教程

    目录 Adapter介绍 课程目标 Adapter介绍 开始进入高级一些的组件的讲解了,后面章节会大量使用到ListView,在讲ListView前就必须带着这个Adapter的概念去做讲解. Adapter其实就是MVC的概念, 举个例子:大型的商业程序通常由多人一同开发完成,比如有人负责操作接口的规划与设计, 有人负责程序代码的编写如果要能够做到程序项目的分工就必须在程序的结构上做适合的安排. 上面就是Adapter以及继承结构图了,接着我们介绍一下实际开发中还用到的几个Adapter吧!

  • Android 网络html源码查看器详解及实例

    Android 网络html源码查看器详解及实例 IO字节流的数据传输了解 Handler的基本使用 1.作品展示 2.需要掌握的知识 FileInputStream,FIleOutputStream,BufferInputStream,BufferOutStream的读写使用与区别 //进行流的读写 byte[] buffer = new byte[1024 * 8]; //创建一个写到内存的字节数组输出流 ByteArrayOutputStream byteArrayOutputStream

  • Android Studio查看Android 5.x源码的步骤详解

    关于Android Studio的好处我就不用说了,下面两点就足矣让你转投Android Studio了: 1.Android Studio是Google官方指定的,目前官网已经去掉了ADT, 大家可以在Android开发者官网 中进行查看,目前只有Android Studio提供下载了. 2.Google也表示ADT不再进行维护了. 转投Android Studio时大势所趋,网上关于如何使用Android Studio的帖子也是满天飞,所以我就不再啰嗦夸奖Android Studio了. 这

  • Ubantu16.04进行Android 8.0源码编译的流程

    分为4个流程 源码下载 构建编译环境 编译源码 运行 源码下载 安装git并且配置 //安装git sudo apt-get install git //配置git名称和邮箱 git config --global user.name "your name" git config --global user.email XXX@XXX.com 创建repo的bin目录和源码目录 1.创建repo的bin目录 midir ~/bin 2.创建源码目录 midir ~/source 安装r

  • idea2020导入spring5.1的源码的详细教程

    1.先来说下导入环境和工具:     java版本:1.8     idea: idea2020     gradle:gradle5.3 2.gradle的安装     idea导入spring的源码时,每次构建的时候都会去下载gradle,所以如果我们能提前下好gradle可以提高构建速度.     gradle下载地址:https://services.gradle.org/distributions/     上面放的地址可以找到gradle的所有版本.(注意:构建spring源码是有版

  • Android线程池源码阅读记录介绍

    今天面试被问到线程池如何复用线程的?当场就懵掉了...于是面试完毕就赶紧打开源码看了看,在此记录下: 我们都知道线程池的用法,一般就是先new一个ThreadPoolExecutor对象,再调用execute(Runnable runnable)传入我们的Runnable,剩下的交给线程池处理就行了,于是这次我就从ThreadPoolExecutor的execute方法看起: public void execute(Runnable command) { if (command == null)

随机推荐