package io.dcloud.HBuilder.tools;
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;
public class Tools extends Activity {
/**
* 获取系统已安装APP
* @param context
* @param getSysPackages 是否获取系统APP
* @return
*/
public static String getInstalledApps(Context context, boolean getSysPackages) {
PackageManager pm = context.getPackageManager();
List<PackageInfo> packs = pm.getInstalledPackages(0);
int length = packs.size();
PackageInfo p;
String pkg = "";
String myPackageName = context.getApplicationInfo().packageName;
for (int i = 0; i < length; i++) {
p = packs.get(i);
// 过滤系统程序和自己
if ((p.applicationInfo.flags & ApplicationInfo.FLAG_SYSTEM) > 0 || p.applicationInfo.packageName.equals(myPackageName))
continue;
pkg += p.packageName + ":" + p.versionCode + ",";
}
return pkg;
}
/**
* 获取自身应用的包名
* @param context
* @return String
*
* mainActivity = plus.android.runtimeMainActivity();
* t = plus.android.importClass("io.dcloud.HBuilder.tools.Tools");
* a = t.appPackage(mainActivity);
*/
public static String appPackage(Context context)
{
String myPackageName = context.getApplicationInfo().packageName;
return myPackageName;
}
/**
* 启动外部应用
* @param context
* @return String
*
* mainActivity = plus.android.runtimeMainActivity();
* t = plus.android.importClass("io.dcloud.HBuilder.tools.Tools");
* a = t.startApp(mainActivity, 'com.tencent.mm');
*/
public static boolean startApp(Context context, String packageName)
{
Intent mIntent = context.getPackageManager().getLaunchIntentForPackage(packageName);
if(mIntent != null)
{
context.startActivity(mIntent);
return true;
}else{
return false;
}
}
}
调用的方法
function getapps(){
mainActivity = plus.android.runtimeMainActivity();
var Tools = plus.android.importClass("io.dcloud.HBuilder.tools.Tools");
var a = Tools.getInstalledApps(mainActivity, true);
document.getElementById("package").innerHTML = a;
}
function startapps(){
mainActivity = plus.android.runtimeMainActivity();
var Tools = plus.android.importClass("io.dcloud.HBuilder.tools.Tools");
var a = Tools.startApp(mainActivity, "com.tencent.mm");
}
微图科技
老哥,我遇到了集成jar包的问题,不知道放哪,云打包可以做到吗
2019-09-23 20:52