我可以在一个网站上添加一个链接,例如“navigon://”,在iOS设备中,如果安装了Navigon应用程序,它将打开它。
是否有类似的简单方法从Android网站(假设已安装)打开应用程序?
答案
Android深层链接:为您的清单添加一个intent过滤器
android:name="com.example.android.GizmosActivity"
android:label="@string/title_gizmos" >
android:host="www.example.com"
android:pathPrefix="/gizmos" />
另一答案
在Android中查看intent filters。特别查看类别。
另一答案
你可能已经知道有Deep Links,并从Android 6.0 Android App Links开始出现。后者仅用于在您的应用程序中打开URL,而不是任何其他竞争对手。例如,如果不使用此验证,reddit.com可以在7个应用程序中打开。
您可以将每个需要的Activity与应该打开它的链接相关联。例如,如果您希望在https://awesomejobs.com/jobs/{id}等应用程序链接中打开,则需要将这些行添加到AndroidManifest.xml:
android:host="awesomejobs.com"
android:pathPrefix="/jobs" />
然后在JobActivity写(代码是从俄罗斯的article收到的):
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.ac_job);
final Intent intent = getIntent();
final String action = intent.getAction();
final String data = intent.getDataString();
if (Intent.ACTION_VIEW.equals(action) && data != null) {
final String jobId = data.substring(data.lastIndexOf("/") + 1);
loadJobDetails(jobId);
}
}