跟我学Android之二 第一个程序
跟我学Android之二 第一个程序
一:四大核心组件
Activity(活动) 是Android应用中负责与用户交互的组件 Service(服务) Service通常位于后台运行,它一般不需要与用户交互,因此Service组件没有图形用户界面 BroadcastReceiver(广播接收器) 用于接收系统中其它组件发送的广播 ContentProvider(内容提供者) 多个应用程序之间进行实时的数据交换的前提
二:工程目录结构
Android按照用途将不同的内容分别存放在不同的目录中 src文件夹 存放开发者编写的源代码 存放导入的第三方的源代码 gen文件夹 存放系统自动生成的代码 assets文件夹 存放程序中使用的nonmedia文件 bin文件夹 存放编译生成的文件和打包文件 libs文件夹 存放第三方的jar包 res文件夹 存放布局文件、资源文件等 AndroidManifest.xml 配置文件 res文件夹主要用于存放各种资源 drawable相关文件下存放各种图片文件。 layout下存放图形用户界面的布局文件。 menu下存放菜单的布局文件。 values下存放各种数据资源,如字符串资源。
AndroidManifest.xml文件
定义了应用程序的基本信息
定义了应用程序包。
定义应用程序组件。
确定默认Activity。
确定API使用权限。
定义最小API级别。
指定引用程序库。
R.java文件
每一种资源在R类中存在一个唯一的ID R类存在与gen目录中。 一般情况下不需要修改这个类(自动生成) 。 java源代码中可是引用资源 Button btnLogin= (Button)findViewById(R.id.btnLogin); XML文件中也可以引用资源 @drawable/ic_launcher @string/app_name assets下存放nonmedia文件 不会被编译成二进制,原样保存在apk包中。 不会被映射到R类中,需要使用AssetManager类进行访问。 可以创建子目录。
创建第一个Activity
Activity是一个应用程序组件: 包含了一个可以和用户交互的显示界面 比如:拍照、发邮件、浏览地图等 每个Activity都有一个窗口 这个窗口通常是充满屏幕的 也可以比屏幕小而浮于其他窗口之上 一个Android应用程序可以包含一个或多个Activity 这些Activity之间是相对独立的 当一个Activity启动时,之前的那个Activity就停止了
创建一个Activity通常有这样几个步骤:
为这个Activity设计一个界面布局
<LinearLayout xmlns:android=";
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<TextView android:id="@+id/textview1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="我是文本控件" />
</LinearLayout>
需要创建一个Activity类的子类
必须实现onCreate()方法
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
Intent是在组件之间传递的消息
可以在同一个应用程序或者不同应用程序之间传递 这个消息是一个Intent类的对象,包含一组信息 Action——要执行的或者已发生的动作 ACTIO_CALL(字符串常量) ACTIO_MAI (字符串常量) ACTIO_SCREE_O (字符串常量) Category——指明应该处理当前intent的组件种类 CATEGORY_HOME (字符串常量) CATEGORY_LAUCHER (字符串常量)
Intent过滤器用于指定组件“愿意”接收的Intent
可以包含Intent中包含的信息所对应的过滤条件
Action
Category
在配置Activity时通常通过Intent过滤器来给定Activity的执行条件
在AndroidManifest.xml文件中配置Activity
<manifest …>
<application …>
<activity android:name=“MainActivity” android:label="@string/app_name">
<intent-filter>
<action android:name=“android.intent.action.MAI” />
<category android:name=“android.LAUCHER” />
</intent-filter>
</activity>
</application>
</manifest>
Android应用的构建过程如下:
Android应用的构建过程如下:1、使用aapt工具生成R.java文件 2、使用javac工具将.java文件编译成.class文件 4、使用dx.bat批处理将众多.class文件转换成一个.dex文件 5、使用aapt工具打包资源文件(包括res、assets、AndroidManifest.xml等) 6、生成apk安装文件 SDK目录结构如下:
add-这里面保存着附加库 docs这里面是Android SDK API参考文档 platforms是每个平台的SDK真正的文件 tools目录里面包含了重要的编译工具 platform-tools保存着一些通用工具,比如adb、和aapt、aidl、dx等文件 samples是Android SDK自带的默认示例工程 tools作为SDK根目录下的tools文件夹,这里包含了重要的工具
SDK常用包如下:
提供基本的操作服务,消息传递和进程间通信IPC。 android.graphics 作为图形渲染包,提供图形渲染功能。 android.database 包含底层API处理数据库,方便操作数据库表和数据。 提供各种服务访问数据在手机设备上,程序安装到手机设备和其他相关资源,以及内容提供展示动态数据。 android.view 核心用户界面框架。 android.widget 提供标准用户界面元素,List(列表),Butt(按钮),Layout manager(布局管理器)等,是组成我们界面的基本元素。 android.app 提供高层应用程序模型,实现使用Activity。 android.provider 提供方便调用系统提供的content providers的接口。 android.webikit 包含以系列工作在基于Web内容的API。
DDMS 的全称是Dalvik Debug Monitor Service
为测试设备截屏 查看特定进程的线程及堆信息 Logcat窗口 广播状态信息 模拟电话呼叫 收发SMS 虚拟地理坐标
Emulator Control可以用于模拟控制
模拟拨打和接听电话 模拟息收发 模拟地理坐标位置
Logcat窗体提供了应用运行中的日志输出与查询过滤 可以输出设备的所有输出信息 如果是真机,需要打开bebug模式 支持日志级别 支持过滤查询
Android 中的日志工具类是Log( android.util.Log),这个类中提供了如下几个方法来供我们打印日志 Log.v() 打印那些最为琐碎的,意义最小的日志信息 Log.d() 打印一些调试信息 Log.i() 用于打印一些比较重要的数据 Log.w() 用于打印一些警告信息 () 用于打印程序中的错误信息 设置过滤器
#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格
下一篇:跟我学Android之一 概述
推荐阅读
留言与评论(共有 9 条评论) |
本站网友 武汉房产网 | 24分钟前 发表 |
layout下存放图形用户界面的布局文件 | |
本站网友 推网 | 17分钟前 发表 |
需要打开bebug模式 支持日志级别 支持过滤查询 跟我学Android之二 第一个程序_Log.Cat_05 Android 中的日志工具类是Log( android.util.Log) | |
本站网友 龙行天下第3部全集 | 0秒前 发表 |
是组成我们界面的基本元素 | |
本站网友 黑锅 | 27分钟前 发表 |
原始发表:2022-04-06 | |
本站网友 ico图标下载 | 3分钟前 发表 |
android.view 核心用户界面框架 | |
本站网友 上海市酒店 | 19分钟前 发表 |
menu下存放菜单的布局文件 | |
本站网友 青春健康网 | 16分钟前 发表 |
提供各种服务访问数据在手机设备上 | |
本站网友 别墅设计图纸及效果图大全免费下载 | 28分钟前 发表 |
意义最小的日志信息 Log.d() 打印一些调试信息 Log.i() 用于打印一些比较重要的数据 Log.w() 用于打印一些警告信息 () 用于打印程序中的错误信息 设置过滤器 跟我学Android之二 第一个程序_Log.Cat_06本文参与 腾讯云自媒体同步曝光计划 |