iOS JMLink SDK FAQ

Last updated:2021-12-15
Expand all
  • Fully compatible
  • Adaptation notes:
    • Please refer to this code for WeChat initialization.universalLinkFill in strictly according to this format:
//wxAppID从微信后台获取,universalLink_domain 从极光控制台获取 [WXApi registerApp:@"wxAppID" universalLink:@"universalLink_domain"];
              //wxAppID从微信后台获取,universalLink_domain 从极光控制台获取
    [WXApi registerApp:@"wxAppID" universalLink:@"universalLink_domain"];

        
This code block is shown in the floating window
  • WeChat open platform backendUniversal linksConfiguration should be consistent with the above code
  • Confirm that the device system isiOS9above,Universal linkOnly supportsiOS9above

  • confirmConsole domain name settingsAll support inuniversal link Have all the domain names been filled in? xcode inside

  • Team Is the ID filled in correctly? Please check the specific operation.Team Fill in the ID

  • Whether it was manually canceled by the user

    • when using Universal linkOpenAppAfter that, a short domain name address will appear in the upper right corner. Clicking the upper right corner will cancel it. Universal link
    • existSafariWhen you open the link insmart banner, click the "Open" button,Universal linkwill return to normal
      jmlink-iosjmlink-ios
  • Automatic packaging and manual packaging, usexcodebuildAutomatic packaging will affect Universal linkTo use, please use manual packaging

This is appleiOS The system that emergedbugCaused (accidental occurrence), the system that is currently found to occur occasionally isiOS 11.2+, the solution is to "deleteApp, restart the device, and reinstallApp"Apple has not yet fully resolved this issue, and we will continue to follow up.

if web The client integrates JS SDK,examine web Integration and parameter transfer on the terminal are mostly due to web Caused by end integration and parameter passing. If you still can't locate it, please ask the community or send an email to ask questions.

WeChat is at v6.6.1After version, bannedUniversal linkTo use, open the prompt in the upper right cornerSafariCome and pull upApp,otherAppand browsers are not affected. WeChat7.0.5After the version, it was reopenedUniversal Linksof use.

Enter the Apple developer account and change the currentApp ID'sAssociated Domains set toEnable, as shown below:jmlink-ios

8. What happened?safariIs a pop-up window showing "Cannot open the web page, the URL is invalid" pop up in your browser?

This is becausesafaripassingschemeWhen executing a jump, ifAppIf it does not exist, the system will display such a prompt.

9. AppAfter re-signing, the short chain cannot be invoked normally.app, how to solve it?

The first step is to ensureappBefore re-signing, you can use the short link to evoke normally

The second step is to check the re-signedipadoes it contain the correctassociated domain

How to viewassociated domainIs the content included in correct?

(1)$ cd /Users/cafei/Desktop/Example (2)$ unzip example.ipa (3)$ codesign -d –entitlements - Payload/example.app
          (1)$ cd /Users/cafei/Desktop/Example
(2)$ unzip example.ipa
(3)$ codesign -d –entitlements - Payload/example.app

        
This code block is shown in the floating window

Checkcom.apple.developer.associated-domainsDoes it include allJMLinkassigned domain namejmlink-ios

The third step,appAfter re-signing, checkbundle ID andTeam ID, and in the backgroundappIs the information consistent?

How to get the correctteam ID and bundle ID, as shown in the figurejmlink-ios

The fourth step is to be the backgroundappAfter the information is updated, you need to reinstall it.app, be sure to reinstallappOnly then.

Step 5, test

Open the program for the first time after installation,JMLinkJMLinkIt will communicate with the background to realize scene restoration.AppAfter clearing data,JMLinkThe program will be judged as being installed for the first time. At this time, the background is requested and matched successfully. So you will enter the specific page.

This kind of situation will basically not happen when users actually use it. It is an extremely unlikely event.

2. Can the parameter values ​​in the short chain be modified dynamically?

Yes, the short chain supports the dynamic value of the parameter as query put it behind
For example:http://a.mlinks.cc/ANax?id=12345
However, we do not recommend using it this way. We recommend using JS SDK to set dynamic custom parameters

3. One-click recall is successful, but scene restoration fails.

Short link click time and installationApp, open for the first timeAppThe scene will be restored within 60 minutes (the default is 60 minutes, the time can be changed in the background).

If you click on the short link to call it up successfully, if the scene restoration fails, you need todebugSee if you have receivedAppThe impact of startup page or boot page.

When restoring scenes and recalling them with one click, the following methods will be used

/** * 注册一个默认的handler,当接收到URL,并且所有的mLink key都没有匹配成功,就会调用默认的handler * 需要在 AppDelegate 的 didFinishLaunchingWithOptions 中调用 * @param handler mlink的回调 */ + (void)registerMLinkDefaultHandler:(void (^_Nonnull)(NSURL * __nonnull url,NSDictionary * __nullable params))handler;
          /**
 * 注册一个默认的handler,当接收到URL,并且所有的mLink key都没有匹配成功,就会调用默认的handler
 * 需要在 AppDelegate 的 didFinishLaunchingWithOptions 中调用
 * @param handler mlink的回调
 */
+ (void)registerMLinkDefaultHandler:(void (^_Nonnull)(NSURL * __nonnull url,NSDictionary * __nullable params))handler;

        
This code block is shown in the floating window

It may be caused by WeChat cache. Log out of WeChat and log in again to WeChat and click the short link.

5. inDebugThe test is normal, but underReleaseCan't wake up normally with one click

  • Configured in the backgroundTeam Is the ID the same asAppThe compilation certificate matches

  • update Correspondinglyprovisioning Profiles

existAppbetween oriOS9+ SafariThe jumps are all accurately matched and this situation will not occur.

When clicking a short link in WeChat or other situations, we will perform fuzzy matching based on the relevant parameters of the device, such as IP address, device model, resolution, etc., so if two users are in the samewifiIn the same environment, if the phone model is exactly the same, user A performs scene restoration, and user B just installs it. User B may restore the scene within an hour.

Because during the testing phase, everyone is on the samewifiUnder the circumstances, the device model and resolution are also the same, so the scene will be restored without clicking the short link. However, in the actual application process, there will hardly be two unfamiliar users, and one user's installation will be suddenly restored.

The short link style is http://xxx.xx/XXXX

iOS9and above, throughuniversal linkjump toAPPYes, soAPPWhat is received isuniversal link

(Note that short links anduniversal linkThey are two different links, do not confuse them)

iOS8the following,AppWhat is received is filled in in the backgroundscheme uri

Short links will be automatically parsed intouniversal linkorschemeto arouseApp

Apprelease

1. App StoreAt the arraignment, yesAdvertising Identifier(IDFA) configuration

SDKwill not be actively obtained in IDFA, if the application uses it, it is recommended to IDFA assigned to JMLinkConfig middle advertisingid parameter.App Going to AppStoreDuring the arraignment, you need to check the following options:jmlink-ios

(1)Serve advertisements within the app

ServeappAdvertisements in. if yourappAds are integrated into the app, you need to check this option.

(2)Attribute this app installation to a previously served advertisement

Track installs from your ads.

(3)Attribute an action taken within this app to a previously served advertisement

Track the subsequent behavior of users brought by ads.

(4)Limit Ad Tracking setting in iOS

The content under this item is actually for youappuseidfaConfirm the purpose, as long as you choose to collectidfa, then this item needs to be checked.

other

1. What isURL Scheme, how to configure

iOSin the system AppPreviously isolated from each other, throughURL Scheme,AppThey can call each other and pass parameters.

existXcodecenter, selectedTarget-> Info -> URL Types. For example, fill in JMLinkDemo of uri schemefor jgscheme, enter in the mobile browser jgscheme://, if it can be evokedApp, indicating that the URL Scheme Configuration successful.

Was this document helpful?

Copyright 2011-2026, jiguang.cn, All Rights Reserved. 粤ICP备12056275号-13 Shenzhen Hexun Huagu Information Technology Co., Ltd.

Open in Docs Center