常用开发工具的用法

android : 启动Android SDK管理器

android --help  查看具体用法

android create avd -n t10 -t 10 -b armeabi-v7a     创建虚拟机 (t10 是 Android 4.0.3)

emulator -avd t10   启动虚拟机

ddms  启动调试环境

adb   : Android Debug Bridge, 可以完成手机和电脑文件的相互复制,安装apk应用,可以直接切换到Android系统中执行Linux命令。

adb push d:/adb.txt /sdcard/Stock/              复制文件到手机

adb pull /sdcard/Stock/userdata_0526.rar .    复制文件到电脑

adb shell     启动shell窗口,可以执行一些常用的linux命令,如:ls、mkdir、rm

adb help     使用帮助

adb install [-r] [-s] <file>

adb install text.apk

adb uninstall [-k] <package>

dx --help    编译Android应用    (P34)

dx -dex --dump-to=g:\a.dex --core-library d:\helloworld\bin       (将binmul下所有二进制文件转换为a.dex)

aapt --help  打包资源  (P34)

mksdcard --help   管理虚拟SD卡

mksdcard 64M F:\Android\sdcard.img

emulator -avd t10 -sdcard F:\Android\sdcard.img    启动模拟器,使用指定虚拟SD卡

adb kill-server

adb start-server

adb uninstall cn.emoney.hg

 

adb server 无法启动的问题解决:

1 C:\Users\用户名>adb start-server

2 C:\Users\用户名>adb nodaemon server
   cannot bind 'tcp:5037'//tcp为”5037“说明端口被占用
4 C:\Users\用户名>netstat -ano |findstr "5037"  //查找哪些服务占用了这个端口
   TCP 127.0.0.1:5037 0.0.0.0:0 LISTENING 18252 //在任务管理器中结束PID为18252的程序

debug快捷键:

F5   单步调试进入函数内部。
F6   单步调试不进入函数内部,如果装了金山词霸2006则要把“取词开关”的快捷键改成其他的。
F7   由函数内部返回到调用处。
F8   一直执行到下一个断点。
F11 这个好像是重新运行debug的,我也不确定,一直就当做重新运行debug的快捷键用的,呵呵。

创建一个Android应用

android create project -n HelloWorld -t 8 -p HelloWorld -k org.crazyit.helloworld -a HelloWorld

说明:

res目录存放各种资源:layout-界面布局  values-存xml格式的资源文件(strings.xml, colors.xml, 尺寸资源dimens.xml)

drawable-ldpi,  drawable-mdpi,  drawable-hdpi, drawable-xdpi  四个子目录存低、中、高、超高4种分辨率的图片文件

AndroidManifest.xml 是项目的系统清单文件,控制应用的名称、图标、访问权限等整体属性。此外Android应用的Activity、Service、ContentProvider、BroadcastReceiver这4大组件都需要再这个文件中配置。

build.xml   Ant生成文件,可以用它通过Ant生成、安装Android项目

Android应用基本组件

Activity  负责与用户交互的组件。相当于Swing编程中的JFframe。只能通过setContentView(View)来显示指定组件。

View  是所有UI控件和容器控件的基类。类似于SWing编程中的JPanel。 View组件需要放到容器组件中,或使用Activity降它显示出来。View的重要子类ViewGroup,通常作为其它组件的容器使用,除了包含View,还可以再次包含ViewGroup,也可以被当成View使用。

Service  与Activity的地位并列,通常位于后台运行,一般不与用户交互、没有图形用户界面。拥有独立的生命周期,提供后台服务或健康其它组件的运行状态。

BroadcastReceiver  广播消息接收器,事件源是Android应用中的其它组件。

ContentProvider  是Android系统跨应用的数据交换标准。一个应用使用ContentProvider暴露自己的数据,另一个应用通过ContentResovler来访问数据。

Intent  是Android应用内不同组件之间通信的载体。Intent可以其它另一个Activity,也可以启动一个Service组件,还可以发一条广播消息来触发系统中的BroadcastReceiver。也就是说Intent是这三种组件之间的通信载体。 显示Intent指定类名,隐式Intent指定条件。

IntentFilter  是被调用组件用来声明自己所满足的条件,声明自己能处理哪些隐式Intent。

签名Android应用程序:避免包名相同的应用相互覆盖

Android开发把项目打包成apk

疯狂Android讲义 - 学习笔记(一)的更多相关文章

  1. 疯狂Android讲义 - 学习笔记(八)

    第10章 Service与BroadcastReceiver 10.1 Service简介 Service组件也是可执行的程序,有自己的生命周期,创建.配置Service与创建.配置Activity的 ...

  2. 疯狂Android讲义 - 学习笔记(七)

    第8章 Android数据存储与IO  Java IO的数据存储可以移植到Android应用开发上来,Android系统还提供了一些专门的IO API. Android系统内置了SQLite数据库,S ...

  3. 疯狂Android讲义 - 学习笔记(六)

    第7章 7.1 使用简单图片 7.1.1 使用Drawable对象 7.1.2 Bitmap和BitmapFactory 7.2 绘图 7.2.1 Android绘图基础:Canvas.Paint等 ...

  4. 疯狂Android讲义 - 学习笔记(五)

    第五章 Android使用统一的Intent对象来封装“启动意图”,不管是启动Activity.Service组件.或者BroadcastReceiver等,提供了一致的编程模型.Intent设计有点 ...

  5. 疯狂Android讲义 - 学习笔记(四)

    Android应用通常有多个Activity,多个Activity组成Activity栈,当前活动的Activity位于栈顶.Activity相当于Java Web开发的Servlet.当Activi ...

  6. 疯狂Android讲义 - 学习笔记(三)

    Android的事件处理 3.1 Android提供了两套事件处理机制:基于监听的事件处理.基于回调的事件处理. 3.2 基于监听的事件处理 3.2.1 监听的处理模型  主要涉及三类对象:Event ...

  7. 疯狂Android讲义 - 学习笔记(二)

    Android应用的用户界面编程 2.1 界面编程与视图(View)组件 Android应用的绝大部分UI组件放在android.widget.android.view包及其子包中,所有UI组件都继承 ...

  8. 【疯狂Java讲义学习笔记】【流程控制与数组】

    [学习笔记]1.switch语句后的expression表达式的数据类型只能是byte.short.char.int四个整数类型.String(Java 7后才支持)和枚举类型. 2.数组的长度不可变 ...

  9. 【疯狂Java讲义学习笔记】【数据类型与运算符】

    [学习笔记]1.8bit = 1byte,4byte = 1word.Java中的整型数据有byte(1字节),short(2字节),int(4字节),long(8字节).Java中的浮点数据有flo ...

随机推荐

  1. Atitit 常见的树形结构 红黑树  二叉树   B树 B+树  Trie树 attilax理解与总结

    Atitit 常见的树形结构 红黑树  二叉树   B树 B+树  Trie树 attilax理解与总结 1.1. 树形结构-- 一对多的关系1 1.2. 树的相关术语: 1 1.3. 常见的树形结构 ...

  2. 选课数据库SQL语句练习题

    表(一)Student (学生表) 属性名 数据类型 可否为空 含 义 Sno varchar (20) 否 学号(主码) Sname varchar (20) 否 学生姓名 Ssex varchar ...

  3. ASP.NET MVC 拦截器IResultFilter

    在ASP.NET MVC中,有一个Result拦截器,实现ResultFilter需要继承一个类(System.Web.Mvc.FilterAttribute)和实现一个类(System.Web.Mv ...

  4. ui-router API

    ui-router API 英文不咋地感觉找个API都要找半天, 拿好不谢 http://angular-ui.github.io/ui-router/site/#/api/ui.router

  5. localStorage使用

    localStorage使用 需要注意的是,HTML5本地存储只能存字符串,任何格式存储的时候都会被自动转为字符串,所以读取的时候,需要自己进行类型的转换. 支持的情况如上图,IE在8.0的时候就支持 ...

  6. KnockoutJS 3.X API 第三章 计算监控属性(5) 参考手册

    计算监控属性构造参考 计算监控属性可使用以下形式进行构造: ko.computed( evaluator [, targetObject, options] ) - 这种形式是创建一个计算监控属性最常 ...

  7. java常用命令行指令

    javac 将java源文件编译成class字节码文件 javac HelloWorld.java java (1)运行class文件 java HelloWorld 注意java命令后面不要加.cl ...

  8. 大型 JavaScript 应用架构中的模式

    原文:Patterns For Large-Scale JavaScript Application Architecture by @Addy Osmani 今天我们要讨论大型 JavaScript ...

  9. 移动web开发之视口viewport

    × 目录 [1]布局视口 [2]视觉视口 [3]理想视口[4]meta标签[5]总结 前面的话 在CSS标准文档中,视口viewport被称为初始包含块.这个初始包含块是所有CSS百分比宽度推算的根源 ...

  10. Lua 学习笔记(四)语句与控制结构

    一.赋值与多重赋值      赋值的基本含义是改变一个变量的值或table中字段的值.Lua中允许“多重赋值”,也就是同时为多个值赋予多个变量,每个变量之间以逗号分隔.      Lua会先对等号右边 ...