Android adb命令修改配置或属性 adb发送广播

来源:互联网 发布:南京魔苹网络怎么样 编辑:程序博客网 时间:2024/06/05 00:21

在上一次博客http://blog.csdn.net/qazqwdxz/article/details/45248781

提到了如何输出logcat到文件,但一有问题又要调试,必须修改代码,如果一直开启功能又要定期删除logcat文件。使用不是太方便。

如果是一般的解决方法是将属性或配置写到某个properties里读写,本文使用另外一种更加简便的方法来达到目的。

就是使用Broadcast和SharedPreferences


import android.app.Activity;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.content.SharedPreferences;public class PreferencesManager extends BroadcastReceiver {public static boolean DEBUG = true;private SharedPreferences preferences = null;private boolean isLogcat = false;@Overridepublic void onReceive(Context context, Intent intent) {// TODO Auto-generated method stubDEBUG = intent.getBooleanExtra("Debug", DEBUG);if(preferences == null)preferences = context.getSharedPreferences("PreferencesManager", Activity.MODE_PRIVATE);SharedPreferences.Editor editor = preferences.edit();editor.putBoolean("Debug",DEBUG);editor.commit(); if(intent.getBooleanExtra("Logcat", false)){LogcatManager.getInstance().startLogcatToFile(context);isLogcat = true;}else{if(isLogcat) {LogcatManager.getInstance().stopLogcatToFile();isLogcat = false;}}}public void initPreferences(Context context){if(preferences == null)preferences = context.getSharedPreferences("PreferencesManager", Activity.MODE_PRIVATE);DEBUG = preferences.getBoolean("Debug", DEBUG);}}

然后使用adb命令就能可以主动打开关闭功能了,adb使用方法

开启功能:adb shell am broadcast -a com.android.test --ez Debug true

关闭功能:adb shell am broadcast -a com.android.test --ez Debug false


adb发送广播详细用法:

adb shell am broadcast 后面的参数有:

[-a <ACTION>]
[-d <DATA_URI>]
[-t <MIME_TYPE>]
[-c <CATEGORY> [-c <CATEGORY>] ...]
[-e|--es <EXTRA_KEY> <EXTRA_STRING_VALUE> ...]
[--ez <EXTRA_KEY> <EXTRA_BOOLEAN_VALUE> ...]
[-e|--ei <EXTRA_KEY> <EXTRA_INT_VALUE> ...]
[-n <COMPONENT>]
[-f <FLAGS>] [<URI>]


0 0