package com.hes.tools;import java.io.ByteArrayOutputStream;import java.io.File;import java.io.IOException;import java.io.InputStream;import android.content.Context;import android.content.Intent;import android.content.pm.ApplicationInfo;import android.content.pm.PackageInfo;import android.content.pm.PackageManager;import android.net.Uri;import android.os.Environment;import android.telephony.TelephonyManager;public class PhoneInfo {private static PhoneInfo info;private Context mContext;private TelephonyManager tm;private PackageManager pm;private PhoneInfo(Context context) {this.mContext = context;tm = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);pm = context.getPackageManager();}public static PhoneInfo getPhoneInfo(Context context) {if (info == null) {info = new PhoneInfo(context);}return info;}public String getIMEI() {String imei = null;imei = tm.getDeviceId();return imei;}public String getIMSI() {String imsi = null;imsi = tm.getSubscriberId();return imsi;}public String getApkPackageName(String path) {PackageInfo info = pm.getPackageArchiveInfo(path, PackageManager.GET_ACTIVITIES);ApplicationInfo appInfo = null;if (info != null) {appInfo = info.applicationInfo;String packageName = appInfo.packageName;return packageName;}return null;}public void installAPK(String apkAbsolutePath) {Intent intent = new Intent("android.intent.action.VIEW");intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);intent.setDataAndType(Uri.fromFile(new File(apkAbsolutePath)), "application/vnd.android.package-archive");mContext.startActivity(intent);}public void installAPK(File file) {Intent intent = new Intent("android.intent.action.VIEW");intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);intent.setDataAndType(Uri.fromFile(file), "application/vnd.android.package-archive");mContext.startActivity(intent);}public void uninstallAPK(String packageName) {Uri packageURI = Uri.parse("package:" + packageName);Intent uninstallIntent = new Intent("android.intent.action.DELETE", packageURI);uninstallIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);mContext.startActivity(uninstallIntent);}public String installApk(String apkAbsolutePath) {String[] args = { "pm", "install", "-r", apkAbsolutePath };String result = "";ProcessBuilder processBuilder = new ProcessBuilder(args);Process process = null;InputStream errIs = null;InputStream inIs = null;try {ByteArrayOutputStream baos = new ByteArrayOutputStream();int read = -1;process = processBuilder.start();errIs = process.getErrorStream();while ((read = errIs.read()) != -1) {baos.write(read);}baos.write(10);inIs = process.getInputStream();while ((read = inIs.read()) != -1) {baos.write(read);}byte[] data = baos.toByteArray();result = new String(data);} catch (IOException e) {e.printStackTrace();} catch (Exception e) {e.printStackTrace();} finally {try {if (errIs != null) {errIs.close();}if (inIs != null)inIs.close();} catch (IOException e) {e.printStackTrace();}if (process != null) {process.destroy();}}return result;}public String uninstallApk(String packageName) {String[] args = { "pm", "uninstall", "-k", packageName };String result = "";ProcessBuilder processBuilder = new ProcessBuilder(args);Process process = null;InputStream errIs = null;InputStream inIs = null;try {ByteArrayOutputStream baos = new ByteArrayOutputStream();int read = -1;process = processBuilder.start();errIs = process.getErrorStream();while ((read = errIs.read()) != -1) {baos.write(read);}baos.write(10);inIs = process.getInputStream();while ((read = inIs.read()) != -1) {baos.write(read);}byte[] data = baos.toByteArray();result = new String(data);} catch (IOException e) {e.printStackTrace();} catch (Exception e) {e.printStackTrace();} finally {try {if (errIs != null) {errIs.close();}if (inIs != null)inIs.close();} catch (IOException e) {e.printStackTrace();}if (process != null) {process.destroy();}}return result;}public boolean isSDCard() {boolean isSDCard = false;if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {isSDCard = true;}return isSDCard;}}
package com.hes.tools;import java.io.InputStream;import java.util.PropertyResourceBundle;public class ResourceSetting { private static ResourceSetting rs; private static PropertyResourceBundle resourceBundle; public static ResourceSetting getResourceSetting(String settingFileName) { if (rs == null) { rs = new ResourceSetting(); } if (resourceBundle == null) { resourceBundle = (PropertyResourceBundle) PropertyResourceBundle.getBundle(settingFileName); } return rs; } public static String getProperty(String key) { return resourceBundle.getString(key); } public InputStream getResourceStream(String packageFile) { return getClass().getResourceAsStream(packageFile); }}                          

更多相关文章

  1. 代码中设置drawableleft
  2. android 3.0 隐藏 系统标题栏
  3. Android开发中activity切换动画的实现
  4. Android(安卓)学习 笔记_05. 文件下载
  5. Android中直播视频技术探究之—摄像头Camera视频源数据采集解析
  6. 技术博客汇总
  7. android 2.3 wifi (一)
  8. AndRoid Notification的清空和修改
  9. Android中的Chronometer

随机推荐

  1. Android(安卓)获取世界时区
  2. android编程小技巧
  3. android 基础
  4. phonegap hardwareAccelerated问题
  5. Android下常用的正则表达式判断工具类代
  6. 获得当前经纬度
  7. Android(安卓)service里面启动activity和
  8. Android(安卓)Timer的应用示例
  9. Android(安卓)手机号输入格式化 3-3-4
  10. Android中推荐使用的颜色