Android简介:

1.android是一个以Liunx内核为核心的半开源移动设备操作系统
2.android是由谷歌为主导的手机开放联盟(OHA)进行维护
3.android的系统架构
3.1 Liunx内核层 c语言编写
3.2 本地库和运行时环境层 c++
3.3 应用程序框架层
3.4 应用程序层

java虚拟机与android虚拟机的区别?

1.java虚拟机基于栈结构;android虚拟机基于寄存器
2.java程序运行在同一个虚拟机中;android为每一个运行的app都设置一个虚拟机实例

android项目目录结构

src
存放android的源代码 .java文件 src下的内容与java项目中src语法一致
存放系统中自动生成的配置文件 开发者不能修改
assets 资产文件
bin 存放应用程序编译后生成的可执行文件.apk
libs 存放应用程序使用的第三方jar
android-support-v4.jar 表示向下兼容包
res
资源文件 存放应用程序中使用的所有的资源
-drawable 存放项目中所有的图片资源
为了支持不同分辨率的移动设备 “l m h xh xxh”表示由小到大不同的分辨率
-layout 存放项目中所有的布局资源
-menu 存放项目中所有的菜单资源
-values 存放字符串、颜色、尺寸、样式主题资源

res与assets的区别
res中的文件会在gen/包名/R.java文件中生成对应的资源id
assets中的文件不会生成资源id 需要通过二进制流的形式访问 io
drawable下存放的图片注意事项:

1.图片格式最好是:.jpg .png
2.图片名称不能全部是数字
3.图片名称必须都是小写字母
4.图片名称不能含有特殊字符

清单文件:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="项目构建时的包名"
    android:versionCode="表示当前app的版本号 开发人员"
    android:versionName="表示当前app的版本号 用户" >

    <uses-sdk
        android:minSdkVersion="表示当前app最低支持的sdk的版本 api说法"
        android:targetSdkVersion="表示当前app开发的目标sdk版本" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.yztc.helloworld.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>