AppUtil工具类:

import java.io.File;
import java.util.ArrayList;
import java.util.List;
 
import android.app.Activity;
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.content.pm.PackageManager.NameNotFoundException;
import android.graphics.drawable.Drawable;
import android.net.Uri;
 
/**
 * 常用APP的工具类,包含版本号、版本名称、安装的应用程序ICON
 */
public class AppUtil {
	private AppUtil(){}
 
	/**
	 * 获取包名
	 * @param context
	 * @return
	 */
	public static String getPackageName(Context context){
		return context.getPackageName();
	}
	
	/**
	 * 获取VersionName(版本名称)
	 * @param context
	 * @return
	 * 失败时返回""
	 */
	public static String getVersionName(Context context){
		PackageManager packageManager = getPackageManager(context);
		try {
			PackageInfo packageInfo = packageManager.getPackageInfo(getPackageName(context), 0);
			return packageInfo.versionName;
		} catch (NameNotFoundException e) {
			e.printStackTrace();
		}
		return "";
	}
	
	/**
	 * 获取VersionCode(版本号)
	 * @param context
	 * @return
	 * 失败时返回-1
	 */
	public static int getVersionCode(Context context){
		PackageManager packageManager = getPackageManager(context);
		try {
			PackageInfo packageInfo = packageManager.getPackageInfo(getPackageName(context), 0);
			return packageInfo.versionCode;
		} catch (NameNotFoundException e) {
			e.printStackTrace();
		}
		return -1;
	}
	
	/**
	 * 获取所有安装的应用程序,不包含系统应用
	 * @param context
	 * @return
	 */
	public static List<PackageInfo> getInstalledPackages(Context context){
		PackageManager packageManager = getPackageManager(context);
		List<PackageInfo> packageInfos = packageManager.getInstalledPackages(0);
		List<PackageInfo> packageInfoList  = new ArrayList<PackageInfo>();
		for(int i=0; i < packageInfos.size();i++){
			if ((packageInfos.get(i).applicationInfo.flags & ApplicationInfo.FLAG_SYSTEM) == 0) {
				packageInfoList.add(packageInfos.get(i));
			}
		}
		return packageInfoList;
	}
	
	/**
	 * 获取应用程序的icon图标
	 * @param context
	 * @return
	 * 当包名错误时,返回null
	 */
	public static Drawable getApplicationIcon(Context context){
		PackageManager packageManager = getPackageManager(context);
		try {
			PackageInfo packageInfo = packageManager.getPackageInfo(getPackageName(context), 0);
			return packageInfo.applicationInfo.loadIcon(packageManager);
		} catch (NameNotFoundException e) {
			e.printStackTrace();
		}
		return null;
	}
	
	/**
	 * 启动安装应用程序
	 * @param activity
	 * @param path	应用程序路径
	 */
	public static void installApk(Activity activity, String path){
		Intent intent = new Intent(Intent.ACTION_VIEW);
		intent.setDataAndType(Uri.fromFile(new File(path)),
                "application/vnd.android.package-archive");
        activity.startActivity(intent);
	}
	
	/**
	 * 获取PackageManager对象
	 * @param context
	 * @return
	 */
	private static PackageManager getPackageManager(Context context){
		return context.getPackageManager();
	}
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
注意你的基带版本需要是MDC或者MDL一,准备材料:1,电脑安装Microsoft .NET Framework 4.5,点我2,下载三星驱动,点我3,下载解锁软件,点我下载4,下载安装DFS,点我下载5,全部安装好上面的软件在电脑6,MDC版本基带下载:点我下载二,降级基带为MDC版本1,下载odin:odin_V3.0.7.zip2,解压并且打开odin软件3,手机L720彻底关机(拔掉UIM卡,SIM卡)5,按住音量下+主页键+电源键进入警告的英文页面6,看到警告之后,按一下音量上键,进入了Downloading....下载模式,也就是挖煤模式或者说odin刷机模式。连上电脑数据线(台式电脑连后面的USB接口,网吧电脑一般被阉割了,是太监,不行)7,odin软件上点击PHONE,选择SPH-L720_MDC_Modem.tar.md5基带文件8,等待1分钟左右MD5验9,点击start,开始刷机三,破解电信插卡3G1,手机在拨号界面输入*#0808# (或者拨号##3424#),上面选择AP 下面选择MODEM+ADB+DM2,下载SPCUtility.apk 这个软件安装在手机3,手机连接WiFi或者网络,打开SPCUtility.apk这个软件,read 读取即可出SPC4,手机连接电脑数据线5,打开桌面的DFS软件6,连接三星端口7,输入PWD密码为2012112120131219 8,SPC密码是上面第2.3步骤获取到的6位数字 9,默认是写号,改为RuimOnly 读UIM卡模式 10,写电信的3G接口照图写ctwap@mycdma.cnvnet.mobi 11,写SimpleIP 12,写完上面的参数,关闭DFS。不要断开手机,也不用拔掉数据线。接着做下面的步骤四四,破解三网识别:1,打开桌面的S4 Flasher软件,点击scan and unlock,然后等待手机重启,就完成解锁三网了。到此完美三网插卡。2手机享受三网插卡吧!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值