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

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. 滑动菜单栏开源项目SlidingMenu的使用

    一.SlidingMenu简介相信大家对SlidingMenu都不陌生了,它是一种比较新的设置界面或配置界面的效果,在主界面左滑或者右滑出现设置界面效果,能方便的进行各种操作.很多优秀的应用都采用了这 ...

  2. Matlab编程实例(2) 同期平均

    %多点同期平均 close all; clear all; pi = 3.14159; Samp2=input('您需要几组信号做同期平均?') Samp1=1000 %设置采样精度 t = lins ...

  3. xcode 怎么样在发布release版本的时候 不输出log

    我们平时在开发应用的时候,经常会用到 NSLog 来调试我们的程序,而随着项目越来越大,这些用于调试的日志输出就会变得很难管理. 发布正式版的时候一定要屏蔽掉所有后台输出,因为这些输出还是比较消耗系统 ...

  4. cocos2d CCLayer 触摸相关

    要让一个  CCLayer 能够接受触摸输入  需要进行如下设置: [selfsetTouchEnabled:YES]; cocos2d-x提供了两种触摸事件处理机制, 分别是CCStandardTo ...

  5. Mobile testing基础之签名

    1. 什么是数字签名? 数字签名就是为你的程序打上一种标记,来作为你自己的标识,当别人看到签名的时候会知道它是与你相关的 2. 为什么要数字签名? 最简单直接的回答: 系统要求的. Android系统 ...

  6. 【原】Storm学习资料推荐

    4.Storm学习资料推荐 书籍: 英文: Learning Storm: Ankit Jain, Anand Nalya: 9781783981328: Amazon.com: Books Gett ...

  7. CSS:7个你可能不认识的单位

    原文:7 CSS Units You Might Not Know About 众所周知,当使用CSS技术的时候,很容被一些奇异问题给困住.而当我们面对新的问题时,这会让我们处于非常不利的位置. 但是 ...

  8. Tkinter教程之Toplevel篇

    本文转载自:http://blog.csdn.net/jcodeer/article/details/1811341 '''Tkinter教程之Toplevel篇'''#TopLevel与Frame类 ...

  9. Hadoop学习之--Capaycity Scheduler源码分析

    Capacity Scheduler调度策略当一个新的job是否允许添加到队列中进行初始化,判断当前队列和用户是否已经达到了初始化数目的上限,下面就从代码层面详细介绍整个的判断逻辑.Capaycity ...

  10. leetcode@ [310] Minimum Height Trees

    For a undirected graph with tree characteristics, we can choose any node as the root. The result gra ...