如果我的解锁器应用程序有效,它将隐藏在启动器中。 解锁程序应用程序将我的应用程序解锁为PRO版本。
现在我有两个想法:
但我不知道该怎么做,而且我不想使用SharedPreferences,因为它们很容易修改,对吧?
答案 0 :(得分:0)
我现在这样做了:
public static List<ApplicationInfo> getAllInstalledUnLaunchableApplications(Context context) {
List<ApplicationInfo> installedApps = context.getPackageManager().getInstalledApplications(PackageManager.PERMISSION_GRANTED);
List<ApplicationInfo> installedAppsFiltered = new ArrayList<ApplicationInfo>();
for(int i =0; i<installedApps.size(); i++){
if(context.getPackageManager().getLaunchIntentForPackage(installedApps.get(i).packageName) != null){
//If you're here, then this is a launch-able app
//launchableInstalledApps.add(installedApps.get(i));
}else {
//If you're here, then this is a unlaunch-able app
installedAppsFiltered.add(installedApps.get(i));
//Log.d(TAG, "launchable:not?:"+installedApps.get(i).name+":"+installedApps.get(i).packageName);
}
}
return installedAppsFiltered;
}
在我的应用中,我有许可证检查,例如 this
如果它有效,我将其隐藏(在{Didog-Listener中的allow
中):
PackageManager p = getPackageManager();
p.setComponentEnabledSetting(getComponentName(), PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP);
Log.d("Unlocker", "App hidden");
finish();
所以你必须启动它!
我希望我可以帮助那些(解决方法)的人 所以,如果您可以从其他应用程序查看许可证,请立即让我!