`
凌紫冥
  • 浏览: 25648 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

传智播客Android视频教程——第一天

 
阅读更多
传智播客Android视频教程——第一天

2012-03-27

昨天找到了这个教程,大概浏览了一下,感觉讲的不错,就决定把这个教程系统的看一遍。说的是8天每天6小时的课程,但感觉我每天能有3个小时就不错了,所以预估下时间延长一倍了,16天。

Android自带浏览器:webkit

把铃声放入模拟器的sd卡中,在file explorer中可以。
Data:存放软件产生的数据。
Mnt:映射外部的设备
sdcard:sd卡
System:存放android系统的文件

Eclipse中window的模拟器控制器emulator control
模拟手机的操作,例如:打电话

Application  name:出现在软件图标下面
包名作为唯一标识
Activity可以理解为窗口,可以摆放布局,接受用户输入事件。

Min sdk version:不输入,可以在任何版本中运行。指定的话,在特定版本上运行。

如果eclipse报错的时候,可以试试打开任意文件编辑一下,保存,是否可以消除报错。

Console打印出软件安装信息

可以用tools中的adb.exe来安装软件,一般用于没有开发环境的情况下。
安装:adb install c:\it.apk
卸载:adb uninstall(应用的包名) 例:adb uninstall cn.it.phone


项目的目录结构与安装及启动过程分析
src:java源文件
gen:开发工具自动创建,R.java:登记各种资源的id,通过id可以引用资源。程序员不能维护R.java文件。
res:存放资源
drawable:存放图片,hdpi、ldpi、mdpi适配不同的屏幕分辨率,同一张图片,不同分辨率都做一张,android系统根据目前手机的分辨率,在对应的文件夹找到对应的图片,这个是操作系统自动完成的。
layout:存放界面布局文件,类似于jsp或HTML功能。
values:应用中用到的字符串、尺寸、颜色都可以放在strings.xml中,最重要的作用,国际化。同时也可以减少相同的文字资源对内存的占用。如果应用中用到的文字很多,可以分散的放到values下其他的xml文件中,便于管理。Layout也是一样。

开发工具没有自动创建出来的文件夹:
Res/anim/:存放定义动画的xml文件。
Res/xml/:在activity中使用getResource().getXML()读取该目录下的XML资源文件。
Res/raw/:用于存放应用使用到的原始文件,如音效文件等。编译软件时,这些数据不会被编译,它们被直接加入到程序安装包里。为了在程序中使用这些资源,可以调用getResource().openRawResource(ID),参数ID形式:R.raw.somefilename。

assets:也可以存放资源文件,往这个文件中放入文件,不会在R.java中自动生成ID。读取assets目录下的文件必须指定文件的路径,如:file:///android_asset/xxx.3gp。

AndroidManifest.xml:项目清单文件,列出了应用所提供的功能、系统自带的服务需要在此文件中声明使用权限(如电话服务、互联网服务、短信服务、GPS服务等等),组件需要在这配置(Activity、ContentProvider、BroadcastReceiver、Service)。

activity标签中android:name如果类是直接在包中,点可以省略。但是在子包中,点是不可以省略的。
<intent-filter>:意图过滤器,匹配意图的。Action,动作名称。Category,类别。
希望程序出现在启动列表中,需要在程序入口Activity中定义下面的参数:
android.intent.action.MAIN
android.intent.category.LAUNCHER
一般这两个参数配合使用,作用是使程序图标出现在启动列表中。只能用在一个Activity中,因为一个程序只能有一个程序入口。

清单文件是在软件安装的时候被操作系统读取的,不是在运行时读取的。

default.properties:开发工具使用的,项目环境信息,一般是不需要修改此文件的。

小建议:开发编译文件时,一般不打开R.java文件,有可能会影响eclipse。

安装过程:
.java.classdx.dex打包(.dex和资源文件打包成一个压缩文件,并进行签名,密钥进行签名).apk
adb install c:\xxx.apk
证书默认在build下

启动过程:
点击图标,第一次打开应用,创建一个进程(也可以叫任务),再开一条线程(主线程),系统找到对应的activity,在主线程中实例化activity(操作系统会把应用有关的信息(context)存放进activity),调用onCreate()方法(生命周期中只会被调用一次,便于生命周期的管理,父类的onCreate()也要调用,删掉会出错),显示控件,然后放在任务栈中。

xml中顶级元素一定要声明命名空间。

Android中的显示单位:
px(pixels)像素:一般HVGA代表320*480像素,这个用的比较多。
dip或dp(device independent pixels)设备独立像素:这个和设备硬件有关,一般为了支持WVGA、HVAG和QVGA推荐使用这个,不依赖像素。
sp(scaled pixels——best for text size)比例像素:主要处理字体的大小,可以根据系统的字体自适应。
除了上面三个显示单位,还有几个不太常用的:
in(inches)英寸
inm(millimeters)毫米
pt(points)点,1/72英寸
为了适应不同分辨率,不同的像素密度,推荐使用dip,文字使用sp。

match_parent等价于fill_parent,match_parent是android2.1之后推出来的,理由是感觉match比fill语义要好些。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics