六、 安装新的apk
/**
* 安装apk
* @param file
*/
private void install(File file){
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.fromFile(file), "application/vnd.android.package-archive");
finish();
startActivity(intent);
}
激活系统的安装的组件 intent();
设置数据 和数据的类型
setDataAndType();
setData();
setType();
详细关于Android中打开各种文件的intent:
http://blog.csdn.net/dawanganban/article/details/11265363
七. 对话框 创建 AlertDialog.buidler
builder.create().show();
八. Handler message 子线程里面通知主线程ui更新
private Handler handler = new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
// 判断服务器版本号 和客户端的版本号 是否相同
if (isNeedUpdate(versiontext)) {
Log.i(TAG, "弹出来升级对话框");
showUpdataDialog();
}
}
};
// 让当前的activity延时两秒钟 检查更新
new Thread(){
@Override
public void run() {
super.run();
try {
sleep(2000);
handler.sendEmptyMessage(0);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}.start();
九、 GridView ListViewadapter - > BaseAdapter
十、.Xml ->定义一个背景颜色 shape (参考api文件)
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<stroke
android:width="0.5dip"
android:color="#ff505050" />
<corners android:radius="2dip" >
</corners>
<gradient android:startColor="#ff404040"
android:centerColor="#ff383838"
android:endColor="#ff404040"
/>
</shape>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http......
<corners........ 定义几何图形的弧度
<gradient...... 定义使用渐变颜色填充
<padding..... 定义几何形状的内边距
<size...... 定义几何形状大小
<solid...... 定义使用单色填充
<stroke...... 定义为几何形状绘制边框
十一、Xml -> selector 颜色选择器 根据当前控件的状态显示不同颜色.
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/button_background" android:state_enabled="true" android:state_window_focused="false"/>
<item android:drawable="@drawable/button_background_selected" android:state_pressed="true"/>
<item android:drawable="@drawable/button_background" android:state_focused="true"/>
<item android:drawable="@drawable/button_background"/>
</selector>
十二、.Sharedpreference 的使用
SharedPreference是Android提供的一种轻量级的数据存储方式,主要用来存储一些简单的配置信息,例如,默认欢迎语,登录用户名和密码等。其以键值对的方式存储,使得我们能很方便进行读取和存入。
SharedPreference 文件保存在/data/data/<package name>/shared_prefs 路径下(如/data/data/com.android.alarmclock/shared_prefs/com.android.text_preferences.xml),通过cat命令可以查看文件,如:
通过Activity自带的getSharedPreferences方法,可以得到SharedPreferences对象。
public abstract SharedPreferences getSharedPreferences (String name, int mode);
name:表示保存后 xml 文件的名称
mode:表示 xml 文档的操作权限模式(私有,可读,可写),使用0或者MODE_PRIVATE作为默认的操作权限模式。
1.数据读取:
通过SharedPreferences对象的键key可以获取到对应key的键值。对于不同类型的键值有不同的函数:getBoolean,getInt,getFloat,getLong.
public abstract String getString (String key, String defValue);
2.数据存入:
数据的存入是通过SharedPreferences对象的编辑器对象Editor来实现的。通过编辑器函数设置键值,然后调用commit()提交设置,写入xml文件。
public abstract SharedPreferences.Editor edit ();
public abstract SharedPreferences.Editor putString (String key, String value);
public abstract boolean commit ();
-
<?xmlversion="1.0"encoding="utf-8"?>
-
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
-
android:orientation="vertical"
-
android:layout_width="fill_parent"
-
android:layout_height="fill_parent">
-
-
<TextView
-
android:id="@+id/textview"
-
android:layout_width="fill_parent"
-
android:layout_height="wrap_content"
-
android:text="@string/hello"/>
-
-
</LinearLayout>
-
packagecom.android.test;
-
importandroid.app.Activity;
-
importandroid.content.SharedPreferences;
-
importandroid.os.Bundle;
-
importandroid.preference.PreferenceManager;
-
importandroid.widget.TextView;
-
publicclassTestSharedPreferencesextendsActivity{
-
-
@Override
-
publicvoidonCreate(BundlesavedInstanceState){
-
super.onCreate(savedInstanceState);
-
setContentView(R.layout.main);
-
-
SharedPreferencesmSharedPreferences=getSharedPreferences("TestSharedPreferences",0);
-
-
-
intcounter=mSharedPreferences.getInt("counter",0);
-
-
TextViewmTextView=(TextView)findViewById(R.id.textview);
-
mTextView.setText("Thisapphasbeenstarted"+counter+"times.");
-
-
SharedPreferences.EditormEditor=mSharedPreferences.edit();
-
mEditor.putInt("counter",++counter);
-
mEditor.commit();
-
-
}
-
}
说明:
- SharedPreferences的获取有两种方法:一是上面提到的通过Activity自带(本质来讲是Context的)的getSharedPreferences方法,可以得到SharedPreferences对象。这种方法的好处是可以指定保存的xml文件名。另一种是通过PreferenceManager.getSharedPreferences(Context)获取SharedPreferences对象。这种方法不能指定保存的xml文件名,文件名使用默认的:<package
name>+"_preferences.xml"的形式,不过如果在一个包里面采用这种方式需要保存多个这样的xml文件,可能会乱掉。建议采用第一种指定xml文件名的形式。
- 数据的存入必须通过SharedPreferences对象的编辑器对象Editor来实现,存入(put)之后与写入数据库类似一定要commit。
十三、自定义对话框的写法
定义一个样式文件 重写了系统的一些默认配置
name="android:windowBackground">@drawable/title_background
name="android:windowNoTitle">true</item>
十四.Md5的编码和加密 (不可逆的加密算法)
package cn.itcast.mobilesafe.util;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class MD5Encoder {
public static String encode(String pwd) {
try {
MessageDigest digest = MessageDigest.getInstance("MD5");
byte[] bytes = digest.digest(pwd.getBytes());
StringBuffer sb = new StringBuffer();
for(int i = 0;i<bytes.length;i++){
String s = Integer.toHexString(0xff&bytes[i]);
if(s.length()==1){
sb.append("0"+s);
}else{
sb.append(s);
}
}
return sb.toString();
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
throw new RuntimeException("buhuifasheng");
}
}
}
十五.style的使用
十六.更改activity切换的动画效果
overridePendingTransition(R.anim.alpha_in,R.anim.alpha_out);
Activity的切换动画指的是从一个activity跳转到另外一个activity时的动画。
它包括两个部分:
一部分是第一个activity退出时的动画;
另外一部分时第二个activity进入时的动画;
在Android的2.0版本之后,有了一个函数来帮我们实现这个动画。这个函数就是YoverridePendingTransition
j这个函数有两个参数,一个参数是第一个activity退出时的动画,另外一个参数则是第二个activity进入时的动画。
这里需要特别说明的是,关于overridePendingTransition这个函数,有两点需要主意
1.它必需紧挨着startActivity()或者finish()函数之后调用"
````2.它只在android2.0以及以上版本上适用
常见的效果:
淡入淡出效果
overridePendingTransition(R.anim.fade, R.anim.hold);
放大淡出效果
overridePendingTransition(R.anim.my_scale_action,R.anim.my_alpha_action);
转动淡出效果
overridePendingTransition(R.anim.scale_rotate,R.anim.my_alpha_action);
转动淡出效果
overridePendingTransition(R.anim.scale_translate_rotate,R.anim.my_alpha_action);
左上角展开淡出效果
overridePendingTransition(R.anim.scale_translate,R.anim.my_alpha_action);
压缩变小淡出效果
overridePendingTransition(R.anim.hyperspace_in,R.anim.hyperspace_out);
右往左推出效果
overridePendingTransition(R.anim.push_left_in,R.anim.push_left_out);
下往上推出效果
overridePendingTransition(R.anim.push_up_in,R.anim.push_up_out);
左右交错效果
overridePendingTransition(R.anim.slide_left,R.anim.slide_right);
放大淡出效果
overridePendingTransition(R.anim.wave_scale,R.anim.my_alpha_action);
缩小效果
overridePendingTransition(R.anim.zoom_enter,R.anim.zoom_exit);
上下交错效果
overridePendingTransition(R.anim.slide_up_in,R.anim.slide_down_out);
十七.获取新打开的activity的返回值
StartactivityforResult();
SetResultData();
OnActivityResult();
十八.DeviceAdmin的技术 2.2版本支持 ->wipedata() setpwd();
不能直接被卸载 在设备管理器里面取消激活
十九 .checkbox的状态 状态变更的监听器
二十、.gps 单态类 , gps wifi 基站
获取系统服务LOCATION_SERVICE->locationManager
记得把权限加到清单文件
二十一 .广播接受者
有序广播 ->1.一般的有序广播 abortbroadcast() (-1000~1000)
2.指定了接受者的有序广播setResult();
无序的广播
二十二. 短信内容的处理
Object[] pdus = (Object[])intent.getExtras().get("pdus");
分享到:
相关推荐
Android手机卫士系列的源代码,详细请看手机卫士系列:http://blog.csdn.net/dawanganban/article/category/1562079
Android项目实战——手机安全卫士开发案例解析的word 电子书
Android项目实战——手机安全卫士开发案例解析 随书代码文件
教程名称:手机安全卫士项目开发视频课程目录:【】手机安全卫士_day1【】手机安全卫士_day2【】手机安全卫士_day3【】手机安全卫士_day4【】手机安全卫士_day5【】手机安全卫士_day6【】手机安全卫士_day7【】手机...
Android手机卫士系列的源代码,详细请看手机卫士系列:http://blog.csdn.net/dawanganban/article/category/1562079
移动互联应用开发系列·Android项目实战:手机安全卫士开发案例解析 本源码通过对一款手机安全卫士开发案例的详细解析,讲解了一个完整的Android实际项目的开发过程。该项目涵盖了市场上主流手机卫士的主要功能,...
Android项目实战——手机安全卫士开发案例解析 用于在Eclipse开发环境中关联和查看Android 框架中的源代码事件
《Android项目实战:手机安全卫士开发案例解析》通过对一款手机安全卫士开发案例的详细解析,讲解了一个完整的Android实际项目的开发过程。该项目涵盖了市场上主流手机卫士的主要功能,同时,该项目也是对Android...
Android手机卫士系列的源代码,详细请看手机卫士系列:http://blog.csdn.net/dawanganban/article/category/1562079
安卓Android源码——【手机安全卫士】连接服务器获取更新信息.zip
基于Android的手机安全卫士的设计与开发.docx基于Android的手机安全卫士的设计与开发.docx基于Android的手机安全卫士的设计与开发.docx基于Android的手机安全卫士的设计与开发.docx基于Android的手机安全卫士的设计...
手机安全卫士开发案例解析(源码),手机安全卫士开发案例解析(源码)
安卓Android源码——【手机安全卫士02】连接服务器获取更新信息.rar
Android项目实战 手机安全卫士.part2 由于上传限制,此书籍采用分卷压缩,需要与 Android项目实战 手机安全卫士.part1一起才能正常解压使用
Android源码——安全卫士源码.7z
android手机安全卫士。本案列涵盖了当前主流的android开发技术,并有手机防盗、通讯卫士、软件管家、手机杀毒、缓存清除、流量统计、高级工具、设置中心9大功能模块。
手机卫士 ## 项目介绍 ## > 演示功能有: - 启动页面 - 主页 - 手机防盗(注意:演示时模拟器要提前设置有联系人); - 通讯卫士:黑名单的管理:电话拦截、短信拦截的演示; - 软件管理:列出系统的所有软件,...
安卓Android源码——安卓手机安全卫士更新版.zip