【问题标题】:Receiving a DynamicLink firebase Android接收 DynamicLink firebase Android
【发布时间】:2017-08-26 18:20:03
【问题描述】:

我正在开发一个 android 应用程序,我希望用户能够在其中使用 DynamicLinks Firebase 通过社交网络或电子邮件发布帖子(如果应用程序已安装在设备中,则帖子活动将直接打开,如果不是 le 链接将打开应用程序的 Play 商店页面)。我按照以下步骤操作: 1/我在 firebaseConsole 中创建了一个动态链接,我使用“https://rc4vd.app.goo.gl/XktS”作为短链接 2/一个按钮发送动态链接,这是代码

btnShare.setOnClickListener(new View.OnClickListener() {
       Intent sendIntent = new Intent();
                            sendIntent.setAction(Intent.ACTION_SEND);
                            sendIntent.putExtra(Intent.EXTRA_TEXT, "I invite you to my challenge\n\n" + "https://rc4vd.app.goo.gl/XktS?d=" + databaseReference.getKey());
                            sendIntent.setType("text/plain");
                            startActivity(sendIntent);    
 }

3/接收动态链接时

FirebaseDynamicLinks.getInstance().getDynamicLink(getIntent()).addOnCompleteListener(new OnCompleteListener<PendingDynamicLinkData>() {
                        @Override
                        public void onComplete(@NonNull Task<PendingDynamicLinkData> task) {

                            Uri shortLink = null;
                            if (task.getResult() != null) {
                                // --> shortLink = task.getResult().getShortLink(); 
                                String postId = (shortLink.toString()).substring(shortLink.toString().indexOf("=")+1);

                                //[declare the intent]
                                Intent intent = new Intent(Home.this,MyPostPage.class);
                                //[Set intent extras]
                                intent.putExtra("ref", PostId);
                                //[start the activity with extras]
                                startActivity(intent);
                            }
                        }
                    }).addOnFailureListener(Home.this, new OnFailureListener() {
                        @Override
                        public void onFailure(@NonNull Exception e) {
                            Log.w(TAG, "getDynamicLink:onFailure", e);
                        }
                    });

问题是“shortLink = task.getResult().getShortLink();”不存在,我只能拥有 deepLink。我想知道是否有办法获得短链接,谢谢

【问题讨论】:

    标签: android firebase firebase-dynamic-links


    【解决方案1】:

    您应该在应用程序中创建一个动态链接,其中包含目标(长)URL 中的参数,而不是在控制台中生成链接,然后附加参数。

    https://firebase.google.com/docs/dynamic-links/android/create 是那里的 Android API 文档页面。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-07-13
      • 2021-09-24
      • 1970-01-01
      • 2015-01-08
      • 1970-01-01
      • 2021-11-10
      • 2016-11-03
      • 1970-01-01
      相关资源
      最近更新 更多