如何从应用程序调用外部应用程序?
我需要从我的应用程序中调用Shazam(应用程序)。
我可以在logcat中看到应用程序的包名。
那有什么用吗?

最佳答案

您可以通过以下方式调用第三方应用程序的活动。

final Intent shazamIntent = new Intent("com.shazam.android");
shazamIntent .setComponent(new  ComponentName("com.shazam.android","com.shazam.android.Splash"));
startActivity(shazamIntent );

但是,这并不是一个很好的解决办法。如果包名称更改(这是一个非常遥远的可能性)或活动名称更改(Splash可能更改为其他内容),则应用程序将中断。
如果shazam有一个意图可以被调用来开始听一首歌,那么就使用这个意图(不确定他们是否有这个意图)。
另外,如果没有安装shazam,请进行必要的检查,以免您的呼叫崩溃。

10-04 19:08