【isNetworkAvailable】
public static boolean isNetworkAvailable(Context ctx) {
try {
ConnectivityManager cm = (ConnectivityManager) ctx
.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo info = cm.getActiveNetworkInfo();
return (info != null && info.isConnected());
} catch (Exception e) {
e.printStackTrace();
return false;
}
}
【getJPGByteFromBitmap】
public static byte[] getJPGByteFromBitmap(Bitmap src,
Bitmap.CompressFormat format, int quality) {
ByteArrayOutputStream os = new ByteArrayOutputStream();
src.compress(format, quality, os);
return os.toByteArray();
}
【联系人QQ】
dataKind = newcur.getInt(newcur.getColumnIndex(Contacts.ContactMethods.KIND));
【获得已安装程序列表】
Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);
mainIntent.addCategory(Intent.CATEGORY_LAUNCHER);
List<ResolveInfo> myGames = getPackageManager().queryIntentActivities(mainIntent, 0);
【获得程序名label】
getPackageManager().getApplicationLabel(info.applicationInfo);
【获得Activity的版本名和版本号】
activity.getPackageManager().getPackageInfo("com.testSocket", 0).versionName;
activity.getPackageManager().getPackageInfo("com.testSocket", 0).versionCode;
【有相应的方法可以调用另一工程的Activity】
final Intent intent = new Intent(Intent.ACTION_MAIN, null);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
final ComponentName cn = new ComponentName("com.android.settings","com.android.settings.fuelgauge.PowerUsageSummary");
intent.setComponent(cn);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity( intent);
来自 Shadow
【模拟器来电、短信】
打开命令行cmd,输入telnet 回车.
然后输入 o localhost 5554 回车,连到Emulator上.
输入gsm call 123456
发短信
sms send 15555218135 Hello,this is a Message.
【用过的权限汇总】
<!-- 读取联系人 -->
<uses-permission android:name="android.permission.READ_CONTACTS"></uses-permission>
<!-- 联网设置 -->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<!-- 收发短信权限 -->
<uses-permission android:name="android.permission.RECEIVE_SMS" />
<uses-permission android:name="android.permission.SEND_SMS" />
/**
* 发送短信,调用sms方法
*/
public void sendMsgBySMS(String to, String msg) {
Intent it = new Intent(Intent.ACTION_VIEW);
it.putExtra("sms_body", "msg");
it.setType("vnd.android-dir/mms-sms");
startActivity(it);
}
/**
* 发送短信,调用系统接口
*/
public void sendMsgBySys(String to, String msg) {
Log.i("", "msg sending...");
Uri smsToUri = Uri.parse("smsto:" + to);
Intent sendIntent = new Intent(Intent.ACTION_VIEW, smsToUri);
sendIntent.putExtra("sms_body", msg);
sendIntent.setType("vnd.android-dir/mms-sms");
startActivity(sendIntent);
Log.i("", "send msg ok");
}
/**
* 获取联系人号码
*/
public void getPeople() {
Cursor cursor = getContentResolver().query(
ContactsContract.Contacts.CONTENT_URI, null, null, null, null);
while (cursor.moveToNext()) {
String contactId = cursor.getString(cursor
.getColumnIndex(ContactsContract.Contacts._ID));
String name = cursor.getString(cursor
.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME));
Log.i("", "id=" + contactId + " name=" + name);
// 2. 接著透過_ID,來找電話號碼,電話號碼可能不只有一個,所以先判斷有無電話號碼
String IsPhone = cursor
.getString(cursor
.getColumnIndex(ContactsContract.Contacts.HAS_PHONE_NUMBER));
// 3. 如果有電話,接著再去query電話號碼
if ((Integer.parseInt(IsPhone) > 0)) {
Cursor phoneNumber = getContentResolver().query(
ContactsContract.CommonDataKinds.Phone.CONTENT_URI,
null,
ContactsContract.CommonDataKinds.Phone.CONTACT_ID
+ " = " + contactId, null, null);
while (phoneNumber.moveToNext()) {
String strPhoneNumber = phoneNumber
.getString(phoneNumber
.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
Log.i("", "strPhoneNumbe=" + strPhoneNumber);
}
}
}
}
【获取本机电话】
public void getNumber() {
TelephonyManager tm = (TelephonyManager) this
.getSystemService(Context.TELEPHONY_SERVICE);
String imei = tm.getDeviceId();
String tel = tm.getLine1Number();
Log.i("", "imei=" + imei);
Log.i("", "tel=" + tel);
}
权限:<uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission>