我必须开发一款适用于Android的应用锁定器,用户可以阻止应用,其他用户无法访问这些应用时无需访问密钥。如何在android中制作应用程序锁定应用程序?
我已经安装了一个应用程序,但我不知道如何锁定这个应用程序。
请给我一些建议。
我必须开发一款适用于Android的应用锁定器,用户可以阻止应用,其他用户无法访问这些应用时无需访问密钥。如何在android中制作应用程序锁定应用程序?
我已经安装了一个应用程序,但我不知道如何锁定这个应用程序。
请给我一些建议。
这不是堆栈溢出如何工作。即使没有尝试任何东西,你也不能问完整的解决方案。
对于最基本的应用程序版本,您需要执行三项功能。
获取设备上所有安装的应用程序的列表,并使用复选框在ListView中显示它们。如果用户检查任何应用程序,则将该应用程序添加到不同的列表中,例如BlockedAppsList(这将是用户想要阻止的应用程序的列表)。 你可以使用下面的代码安装的所有应用程序:
final PackageManager pm = getPackageManager();
//get a list of installed apps.
List<ApplicationInfo> packages = pm.getInstalledApplications(PackageManager.GET_META_DATA);
for (ApplicationInfo packageInfo : packages) {
Log.d(TAG, "Installed package :" + packageInfo.packageName);
Log.d(TAG, "Source dir : " + packageInfo.sourceDir);
Log.d(TAG, "Launch Activity :" + pm.getLaunchIntentForPackage(packageInfo.packageName));
}
检查这是当前打开的应用程序。您可以通过使用此代码检查:
ActivityManager am = (ActivityManager) this.getSystemService(ACTIVITY_SERVICE);
List l = am.getRecentTasks(1, ActivityManager.RECENT_WITH_EXCLUDED);
Iterator i = l.iterator();
PackageManager pm = this.getPackageManager();
while (i.hasNext()) {
ActivityManager.RunningAppProcessInfo info = (ActivityManager.RunningAppProcessInfo)(i.next());
try {
CharSequence c = pm.getApplicationLabel(pm.getApplicationInfo(
info.processName, PackageManager.GET_META_DATA));
Log.w("LABEL", c.toString());
} catch (Exception e) {
// Name Not FOund Exception
}
}
现在检查当前的应用程序出现在BlockedAppsList,如果有,则可以显示与块消息的任何画面。
祝你好运!
欢迎来到SO。这不是如何工作。 [请参阅本文](http://stackoverflow.com/tour) – Aks4125