首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >chrome android未知方案

chrome android未知方案
EN

Stack Overflow用户
提问于 2016-03-04 08:56:21
回答 1查看 1.8K关注 0票数 0

在我的应用程序中,我使用与branch.io的深度链接。应用程序生成url并使用自定义方案打开它。它在本地android上运行良好,火狐和opera-mini,但在ERR_UNKNOWN_URL_SCHEME的chrome-android上却失败了。

代码:清单

代码语言:javascript
复制
        <activity
        android:launchMode="singleTask"
        android:name=".ui.activity.ShareActivity"
        android:screenOrientation="portrait">
        <intent-filter>
            <data android:scheme="myapp" android:host="open" />
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />
        </intent-filter>
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

生成url的代码(doc:https://dev.branch.io/getting-started/creating-links-in-apps/guide/android/):

代码语言:javascript
复制
    public static void generateShortUrl(@NonNull Context aContext,
                                    @Nullable String aMediaId,
                                    @Nullable String aCollectionId,
                                    @NonNull CanonicalIdentifier aCanonicalIdentifier,
                                    @NonNull String aDesktopUrl,
                                    @NonNull Branch.BranchLinkCreateListener aListener){

    BranchUniversalObject branchUniversalObject = new BranchUniversalObject()
            .setCanonicalIdentifier(String.valueOf(aCanonicalIdentifier.ordinal() + 1))
            .setContentIndexingMode(BranchUniversalObject.CONTENT_INDEX_MODE.PUBLIC)
            .addContentMetadata(SHARE_MEDIA_ID, aMediaId);


    if(BuildConfig.DEBUG){
        Log.e("BranchConfigTest","share date:"+branchUniversalObject.convertToJson().toString());
    }

    if(!TextUtils.isEmpty(aCollectionId))
        branchUniversalObject.addContentMetadata(SHARE_COLLECTION_ID,aCollectionId);

    if(!TextUtils.isEmpty(aMediaId))
        branchUniversalObject.addContentMetadata(SHARE_MEDIA_ID,aMediaId);

    LinkProperties linkProperties = new LinkProperties()
            .setFeature("sharing")
            .addControlParameter("$desktop_url", aDesktopUrl);

    branchUniversalObject.generateShortUrl(aContext,linkProperties,aListener);
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-03-07 03:43:51

亚力克斯与布兰奇:不幸的是,这是一个已知的问题与Chrome。基本上,在Chrome 40的某些版本中,决定输入和粘贴URL应该防止自动重定向,就像one分支用来打开Play Store或启动应用程序一样。我们去年夏天和铬团队一起研究了一个解决方案,但几周前我们注意到这个问题只针对键入的URL,而不是用户直接粘贴到Chrome地址栏的URL。

好消息是,在野外,这是非常非常罕见的。它通常只由处于分支集成测试阶段的开发人员触发--绝大多数用户只会单击链接(而不是粘贴URL),因此永远不会遇到这种情况。显然,这仍然是一个不太理想的解决方案,所以如果您愿意,可以随意使用用铬归档雷达。我们可以找到它的背后,并要求我们的团队提供的例子以及。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35791762

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档