如何以编程方式检查应用程序是否安装在Android中?我们已经以编程方式安装了应用程序。如果应用程序已安装在设备中,则应用程序将自动打开。否则,请安装特定的应用程序。指引我。我没有头绪。谢谢。
3 回答
森栏
TA贡献1810条经验 获得超5个赞
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Add respective layout setContentView(R.layout.main_activity); // Use package name which we want to check boolean isAppInstalled = appInstalledOrNot("com.check.application"); if(isAppInstalled) { //This intent will help you to launch if the package is already installed Intent LaunchIntent = getPackageManager() .getLaunchIntentForPackage("com.check.application"); startActivity(LaunchIntent); Log.i("Application is already installed."); } else { // Do whatever we want to do if application not installed // For example, Redirect to play store Log.i("Application is not currently installed."); } } private boolean appInstalledOrNot(String uri) { PackageManager pm = getPackageManager(); try { pm.getPackageInfo(uri, PackageManager.GET_ACTIVITIES); return true; } catch (PackageManager.NameNotFoundException e) { } return false; }}
汪汪一只猫
TA贡献1898条经验 获得超8个赞
public static boolean isAppInstalled(Context context, String packageName) { try { context.getPackageManager().getApplicationInfo(packageName, 0); return true; } catch (PackageManager.NameNotFoundException e) { return false; }}
boolean whatsappFound = AndroidUtils.isAppInstalled(context, "com.whatsapp");
临摹微笑
TA贡献1982条经验 获得超2个赞
private boolean isCallable(Intent intent) { List<ResolveInfo> list = getPackageManager().queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY); return list.size() > 0; }
- 3 回答
- 0 关注
- 441 浏览
添加回答
举报
0/150
提交
取消