android.content.Contextandroid.content.Intentandroid.content.pm.ApplicationInfoandroid.content.pm.PackageInfoandroid.content.pm.PackageManagerandroid.content.pm.PackageManager.NameNotFoundExceptionandroid.content.pm.ResolveInfoandroid.content.pm.Signatureandroid.graphics.drawable.Drawableandroid.net.Uriandroid.text.TextUtilscom.olemob.activity.OlemobApplicationjava.io.BufferedReaderjava.io.DataOutputStreamjava.io.InputStreamReaderjava.util.ArrayListjava.util.ListAppInfoUtil {
(PackageInfo info) {
!= info && ((info..& ApplicationInfo.) != )}
(PackageInfo info) {
!= info && ((info..& ApplicationInfo.) != )}
(PackageInfo info) {
(!(info) && !(info))}
(PackageInfo info) {
(info) || (info)}
(String pkgName) {
!(pkgName)}
(String pkgName) {
{
PackageInfo pInfo = OlemobApplication.().getPackageManager().getPackageInfo(pkgName)((pInfo..& ApplicationInfo.) != ) || ((pInfo..& ApplicationInfo.) != )} (NameNotFoundException e) {
LogUtil.(e)}
}
String (Context contextString pkgName) {
(TextUtils.(pkgName)) {
}
String name = PackageManager pm = context.getPackageManager(){
ApplicationInfo info = pm.getApplicationInfo(pkgNamePackageManager.)name = (String)pm.getApplicationLabel(info)} (NameNotFoundException e) {
LogUtil.(e)}
name}
(Context contextString pkgName) {
(TextUtils.(pkgName)) {
}
verName{
PackageManager pm = context.getPackageManager()PackageInfo pi = pm.getPackageInfo(pkgName)(pi == ) {
} {
verName = pi.verName}
} (Exception ignored) {
}
}
String (Context contextString pkgName) {
(TextUtils.(pkgName)) {
}
String verName{
PackageManager pm = context.getPackageManager()PackageInfo pi = pm.getPackageInfo(pkgName)(pi == ) {
} {
verName = pi.verName}
} (Exception ignored) {
}
}
Drawable (Context contextString pkgName) {
(TextUtils.(pkgName)) {
}
Drawable icon = PackageManager pm = context.getPackageManager(){
PackageInfo info = pm.getPackageInfo(pkgNamePackageManager.)icon = info..loadIcon(pm)} (Exception e) {
LogUtil.(e)}
icon}
List<Drawable> (Context contextList<String> pkgs) {
(pkgs == || pkgs.isEmpty()) {
}
List<Drawable> iconList = ArrayList<>()PackageManager pm = context.getPackageManager(){
(String pkgName : pkgs) {
PackageInfo info = pm.getPackageInfo(pkgNamePackageManager.)Drawable icon = info..loadIcon(pm)iconList.add(icon)}
} (Exception e) {
LogUtil.(e)}
iconList}
(Context contextString pkgName) {
isDisabled = {
PackageManager pkgMgr = context.getPackageManager()(pkgMgr != ) {
() PackageInfo pkgInfo = pkgMgr
.getPackageInfo(pkgNamePackageManager.)() PackageInfo sysPkgInfo = pkgMgr
.getPackageInfo(PackageManager.)(pkgInfo != && pkgInfo.!= && pkgInfo..> && sysPkgInfo !=
&& sysPkgInfo.!= && sysPkgInfo..> ) {
isDisabled = (sysPkgInfo.[]
.equals(pkgInfo.[])) || (!pkgInfo..)}
}
} (Exception e) {
LogUtil.(e)}
isDisabled}
(Context contextIntent intent) {
PackageManager packageManager = context.getPackageManager()List<ResolveInfo> resolveInfo = packageManager.queryIntentActivities(intentPackageManager.)resolveInfo.size() > }
(Context contextString pkgName) {
isEnable = {
PackageManager pkgMgr = context.getPackageManager()(pkgMgr != ) {
PackageInfo pkgInfo = pkgMgr.getPackageInfo(pkgName)(pkgInfo != ) {
ApplicationInfo appInfo = pkgInfo.(appInfo != ) {
isEnable = appInfo.}
}
}
} (Exception e) {
LogUtil.(e)}
isEnable}
(Context context) {
appCount = {
PackageManager pkgMgr = context.getPackageManager()(pkgMgr != ) {
List<PackageInfo> apps = pkgMgr.getInstalledPackages()(apps != ) {
appCount = apps.size()}
}
} (Exception e) {
LogUtil.(e)}
appCount}
List<PackageInfo> (Context context) {
PackageManager pkgMgr = context.getPackageManager()List<PackageInfo> apps = (!= pkgMgr) {
{
apps = pkgMgr.getInstalledPackages()} (Exception ignored) {
}
}
apps}
List<PackageInfo> (Context context) {
PackageManager pkgMgr = context.getPackageManager()List<PackageInfo> apps = (!= pkgMgr) {
{
apps = pkgMgr.getInstalledPackages()} (Exception ignored) {
}
}
List<PackageInfo> userAppList = (!= apps && apps.size() > ) {
userAppList = ArrayList<>()(i = i < apps.size()i++) {
(!(apps.get(i))) {
userAppList.add(apps.get(i))}
}
}
userAppList}
String (String pkgName) {
[] sign = (pkgName)(== sign || sign.== ) {
}
String signMd5 = {
signMd5 = Md5Util.(sign)} (Exception e) {
LogUtil.(e)}
signMd5}
[] (String pkgName) {
(TextUtils.(pkgName)) {
}
{
() PackageInfo packageInfo = OlemobApplication.()
.getPackageManager().getPackageInfo(pkgNamePackageManager.)Signature[] signs = packageInfo.Signature sign = signs[]sign.toByteArray()} (Exception e) {
LogUtil.(e)}
}
String (String pkgName) {
{
String apkPaths = (+ pkgName)(TextUtils.(apkPaths)) {
}
String path = apkPathsString[] pathArray = apkPaths.split()(pathArray.>= ) {
path = pathArray[]}
String md5String = (+ path)(!TextUtils.(md5String) && md5String.contains()) {
md5String = md5String.substring(md5String.indexOf()).trim()}
md5String} (Exception ignored) {
}
}
String (String argsString) {
Process process = DataOutputStream dataOutputStream = {
process = Runtime.().exec(argsString)dataOutputStream = DataOutputStream(process.getOutputStream())BufferedReader reader = BufferedReader(InputStreamReader(process.getInputStream()))StringBuilder log = StringBuilder()firstLine = String line((line = reader.readLine()) != ) {
(!firstLine) {
log.append()} {
firstLine = }
log.append(line)}
log.toString()} (Exception ignored) {
} {
{
(dataOutputStream != )
dataOutputStream.close()(process != )
process.destroy()} (Exception ignored) {
}
}
}
(Context contextString pkgName) {
(context == || TextUtils.(pkgName)) {
}
{
Intent intent = Intent(Intent.Uri.(+ pkgName))intent.addFlags(Intent.)context.startActivity(intent)} (Exception e) {
LogUtil.(e)}
}
}
转载于:https://my.oschina.net/haofjguojd/blog/618819