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. 利用XML实现通用WEB报表打印实际使用中的
  2. 广告控件中xml文件的写法
  3. 在 XSL/XSLT 中实现随机排序
  4. 读取XML为行记录
  5. WML初级教程之从实际应用中了解WML
  6. 从XML中读取数据到内存的实例
  7. 一个简单的基于XML的模块集成框架
  8. 从无到有实现一个xml数据库登录验证
  9. Xml_javascript分页
  10. 使用xml作为数据源,配合asp:Menu类自由扩