目录
1:安卓应用程序架构
Android应用程序中的资源
http://www.cnblogs.com/mandroid/archive/2011/02/13/1953270.html
Android应用程序四大组件
http://blog.youkuaiyun.com/wbw1985/article/details/4864949
http://www.blogjava.net/pdw2009/archive/2010/07/21/265193.html
内容提供者
http://justsee.iteye.com/blog/936612
AndroidManifest.xml文件的结构
http://www.cnblogs.com/hnrainll/archive/2011/10/26/2225726.html
2:创建用户界面
2.1创建、配置和使用Activity
Activity生命周期
Activity的生命周期中onPause()方法和onSaveInstanceState(Bundle outState)方法比较
http://blog.youkuaiyun.com/chengy35/article/details/46597775
Activity之间传递方式- Intent
http://blog.youkuaiyun.com/chengy35/article/details/46598343
2.2 View
View简介
混合使用XML布局文件和代码来控制视图
2.3 定制控件Widget的3种方式
2.4 带图像的TextView
2.5 定制带文本标签的EditText
2.6 使用AlertDialog类创建对话框
AlertDialog类的简介
【确认/取消】对话框
带3个按钮的对话框
简单列表对话框
单选列表对话框
多选列表对话框
创建3种选择省份的列表对话框
http://www.cnblogs.com/Gaojiecai/archive/2011/12/10/2283156.html
2.7 进度条–水平进度对话框和圆形进度对话框
2.8 Toast和Notification
用Toast显示提示信息框
阻止关闭Toast信息框
Notification与状态栏信息
博主博客!
http://blog.youkuaiyun.com/chengy35/article/details/46401431
2.9 菜单
ActionBar 等一些新奇的东西
http://blog.youkuaiyun.com/chengy35/article/details/46757591
github上的这个开源的项目 地址为:
自己加了一些注释了的…
http://actionbarsherlock.com
http://download.youkuaiyun.com/detail/chengyangyy/8869047
3种不同的菜单,以后以这个为主!
http://blog.youkuaiyun.com/chengy35/article/details/46446629
这个可以参考!
http://www.cnblogs.com/codingmyworld/tag/Android/
Android开发完全讲义里,菜单主要分为:
选项菜单、上下文菜单和子菜单
2.10 布局
FrameLayout 框架布局
LinearLayout 现行布局
RelativeLayout
TableLayout
3 控件详解
3.1日期与时间控件
输入日期的控件 DatePicker
输入时间的控件 TimePicker
显示时钟的控件:AnalogClock 和DigitalClock
3.2列表控件
ListView
可以多选和单选的ListView
动态添加、删除ListView列表项
改变ListView列表项选中状态的背景颜色
3.3ListActivity-封装了ListView
http://blog.youkuaiyun.com/chengy35/article/details/46407319
listview大全
回头把本书中所有关于listview的代码上传!
3.4使用SimpleAdapter创建更复杂的列表项,baseAdapter
http://blog.youkuaiyun.com/shakespeare001/article/details/7926783
3.5 下拉列表控件 Spinner
3.6 标签控件? TabHost
http://www.cnblogs.com/androidez/archive/2013/02/09/2909549.html
4 移动存储解决方案
4.1 SharedPreferences
存取简单数据类型
http://blog.youkuaiyun.com/chengy35/article/details/46428375
复杂数据类型
使用base64保存
方法:
可以保存设置的Activity:PreferenceActivity
自己写的
http://blog.youkuaiyun.com/chengy35/article/details/46742181
4.2 文件存储
4.3 SQLite数据库
http://blog.youkuaiyun.com/chengy35/article/details/46449635
http://blog.youkuaiyun.com/chengy35/article/details/46446999
创建数据库和表
模糊查询
分页显示记录
事务
使用…
持久化数据库引擎(db4o)?
创建和打开数据库
向数据库插入Java对象
查询Java对象
高级数据查询
更新数据库中的Java对象
删除数据库中的Java对象
网络资源
http://blog.youkuaiyun.com/chengy35/article/details/46563195
Android服务
Service生命周期
Service怎样注册?
<service android:enabled="true" android:name=".MyService" />
Android Service
service 1 ,2
http://blog.youkuaiyun.com/chengy35/article/details/46490955
http://blog.youkuaiyun.com/chengy35/article/details/46562875
绑定Service 与Activity方法
代码,自动启动service方式和手动添加方式。
http://download.youkuaiyun.com/detail/chengyangyy/8865983
BroadCastReceiver在manifest中应该怎样注册?
<receiver android:name="StartupReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</receiver>
代码中,体现出来
package net.blogjava.mobile.startupservice;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.telephony.TelephonyManager;
public class StartupReceiver extends BroadcastReceiver
{
@Override
public void onReceive(Context context, Intent intent)
{
Intent serviceIntent = new Intent(context, MyService.class);
context.startService(serviceIntent);
Intent activityIntent = new Intent(context, MessageActivity.class);
activityIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(activityIntent);
}
}
系统服务
监听手机来电,需要获得TelephonyManager对象,则需要使用Content.TELEPHONE_SERVICE变量获得,代码如下:
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
package net.blogjava.mobile;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.telephony.PhoneStateListener;
import android.telephony.TelephonyManager;
import android.widget.Toast;
public class Main extends Activity
{
public class MyPhoneCallListener extends PhoneStateListener
{
@Override
public void onCallStateChanged(int state, String incomingNumber)
{
switch (state)
{
case TelephonyManager.CALL_STATE_OFFHOOK://通话状态
Toast.makeText(Main.this, "正在通话...", Toast.LENGTH_SHORT)
.show();
break;
case TelephonyManager.CALL_STATE_RINGING://来电状态
Toast.makeText(Main.this, incomingNumber,
Toast.LENGTH_SHORT).show();
break;
}
super.onCallStateChanged(state, incomingNumber);
}
}
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TelephonyManager tm = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
MyPhoneCallListener myPhoneCallListener = new MyPhoneCallListener();
//设置电话状态监听器
tm.listen(myPhoneCallListener, PhoneStateListener.LISTEN_CALL_STATE);
}
}
来电黑名单
如果要静音,还需要一个音频服务对象,AudioManager。
主要修改的地方如下:
public class MyPhoneCallListener extends PhoneStateListener
{
@Override
public void onCallStateChanged(int state, String incomingNumber)
{
//获得音频服务(Audiomanager对象)
AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
;
switch (state)
{
case TelephonyManager.CALL_STATE_IDLE:
//在手机空闲状态时,将手机音频设为正常状态audioManager.setRingerMode(AudioManager.RINGER_MODE_NORMAL);
break;
case TelephonyManager.CALL_STATE_RINGING:
//来电状态时,判断打电话的是否为要静音的电话号,如果是,则静音
if ("12345678".equals(incomingNumber))
{
audioManager
.setRingerMode(AudioManager.RINGER_MODE_SILENT);
}
break;
}
super.onCallStateChanged(state, incomingNumber);
}
}
时间服务
计时器chronometer
预约时间Handler
定时器Timer
介绍如下所示:
http://blog.youkuaiyun.com/chengy35/article/details/46745651
多媒体
音乐播放器
http://blog.youkuaiyun.com/chengy35/article/details/46586769
数据通信机制 AIDL
http://blog.youkuaiyun.com/chengy35/article/details/46584251
反射机制
http://blog.youkuaiyun.com/chengy35/article/details/46584223
消息处理机制
http://blog.youkuaiyun.com/chengy35/article/details/46446793
感兴趣的东西
1:黑名单
http://blog.youkuaiyun.com/chengy35/article/details/46584143
2:viewpage
http://blog.youkuaiyun.com/chengy35/article/details/46420623
3:首次使用有引导
http://blog.youkuaiyun.com/chengy35/article/details/46420485
4:pulltorefresh项目
http://blog.youkuaiyun.com/chengy35/article/details/46420189
5:闹钟!