我曾经的Android应用开发(一)

    好歹也做了一年多的移动开发,其中大部分时间是做移动中间件,也有android和iphone的,android算是断断续续做了一年吧,iphone倒是就接触了一两个月的样子。尽管现在没做了,毕竟还是很喜欢的,隔了将近一年没碰这个东西了,忘的都差不多了,这里复习一下以前的android开发知识,以后再有机会做的时候能够尽快上手。

    环境配置就不说了,新建项目后,项目有时候会出现一点问题,项目没有错误也会有感叹号或者红叉,我一般是这样解决的,

对于红叉:删除 C:\Documents and Settings\Administrator\.android\ 目录下的debug.keystore及ddms.cfg文件,如果没有找到,就在eclipse上的window->preferences->Android->Build->Default debug keystore下可以找到。

对于感叹号:点击工具栏project->clean清理一下,如果还不能解决就看BuildPath —> Configure Build Pah中有没有包引用错误之类的。这里不是很全,手上没有这类的错误,以后遇到再加上。

  先看一个Android项目的目录:


src目录:源文件目录

gen:程序自动生成的文件,R.java文件是资源索引id,一般不需要管

res/drawable:这三个文件是程序用到的图片资源,包含三个分辨率,以自适应各种分辨率的屏幕

res/layout:布局xml文件

res/values:字符串统一管理的文件,一般在程序中用到的字符串都同意存放在这个文件,尤其是中文字符串。

AndroidMainfest.xml:组件配置文件,程序中的组件都在这里进行注册

default.properties:项目环境属性

proguard.cfg:项目混淆文件


Android项目有四个核心的组件:Activity,Service,Broadcast Receiver,ContentProvider,然后还有两个重要的东西Intent和View,Intent负责四个组件的通信,View负责程序的界面显示。下面简单的介绍一下这四个组件和Intent,View的功能:

     Activity:相当于程序的屏幕,每一个Activity都是继承于Activity类,一个Activity负责显示一个View类所表示的界面,Activity类通常也是一个程序的入口,且是在AndroidManifest.xml文件中指定,下面是一个例子:

       <activity android:name=".Hello" //主函数类,继承于Activity
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

主函数类Hello是一个Activity。程序启动后就启动这个主Activity。 下面是是Hello类的定义:

public class Hello extends Activity { //继承Activity
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);//显示main所表示的View类(界面)
    }
}
Service:表示一个后台程序,没有界面,生命周期长。例如后台音乐播放程序
Broadcast Receviver:广播组件,可以定义一个接受手机电量的广播,等手机电量较低是就可以提示用户。

ContentProvider:每一个程序都属于不同的进程,ContentProvider就是提供不同进程的数据通信的,即不同应用程序共享数据是通过ContentProvider实现,例如短信应用需要用到通讯录应用的联系人信息。

View:Android的图形界面可以分为三层,底层是Activity,Activity上面是Window,Window上面是View,View是基本的控件,如按钮,菜单等都是View。

Intent:组件之间的信使,如从一个Activity跳转到另一个Activity就要通过Intent来实现,如其中一种跳转:

Intent intent = new Intent();
intent.setClass(AActivity.this, BActivity.class);
AActivity.this.startActivity(intent);
上面的代码就是从AActivity跳转到BActivity。

基本的东西貌似就这些,上面的都是回忆一些开发的基本东西,下章整理一下开发中记录在word的一些零碎的笔记吧。









展开阅读全文

没有更多推荐了,返回首页