安卓打开应用程序
打开设置主界面
Intent intent = new Intent(android.provider.Settings.ACTION_SETTINGS); //系统设置
startActivityForResult( intent , 0);
打开网络设置界面(其他设置中的界面同理)
Intent intent = new Intent(android.provider.Settings.ACTION_WIFI_SETTINGS);//WIFI设置
startActivity(intent);
Intent intent = new Intent(android.provider.Settings.ACTION_APPLICATION_SETTINGS);//管理应用程序界面
context.startActivity(intent);
或者用以下方法(3.0以前的版本可以用此方法)
Intent intent = new Intent("/");
ComponentName cm = new ComponentName("com.android.settings", "com.android.settings.WirelessSettings");
intent.setComponent(cm);
intent.setAction("android.intent.action.VIEW");
startActivityForResult( intent , 0);
打开壁纸设置
Intent intent = new Intent(Intent.ACTION_SET_WALLPAPER);
startActivity(intent);
打开拨号界面
Intent intent = new Intent(Intent.ACTION_DIAL);
startActivity(intent);
打开联系人界面
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setType("vnd.android.cursor.dir/contact");
startActivity(intent);
打开通话记录
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setType("vnd.android.cursor.dir/calls");
startActivity(intent);
打开短信列表界面
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_DEFAULT);
intent.setType("vnd.android-dir/mms-sms");
startActivity(intent);
安卓音效代码
SoundPool soundPool;
int click;
soundPool = new SoundPool(3, AudioManager.STREAM_MUSIC, 0);
click = soundPool.load(GridViewTest.this, R.raw.click6, 1);
soundPool.play(click, 1, 1, 0, 0, 1);
创建对话框
final Builder builder = new AlertDialog.Builder(this);
// 为按钮绑定事件监听器
// 设置对话框的图标
builder.setIcon(R.drawable.icon);
// 设置对话框的标题
builder.setTitle("请您验证管理员信息");
// 装载/res/layout/login.xml界面布局
final TableLayout loginForm = (TableLayout) getLayoutInflater()
.inflate(R.layout.activity_super, null);
// 设置对话框显示的View对象
builder.setView(loginForm);
// 为对话框设置一个“确定”按钮
builder.setPositiveButton("验证"
// 为按钮设置监听器
, new OnClickListener()
{
@Override
public void onClick(DialogInterface dialog, int which)
{
// 为对话框设置一个“取消”按钮
builder.setNegativeButton("取消", new OnClickListener()
{
@Override
public void onClick(DialogInterface dialog, int which)
{
}
});
// 创建、并显示对话框
builder.create().show();
}
打开网页
Uri uri = Uri.parse("http://www.baidu.com");
Intent it = new Intent(Intent.ACTION_VIEW, uri);
startActivity(it);
单选对话框
oncreate()方法中:showDialog(SINGLE_DIALOG);
@Override
public Dialog onCreateDialog(int id, Bundle state)
{
// 判断需要生成哪种类型的对话框
switch (id)
{
case SINGLE_DIALOG:
Builder b = new AlertDialog.Builder(this);
// 设置对话框的图标
b.setIcon(R.drawable.icon);
// 设置对话框的标题
b.setTitle("请选择您要执行的操作");
// 为对话框设置多个列表
b.setItems(new String[] { "开始",,
}
// 为列表项的单击事件设置监听器
, new OnClickListener()
{
@Override
public void onClick(DialogInterface dialog, int which)
{
// which代表哪个列表项被单击了
switch (which)
{
case 0:
MyActivityManager.exit();
break;
}
}
});
// 添加一个“确定”按钮,用于关闭该对话框
return b.create();
}
return null;
}
动画代码
final Animation anim1 = AnimationUtils.loadAnimation(this,
R.anim.xuanzhuan);
final Handler myHandler = new Handler()
{
@Override
public void handleMessage(Message msg)
{
// 如果该消息是本程序所发送的
if (msg.what == 0x1233)
{
// 动态地修改所显示的图片
text.startAnimation(anim2);
if (currentImageId >= imageIds.length)
{
currentImageId = 0;
}
}
}
};
// 定义一个计时器,让该计时器周期性地执行指定任务
new Timer().schedule(new TimerTask()
{
@Override
public void run()
{
// 新启动的线程无法访问该Activity里的组件
// 所以需要通过Handler发送信息
Message msg = new Message();
msg.what = 0x1233;
// 发送消息
myHandler.sendMessage(msg);
}
}, 0, 2000);
键盘消失
InputMethodManager imm = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(v.getWindowToken(), 0);
截屏代码
String time = null;
public void shareScreenshot()
{
time = "rival_" + DateUtils.getTimeNow();
shot();
new Thread(new Runnable()
{
public void run()
{
Intent intent = new Intent("android.intent.action.SEND");
intent.setType("image/*");
intent.putExtra(Intent.EXTRA_SUBJECT, "分享");
intent.putExtra(Intent.EXTRA_TEXT,
"我正在使用应用,赶快分享给大家吧!");
intent.putExtra(Intent.EXTRA_STREAM,
Uri.fromFile(new File(Constant.path + time + ".png")));
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
LoginActivity.this.startActivity(Intent.createChooser(intent,
"分享"));
}
}).start();
}
// 分享图标
public void shareIcon()
{
time = "rival_" + DateUtils.getTimeNow();
FileUtils.savePic(
BitmapFactory.decodeResource(getResources(), R.drawable.icon),
time);
new Thread(new Runnable()
{
public void run()
{
Intent intent = new Intent("android.intent.action.SEND");
intent.setType("image/*");
intent.putExtra(Intent.EXTRA_SUBJECT, "分享");
intent.putExtra(Intent.EXTRA_TEXT,
"我正在使用应用,赶快分享给大家吧!");
intent.putExtra(Intent.EXTRA_STREAM,
Uri.fromFile(new File(Constant.path + time + ".png")));
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
LoginActivity.this.startActivity(Intent.createChooser(intent,
"分享"));
}
}).start();
}
/**
* 截屏方法
*
* @return
*/
private Bitmap shot()
{
View view = getWindow().getDecorView();
Display display = this.getWindowManager().getDefaultDisplay();
view.layout(0, 0, display.getWidth(), display.getHeight());
view.setDrawingCacheEnabled(true);// 允许当前窗口保存缓存信息,这样getDrawingCache()方法才会返回一个Bitmap
Bitmap bmp = Bitmap.createBitmap(view.getDrawingCache());
view.destroyDrawingCache();
FileUtils.savePic(bmp, time);
return bmp;
}
进度条
ProgressDialog progressDialog;
progressDialog = ProgressDialog.show(
UserDeleteActivity.this, "正在注销", "请您稍后...",
false, true);
new Thread(new Runnable()
{
public void run()
{
try
{
Looper.prepare();
Message msg = new Message();
msg.arg1 = 0;
myhandler.sendMessage(msg);
}
else
{
Message msg = new Message();
msg.arg1 = 1;
myhandler.sendMessage(msg);
}
connection.close();
}
catch (Exception e)
{
Message msg = new Message();
msg.arg1 = 2;
myhandler.sendMessage(msg);
}
finally
{
progressDialog.dismiss();
}
}
}).start();
Handler myhandler = new Handler()
{
@Override
public void handleMessage(Message msg)
{
super.handleMessage(msg);
if (msg.arg1 == 0)
{
progressDialog.dismiss();
}
else if (msg.arg1 == 1)
{
progressDialog.dismiss();
Toast.LENGTH_SHORT).show();
}
else if (msg.arg1 == 2)
{
progressDialog.dismiss();
}
}
};
快捷方式
Intent addIntent = new Intent(
"com.android.launcher.action.INSTALL_SHORTCUT");
String title = getResources().getString(R.string.app_name);
// 加载快捷方式的图标
Parcelable icon = Intent.ShortcutIconResource.fromContext(
LoginActivity.this, R.drawable.icon);
// 创建点击快捷方式后操作Intent,该处当点击创建的快捷方式后,再次启动该程序
Intent myIntent = new Intent(LoginActivity.this,
com.nuc.smartcloud.extra.SplashscreenActivity.class);
// 设置快捷方式的标题
addIntent.putExtra(Intent.EXTRA_SHORTCUT_NAME, title);
// 设置快捷方式的图标
addIntent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, icon);
// 设置快捷方式对应的Intent
addIntent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, myIntent);
// 发送广播添加快捷方式
sendBroadcast(addIntent);
权限设置
<!-- 添加操作闪光灯的权限 -->
<uses-permission android:name="android.permission.FLASHLIGHT" />
<!-- 添加操作振动器的权限 -->
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
<uses-permission android:name="android.permission.RECEIVE_SMS" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<!-- <uses-permission android:name="android.permission.GET_TASKS" /> -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="com.android.browser.permission.READ_HISTORY_BOOKMARKS" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.FLASHLIGHT" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<!-- Wifi related -->
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
闪屏动画
public class SplashscreenActivity extends Activity
{
private boolean isInit = false;
SharedPreferences preferences;
@Override
protected void onCreate(Bundle savedInstanceState)
{
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.view_spalshscreen);
isInit = true; // 初始化完毕
new Monitor().start(); // 开启监听线程
}
private Handler mHandler = new Handler()
{
public void handleMessage(Message msg)
{
startActivity(new Intent(SplashscreenActivity.this, LoginActivity.class));
finish();
}
};
private class Monitor extends Thread
{
@Override
public void run()
{
boolean isRun = true;
while(isRun)
{
try
{
Thread.sleep(3000);
}
catch (InterruptedException e)
{
e.printStackTrace();
}
if (isInit) // 如果初始化完毕,开始进入应用
{
isRun = false;
mHandler.sendMessage(new Message());
}
}
}
}
}
设置界面无标题
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
手机联网状态
public static int getAPNType(Context context)
{
int netType = -1;
ConnectivityManager connMgr = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = connMgr.getActiveNetworkInfo();
if (networkInfo == null)
{
return netType;
}
int nType = networkInfo.getType();
if (nType == ConnectivityManager.TYPE_MOBILE)
{
Log.e("networkInfo.getExtraInfo()",
"networkInfo.getExtraInfo() is "
+ networkInfo.getExtraInfo());
if (networkInfo.getExtraInfo().toLowerCase().equals("cmnet"))
{
netType = 0;
}
else
{
netType = 1;
}
}
else if (nType == ConnectivityManager.TYPE_WIFI)
{
netType = 2;
}
return netType;
}
添加菜单
final int FONT_8 = 0x110;
final int FONT_10 = 0x111;
final int FONT_12 = 0x112;
final int FONT_14 = 0x113;
@Override
public boolean onCreateOptionsMenu(Menu menu)
{
// -------------向menu中添加字体大小的子菜单-------------
menu.add(0, FONT_12, 0, "操作一");
menu.add(0, FONT_14, 0, "操作二");
menu.add(0, FONT_16, 0, "操作三");
menu.add(0, FONT_18, 0, "操作四");
return super.onCreateOptionsMenu(menu);
}
@Override
// 菜单项被单击后的回调方法
public boolean onOptionsItemSelected(MenuItem mi)
{
// 判断单击的是哪个菜单项,并针对性的作出响应。
switch (mi.getItemId())
{
case FONT_12:
break;
case FONT_14:
break;
case FONT_16:
break;
case FONT_18:
break;
}
return true;
}
退出代码
@Override
public boolean onKeyDown(int keyCode, KeyEvent event)
{
// 按下键盘上返回按钮
if (keyCode == KeyEvent.KEYCODE_BACK)
{
new AlertDialog.Builder(this)
// .setTitle("Message Box")
.setMessage("您确定要退出应用吗?")
.setNegativeButton("取消",
new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dialog,
int which)
{
}
})
.setPositiveButton("确定",
new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dialog,
int whichButton)
{
MyActivityManager.exit();
}
}).show();
return true;
}
else
{
return super.onKeyDown(keyCode, event);
}
}
颜色代码
1 白色 #FFFFFF 2 红色 #FF0000 3 绿色 #00FF00 4 蓝色 #0000FF
5 牡丹红 #FF00FF 6 青色 #00FFFF 7 黄色 #FFFF00 8 黑色 #000000
9 海蓝 #70DB93 10 巧克力色 #5C3317 11 蓝紫色 #9F5F9F
12 黄铜色 #B5A642 13 亮金色 #D9D919 14 棕色 #A67D3D
15 青铜色 #8C7853 16 2号青铜色 #A67D3D 17 士官服蓝色 #5F9F9F
18 冷铜色 #D98719 19 铜色 #B87333 20 珊瑚红 #FF7F00
21 紫蓝色 #42426F 22 深棕 #5C4033 23 深绿 #2F4F2F
24 深铜绿色 #4A766E 25 深橄榄绿 #4F4F2F 26 深兰花色 #9932CD
27 深紫色 #871F78 28 深石板蓝 #6B238E 29 深铅灰色 #2F4F4F
30 深棕褐色 #97694F 32 深绿松石色 #7093DB 33 暗木色 #855E42
34 淡灰色 #545454 35 土灰玫瑰红色#856363 36 长石色 #D19275
37 火砖色 #8E2323 38 森林绿 #238E23 39 金色 #CD7F32
40 鲜黄色 #DBDB70 41 灰色 #C0C0C0 42 铜绿色 #527F76
43 青黄色 #93DB70 44 猎人绿 #215E21 45 印度红 #4E2F2F
46 土黄色 #9F9F5F 47 浅蓝色 #C0D9D9 48 浅灰色 #A8A8A8
49 浅钢蓝色 #8F8FBD 59 浅木色 #E9C2A6 60 石灰绿色 #32CD32
61 桔黄色 #E47833 62 褐红色 #8E236B
音乐控制
AssetManager am = getAssets();
AssetFileDescriptor afd = null;
try
{
afd = am.openFd("music2.mp3");
}
catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
mplayer = new MediaPlayer();
try
{
mplayer.setDataSource(afd.getFileDescriptor(),
afd.getStartOffset(), afd.getLength());
}
catch (IllegalArgumentException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
catch (IllegalStateException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
try
{
mplayer.prepare();
}
catch (IllegalStateException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
;
mplayer.start();
mplayer.setLooping(true);
isPlaying = true;
@Override
protected void onPause()
{
if (isPlaying)
{
mplayer.stop();
}
super.onPause();
}
@Override
protected void onResume()
{
mplayer.start();
super.onResume();
}
注册Activity
< activity
android: name = "com.nuc.smartcloud.main.ManagertoClearActivity"
android: screenOrientation = "portrait" >
< / activity >
Android monkey用法
adb shell monkey --pct-touch 20 --pct-motion 20 --pct-majornav 10 --pct-appswitch 40 --pct-anyevent 10 --ignore-crashes --ignore-timeouts --ignore-security-exceptions -p your.packagename --throttle 1000 -v 8700