这篇文章主要记录一些常用的一些代码段,方便以后查阅,不断更新中。

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常用代码集合的更多相关文章

  1. Android 常用代码大集合 [转]

    [Android]调用字符串资源的几种方法   字符串资源的定义 文件路径:res/values/strings.xml 字符串资源定义示例: <?xml version="1.0&q ...

  2. phpcms v9模板制作常用代码集合(转)

    phpcms v9模板制作常用代码集合(个人收藏) 1.截取调用标题长度 {str_cut($r[title],36,'')} 2.格式化时间 调用格式化时间 2011-05-06 11:22:33 ...

  3. phpcms v9模板制作常用代码集合

    phpcms v9模板制作常用代码集合(个人收藏) 1.截取调用标题长度 {str_cut($r[title],36,'')} 2.格式化时间 调用格式化时间 2011-05-06 11:22:33 ...

  4. SAP屏幕字段常用代码集合

    SAP屏幕字段常用代码集合 ().Screen 设计 TABLES: SSCRFIELDS. PARAMETERS: P_EBLEN LIKE VBRK-EBLEN DEFAULT ' '. PARA ...

  5. ExtJS常用代码集合

    ExtJS常用代码集合,包括弹出提示框,登陆框,树状结构等等.​1. [代码]弹出提示框     <html>    <head>        <title>Ge ...

  6. C#常用代码集合(1)

    引用自james li的博客,地址:http://www.cnblogs.com/JamesLi2015/p/3147986.html   1 读取操作系统和CLR的版本   OperatingSys ...

  7. Android常用代码

    1.图片旋转 Bitmap bitmapOrg = BitmapFactory.decodeResource(this.getContext().getResources(), R.drawable. ...

  8. Android 常用代码片小结

    1. dp px 相互转换---------------public class DensityUtil { /** * 根据手机的分辨率从 dip 的单位 转成为 px(像素) */ public ...

  9. Android 常用代码

    1.单元测试 然而可以直接建立单元测试 <uses-library android:name="android.test.runner"/> 放在application ...

随机推荐

  1. 只用css实现“每列四行,加载完一列后数据自动填充到下一列”的效果

    只用css实现“每列四行,加载完一列后数据自动填充到下一列”的效果.这个题目用图表示如下: 如果将题目换成“只用css实现每行四列,加载完一行后数据自动填充到下一行”,那这个问题就简单多了,相信大家都 ...

  2. Docker管理面板Crane开源了!

    导读 数人云容器管理面板 Crane 开源啦!Crane 包含着数人云工程师对 Docker 最新技术的热爱和实践.希望借助开源社区的力量,让 Crane 完善自身,更好地成长起来,让更多的国内用户体 ...

  3. Webdriver API (三)- actions

    Actions类主要定义了一些模拟用户的鼠标mouse,键盘keyboard操作.对于这些操作,使用perform()方法进行执行. actions类可以完成单一的操作,也可以完成几个操作的组合. 有 ...

  4. 在虚拟机中安装windows

    前言: 本来在windows当中安装windows是一件很简单的事,但是在使用光盘进行安装的时候,发现无法进行安装. 思路: 将光盘进行提取成iso文件,一个光盘提取一个iso文件,从而存在两个iso ...

  5. bzoj 2095: [Poi2010]Bridges(二分法+混合图的欧拉回路)

    [题意] 给定n点m边的无向图,对于边u,v,从u到v边权为c,从v到u的边权为d,问能够经过每条边一次且仅一次,且最大权值最小的欧拉回路. [思路] 二分答案mid,然后切断权值大于mid的边,原图 ...

  6. ACM1996

    /* 汉诺塔VI Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Su ...

  7. java 复习002

    java东西太多了,我都有点小凌乱了,记得太没结构了 java内存回收机制:垃圾收集GC(Garbage Collection) 两种常用方法: 引用计数(早期使用) 简介:堆中对象每次被栈中引用指向 ...

  8. 第二百六十四天 how can I 坚持

    现在上班闲的有点蛋疼,感觉没什么事,学不到什么东西. 到底要不要买房啊.也想买啊.愁人. 这辈子绝不会就这样. 睡觉.

  9. [iOS 多线程 & 网络 - 1.3] - NSOperation

    A.NSOperation的基本使用 1.NSOperation的作用 配合使用NSOperation和NSOperationQueue也能实现多线程编程 NSOperation和NSOperatio ...

  10. 关于CoreData和SQLite多线程访问时的线程安全问题

    数据库读取操作一般都是多线程访问的.在对数据进行读取时,我们要保证其当前状态不能被修改,即读取时加锁,否则就会出现数据错误混乱.IOS中常用的两种数据持久化存储方式:CoreData和SQLite,两 ...