Android常用代码集合
这篇文章主要记录一些常用的一些代码段,方便以后查阅,不断更新中。
1:调用浏览器,载入某网址
|
1 2 3 |
Uri uri = Uri.parse("http://www.android-study.com"); Intent it = new Intent(Intent.ACTION_VIEW, uri); startActivity(it); |
2:Broadcast接收系统广播的intent监控应用程序包的安装、删除
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
public class getBroadcast extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { if (Intent.ACTION_PACKAGE_ADDED.equals(intent.getAction())) { Toast.makeText(context, "有应用被添加", Toast.LENGTH_LONG).show(); } else if (Intent.ACTION_PACKAGE_REMOVED.equals(intent.getAction())) { Toast.makeText(context, "有应用被删除", Toast.LENGTH_LONG).show(); } else if (Intent.ACTION_PACKAGE_REPLACED.equals(intent.getAction())) { Toast.makeText(context, "有应用被替换", Toast.LENGTH_LONG).show(); } else if (Intent.ACTION_CAMERA_BUTTON.equals(intent.getAction())) { Toast.makeText(context, "按键", Toast.LENGTH_LONG).show(); } } } |
需要声明的权限如下AndroidManifest.xml
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="zy.Broadcast" android:versionCode="1" android:versionName="1.0"> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".Broadcast" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <receiver android:name="getBroadcast" android:enabled="true"> <intent-filter> <action android:name="android.intent.action.PACKAGE_ADDED"></action> <!-- <action android:name="android.intent.action.PACKAGE_CHANGED"></action> --> <action android:name="android.intent.action.PACKAGE_REMOVED"></action> <action android:name="android.intent.action.PACKAGE_REPLACED"></action> <!-- <action android:name="android.intent.action.PACKAGE_RESTARTED"></action> --> <!-- <action android:name="android.intent.action.PACKAGE_INSTALL"></action> --> <action android:name="android.intent.action.CAMERA_BUTTON"></action> <data android:scheme="package"></data> </intent-filter> </receiver> </application> <uses-sdk android:minSdkVersion="3" /> </manifest> |
3:使用Toast输出一个字符串
|
1 2 3 |
public void DisplayToast(String str) { Toast.makeText(this,str,Toast.LENGTH_SHORT).show(); } |
4:把一个字符串写进文件
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
public void writefile(String str, String path) { File file; FileOutputStream out; try { // 创建文件 file = new File(path); file.createNewFile(); //打开文件file的OutputStream out = new FileOutputStream(file); String infoToWrite = str; //将字符串转换成byte数组写入文件 out.write(infoToWrite.getBytes()); //关闭文件file的OutputStream out.close(); } catch (IOException e) { // 将出错信息打印到Logcat DisplayToast(e.toString()); } } |
5:把文件内容读出到一个字符串
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
public String getinfo(String path) { File file; String str=""; FileInputStream in; try { //打开文件file的InputStream file = new File(path); in = new FileInputStream(file); //将文件内容全部读入到byte数组 int length = (int)file.length(); byte[] temp = new byte[length]; in.read(temp, 0, length); //将byte数组用UTF-8编码并存入display字符串中 str = EncodingUtils.getString(temp,TEXT_ENCODING); //关闭文件file的InputStream in.close(); } catch (IOException e) { DisplayToast(e.toString()); } return str; } |
6:调用Androidinstaller安装和卸载程序
|
1 2 3 4 5 6 7 |
Intent intent = new Intent(Intent.ACTION_VIEW); intent.setDataAndType(Uri.fromFile(new File("/sdcard/WorldCupTimer.apk")), "application/vnd.android.package-archive"); startActivity(intent); //安装 程序 Uri packageURI = Uri.parse("package:zy.dnh"); Intent uninstallIntent = new Intent(Intent.ACTION_DELETE, packageURI); startActivity(uninstallIntent);//正常卸载程序 |
7:结束某个进程
|
1 |
activityManager.restartPackage(packageName); |
8:设置默认来电铃声
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
public void setMyRingtone() { File k = new File("/sdcard/Shall We Talk.mp3"); // 设置歌曲路径 ContentValues values = new ContentValues(); values.put(MediaStore.MediaColumns.DATA, k.getAbsolutePath()); values.put(MediaStore.MediaColumns.TITLE, "Shall We Talk"); values.put(MediaStore.MediaColumns.SIZE, 8474325); values.put(MediaStore.MediaColumns.MIME_TYPE, "audio/mp3"); values.put(MediaStore.Audio.Media.ARTIST, "Madonna"); values.put(MediaStore.Audio.Media.DURATION, 230); values.put(MediaStore.Audio.Media.IS_RINGTONE, true); values.put(MediaStore.Audio.Media.IS_NOTIFICATION, false); values.put(MediaStore.Audio.Media.IS_ALARM, false); values.put(MediaStore.Audio.Media.IS_MUSIC, false); // Insert it into the database Uri uri = MediaStore.Audio.Media.getContentUriForPath(k.getAbsolutePath()); Uri newUri = this.getContentResolver().insert(uri, values); RingtoneManager.setActualDefaultRingtoneUri(this, RingtoneManager.TYPE_RINGTONE, newUri); } |
需要的权限
|
1 2 |
<uses-permission android:name="android.permission.WRITE_SETTINGS"></uses-permission> |
模拟HOME按键
|
1 2 3 4 |
Intent i=new Intent(Intent.ACTION_MAIN); i.addCategory(Intent.CATEGORY_HOME); i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(i); |
9:打开某一个联系人
|
1 2 3 4 5 6 |
Intent intent=new Intent(); String data = "content://contacts/people/1"; Uri uri = Uri.parse(data); intent.setAction(Intent.ACTION_VIEW); intent.setData(uri); startActivity(intent); |
10:发送文件
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
void sendFile(String path) { File mZipFile=new File(path); Intent intent = new Intent(Intent.ACTION_SEND); // intent.setClassName("com.android.bluetooth", "com.broadcom.bt.app.opp.OppLauncherActivity"); // intent.setClassName("com.android.bluetooth", "com.android.bluetooth.opp.BluetoothOppLauncherActivity"); intent.putExtra("subject", mZipFile .getName()); // intent.putExtra("body", "content by chopsticks"); // 正文 intent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(mZipFile)); // 添加附件,附件为file对象 if (mZipFile.getName().endsWith(".gz")) { intent .setType("application/x-gzip"); // 如果是gz使用gzip的mime } else if (mZipFile.getName().endsWith( ".txt")) { intent.setType("text/plain"); // 纯文本则用text/plain的mime } else if (mZipFile.getName().endsWith( ".zip")) { intent.setType("application/zip"); // 纯文本则用text/plain的mime } else { intent .setType("application/octet-stream"); // 其他的均使用流当做二进制数据来发送 } // startActivity(intent); startActivity( Intent.createChooser(intent, "选择蓝牙客户端")); } |
Android常用代码集合的更多相关文章
- Android 常用代码大集合 [转]
[Android]调用字符串资源的几种方法 字符串资源的定义 文件路径:res/values/strings.xml 字符串资源定义示例: <?xml version="1.0&q ...
- phpcms v9模板制作常用代码集合(转)
phpcms v9模板制作常用代码集合(个人收藏) 1.截取调用标题长度 {str_cut($r[title],36,'')} 2.格式化时间 调用格式化时间 2011-05-06 11:22:33 ...
- phpcms v9模板制作常用代码集合
phpcms v9模板制作常用代码集合(个人收藏) 1.截取调用标题长度 {str_cut($r[title],36,'')} 2.格式化时间 调用格式化时间 2011-05-06 11:22:33 ...
- SAP屏幕字段常用代码集合
SAP屏幕字段常用代码集合 ().Screen 设计 TABLES: SSCRFIELDS. PARAMETERS: P_EBLEN LIKE VBRK-EBLEN DEFAULT ' '. PARA ...
- ExtJS常用代码集合
ExtJS常用代码集合,包括弹出提示框,登陆框,树状结构等等.1. [代码]弹出提示框 <html> <head> <title>Ge ...
- C#常用代码集合(1)
引用自james li的博客,地址:http://www.cnblogs.com/JamesLi2015/p/3147986.html 1 读取操作系统和CLR的版本 OperatingSys ...
- Android常用代码
1.图片旋转 Bitmap bitmapOrg = BitmapFactory.decodeResource(this.getContext().getResources(), R.drawable. ...
- Android 常用代码片小结
1. dp px 相互转换---------------public class DensityUtil { /** * 根据手机的分辨率从 dip 的单位 转成为 px(像素) */ public ...
- Android 常用代码
1.单元测试 然而可以直接建立单元测试 <uses-library android:name="android.test.runner"/> 放在application ...
随机推荐
- 只用css实现“每列四行,加载完一列后数据自动填充到下一列”的效果
只用css实现“每列四行,加载完一列后数据自动填充到下一列”的效果.这个题目用图表示如下: 如果将题目换成“只用css实现每行四列,加载完一行后数据自动填充到下一行”,那这个问题就简单多了,相信大家都 ...
- Docker管理面板Crane开源了!
导读 数人云容器管理面板 Crane 开源啦!Crane 包含着数人云工程师对 Docker 最新技术的热爱和实践.希望借助开源社区的力量,让 Crane 完善自身,更好地成长起来,让更多的国内用户体 ...
- Webdriver API (三)- actions
Actions类主要定义了一些模拟用户的鼠标mouse,键盘keyboard操作.对于这些操作,使用perform()方法进行执行. actions类可以完成单一的操作,也可以完成几个操作的组合. 有 ...
- 在虚拟机中安装windows
前言: 本来在windows当中安装windows是一件很简单的事,但是在使用光盘进行安装的时候,发现无法进行安装. 思路: 将光盘进行提取成iso文件,一个光盘提取一个iso文件,从而存在两个iso ...
- bzoj 2095: [Poi2010]Bridges(二分法+混合图的欧拉回路)
[题意] 给定n点m边的无向图,对于边u,v,从u到v边权为c,从v到u的边权为d,问能够经过每条边一次且仅一次,且最大权值最小的欧拉回路. [思路] 二分答案mid,然后切断权值大于mid的边,原图 ...
- ACM1996
/* 汉诺塔VI Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Su ...
- java 复习002
java东西太多了,我都有点小凌乱了,记得太没结构了 java内存回收机制:垃圾收集GC(Garbage Collection) 两种常用方法: 引用计数(早期使用) 简介:堆中对象每次被栈中引用指向 ...
- 第二百六十四天 how can I 坚持
现在上班闲的有点蛋疼,感觉没什么事,学不到什么东西. 到底要不要买房啊.也想买啊.愁人. 这辈子绝不会就这样. 睡觉.
- [iOS 多线程 & 网络 - 1.3] - NSOperation
A.NSOperation的基本使用 1.NSOperation的作用 配合使用NSOperation和NSOperationQueue也能实现多线程编程 NSOperation和NSOperatio ...
- 关于CoreData和SQLite多线程访问时的线程安全问题
数据库读取操作一般都是多线程访问的.在对数据进行读取时,我们要保证其当前状态不能被修改,即读取时加锁,否则就会出现数据错误混乱.IOS中常用的两种数据持久化存储方式:CoreData和SQLite,两 ...