我没有公开的网址,我可以对其进行注释以支持应用链接,因此我使用Facebook的移动主机API进行应用链接。
根据应用程序链接文档,我可以传递App Links Hosting API提供的规范URL(https://fb.me/xxxxxxxxxx)。规范URL包括三个信息,URL,APP名称,包名称,URL如下所示:
my_app_scheme://actions?ads_name=1
我尝试从Android数据中获取URL的QueryParameter(" ads_name")以打开应用程序的已定义页面。我使用以下代码。
AppLinkData.createFromActivity(MainActivity.this);
if (AppLinks.getTargetUrl(intentOtherApp) != null) {
Uri targetUrl = AppLinks.getTargetUrl(intentOtherApp);
if (targetUrl != null) {
Bundle appLinkData = AppLinks.getAppLinkData(getIntent());
if (appLinkData != null) {
String targetURLString = appLinkData.getString("target_url");
Uri targetURL = Uri.parse(targetURLString);
JSONObject jsonObject = new JSONObject();
String adsName = targetURL.getQueryParameter("ads_name");
try {
if (adsName != null) {
jsonObject.put("ads_name", adsName);
}
} catch (JSONException e) {
e.printStackTrace();
}
}
*/
}
}
但是我无法获取数据,我总是只得到规范的URL。如何从Facebook应用程序链接传递我的查询数据?是否使用相同的方法安装或不安装应用程序?
答案 0 :(得分:1)
target_url始终是共享的网址,在您的情况下,它是https://fb.me/xxxxxxxxxx
如果您想要查询参数,您有两种选择:
Uri uri = getIntent().getData()
,这将是自定义网址,或my_app_scheme:// actions?ads_name = 1)< / LI>
醇>