05/15/2024 15:19:45

Problem description

Problems related to the Universal Link capability of the game's installation package generally have the following phenomena, which include but are not limited to the following phenomena:

  1. The QQ sharing error: "The device is not authorized (error code: 25105)"
    Image description
  2. The QQ sharing prompt: "Security verification is in progress and will skip back to the third party to complete the verification"
    Image description
  3. WeChat login prompt: "Cannot complete WeChat login because the Universal Link verification of the App failed"
    Image description
  4. The secondary authorization pop-up UI appears in WeChat login
    Image description
  5. There are words like "Unverified App" behind the app name on the small tail in the message shared to WeChat
    Image description
  6. There will be a second skip phenomenon when a WeChat message is shared for several times
    Image description

    Causes of the problem


    This is caused by the failure of accessing Universal Link

    Solution



    If you has not accessed the UL capability, you need to refer to Universal Link Authorization Login Access Documentation to access it.
    If you have accessed the UL capability but UL is found to be unreachable during the joint test process, you need to refer to the following troubleshooting path for self-examination.

II. Check whether the re-signature as well as the certificate used for packaging have UL capability


1. Some instructions on the use of the certificate


Because the process of using the re-signature IPA package of the enterprise signature certificate can very probably decrease the UL capability in the package, when verifying whether the UL capability is normal, you must use "the development certificate with UL capability" to directly issue the package without re-signature. Whether UL is accessed shall be judged with the verification result of the development certificate.

2. Method for confirming whether the development certificate has the UL capability


(1) Native and Unity builds
On the "XCode Project - Signing&Capabilities" UI, click the small exclamation mark on the right side of the certificate to check whether there is an Associated Domains tag in the Capabilities of the certificate.

Image description
(2) UE builds
Because the XCode project cannot be exported, the game side needs to confirm with the certificate provider (usual contact: Key-Store assistant) whether the certificate has UL capability, or try to obtain the latest development certificate verification with enabled UL capability again.

Warning:
If you still have doubts about whether the packaging certificate of the IPA package has the UL capability, you can change the .ipa suffix of the installation package to .zip and then decompress it, obtain the provision file under the path shown in the figure below, and open the file to check whether the Associated Domains tag is added in the file.
Image description

III. Check whether a UL path is configured in the MSDKConfig.ini file


Find the MSDKAppSetting.bundle file by decompressing the IPA package or searching from the XCode project, and then click "Show Package Contents" to check whether the content of the WECHAT_UNIVERSAL_LINK_IOS configuration item in the MSDKConfig.ini file is the same as the one configured by the game itself in the Feiying System.
Image description

IV. Check whether the XCode project has the ability to add Associated Domains


(1) Native and Unity builds
Find the Associated Domains tag in the "XCode Project - Signing&Capabilities" UI (if you don't find the tag, you need to click the plus sign on the upper corner of the UI to add the capability yourself).
Image description
(2) UE builds
Because of different packaging mechanisms, MSDK will add this capability by default in the UE engine, so generally there is no situation where the capability is not added.

V. Check whether a UL path is configured on the Feiying System and whether it is successfully synchronized to the platform


On Feiying System, the game can check whether the configured UL path is consistent with the one configured on the client side. Remember that the UL path configured on the Feiying System ends with a "/" symbol and has no space characters inside.
For the configuration on the platform, you can contact qqconnecthelper (QQ platform) or wxgame (WeChat platform) internally to provide the appid of the corresponding platform and to query the UL path configuration information on the platform. If the UL path is not successfully synchronized to the platform or the configuration is incorrect, you can contact MSDK Assistant to synchronize relevant information to the platform after confirming that the UL path configured on the Feiying System is correct.

VI. Check whether the storage location and configuration of the apple-app-site-association file are correct


Refer to documentations like Universal Link Authorization Login Access Documentation and Common Problems related to Universal Link Configuration to check whether the apple-app-site-association file is stored in the root directory of the domain name and whether the configuration in the file is correct.
For example: Fill in https://docs.itop.qq.com/app/ for Flying Eagle configuration, and a certain path in the apple-app-site-association file is set to /app/* as shown below, then you should be able to successfully download the apple-app-site-association file after entering https://docs.itop.qq.com/apple-app-site-association in WebView.
Image description

VII. Check whether the lifecycle of the game has UL-related entry functions


(1) Native and Unity builds
You need to check whether there is the following lifecycle function in the AppDelegate.mm or UnityAppController.mm file in the XCode project. If there is no such function, you need to contact GCloud Assistant to re-check whether there is any problem with the overall GCloudSDK lifecycle access.

- (BOOL)application:(UIApplication *)application continueUserActivity:
(NSUserActivity *)userActivity restorationHandler:


(2) UE builds
The lifecycle function of UE engine is implemented through iOS category. MSDK has dealt with this by default, but this solution has the risk of MSDK being replaced by other SDKs, so the game must verify whether UL is in effect.

VIII. Check whether the test device meets the test conditions of the UL capability


Refer to the documentation Universal Link Launch Verification to check whether the system version of the current test device as well as the versions of its WeChat and QQ APP meet the test conditions.

It is needed to confirm if the configured Universal Link's domain name is redirected. If the domain name is redirected, even if the apple-app-site-association file is mounted in both domain root directories, this may also cause the domain name where the file is drawn to be inconsistent with the domain name configured in the local project, resulting in overall UL failure and login failure.

X. Contact the MSDK Assistant to provide information about the completion of the above checks



Copyright © 2024 MSDK.
All rights reserved.

results matching ""

    No results matching ""