如何制作依赖于其他应用的Android应用?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (42)

如果我创建的应用程序依赖于另一个应用程序,但它们未安装,是否有方法检查这些依赖关系并将它们与我自己的应用程序同时安装?

提问于
用户回答回答于

我在我的应用程序中这样做了,它需要安装zxing扫描仪应用程序。你会想要在你的onclick或ontouch中:

try{
    Intent intent = new Intent("com.google.zxing.client.android.SCAN");
    intent.setPackage("com.google.zxing.client.android");
    startActivityForResult(intent, 0);
} catch (Exception e) {
    createAlert("Barcode Scanner not installed!", "This application uses " +
    "the open source barcode scanner by ZXing Team, you need to install " +
    "this before you can use this software!", true);
}

还有调用下这段代码:

public void createAlert(String title, String message, Boolean button) {
    // http://androidideasblog.blogspot.com/2010/02/how-to-add-messagebox-in-android.html
    AlertDialog alertDialog;
    alertDialog = new AlertDialog.Builder(this).create();
    alertDialog.setTitle(title);
    alertDialog.setMessage(message);
    if ((button == true)) {
        alertDialog.setButton("Download Now",
        new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface arg0, int arg1) {
                Intent browserIntent = new Intent(
                    Intent.ACTION_VIEW,
                    Uri.parse("market://search?q=pname:com.google.zxing.client.android"));
                startActivity(browserIntent);
            }
        });
    }
    alertDialog.show();
}
用户回答回答于

无法自动安装其他应用程序作为依赖关系。

较长的回答:

Android Market不允许您声明其他应用程序作为依赖项进行安装。作为一个系统,Market似乎是为单一应用程序安装而设计的 - 而不是Linux发行版风格的大型依赖关系图。

运行时,你可以测试已安装的应用程序,并将您的用户踢到市场,如果是的话。请参阅@QuickNick建议的技术(测试是否安装了应用程序)和@TerryProbert(投放市场),如果这是你想要的。

扫码关注云+社区