When I long press on the hyperlink https://www.myapp.com in the Notes app, I don't see any "Open in My App" option. I have made sure of the following:
I have a apple-app-site-association file hosted at
https://www.myapp.com/apple-app-site-association
I have added applinks:www.myapp.com in associated domains in the
entitlement file.
Entitlement file is added in the target bundle resources
How else do I debug this? Universal deeplinking is just not working!
I was supposed to test the testFlight build and not the one installed from XCode.
Related
I think I implemented universal URL correctly and it is working fine when I launch the app directly from the Xcode but if I am archiving the build and sharing it via tesflight or diawi I am not able to open the app using URL scheme.
Make sure your Associated Domains are in both entitlement files: "Debug" and "Release".
In my case all domains were listed in Entitlement-Debug.plist file but the Entitlement-Release.plist was empty.
After adding them manually to the 'Release' file - app installed via TestFlight started working with Universal Links.
Select All and Add your domain like this.
Make sure you have both release and debug entitlements.
I'm new to iOS and managed to implement the iOS Universal Links for an app following this.
I have created and uploaded the apple-app-site-association and configured/prepared the app to handle universal links.
It all works well and I can test it successfully when I build the app through xCode into a real device. However the universal links do not work when installing the app via TestFlight.
When installing the app via xCode I can see the HTTP request to the apple-app-site-association file in my web server. But when installing it via TestFlight doesn't seem to try to fetch the association file.
Does anyone knows if this is expected or how can get universal links working when deploying on TestFlight?
Make sure your Associated Domains are in both entitlement files: "Debug" and "Release".
In my case all domains were listed in Entitlement-Debug.plist file but the Entitlement-Release.plist was empty.
After adding them manually to the 'Release' file - app installed via TestFlight started working with Universal Links.
Distribution via Testflight will also not work, if you have protected test-Environments and use ?mode=developer to bypass Apple's CDN. Developer mode is only taken into account if the App is signed with a development profile.
Reference here: https://developer.apple.com/documentation/bundleresources/entitlements/com_apple_developer_associated-domains
I was facing the same issue. The fix was to use the same BRANCH_KEY for both Debug and Release mode.
I am trying to finalize my iOS application, the problem I encounter is that I can not generate file .IPA file export from the archive that is created.
When I deploy the application directly to a device, the application works, as well as in an emulator.
I do not have a distributor account on Apple, I use my iTunes account as a developer account.
Is there a way to generate the .IPA file so that I can share my application so that others can test it?
I thank you in advance :)
Edit your app Scheme, Go to Run
Select Info Tab and Change the build configuration from debug to release,
it will help you to encounter your issue.
Quick Solution, goto archive section and change configuration to debug. it will allow you to generate .IPA
For internal testing purpose, you can drag .app file from Products folder of XCode after running app on device as target & drop into iTunes Connect. Get .ipa file by Right Click on app icon in Apps section of iTunes .Select Show In Finder.
I have integrated the Branch SDK through Cocoapods in my iOS App.
Branch.io settings:
Settings -> Link Settings -> I have checked these three options,
1. Always try to open app
2. I have an iOSApp -> Updated the values of "iOS URI Scheme" & "Custom URL"
3. Enable Universal Links -> Updated the values of "Bundle Identifier" & "Apple App Prefix"
Finally, I got a short URL generated by Branch.io
iOS App configuration:
1. Added a branch_key in Info.Plist
2. Added a URL scheme in the Info.plist as,
3. Enabled the Associated Domains in the Capabilities tab & added the "applinks:bnc.lt" as an entitlement
4. Also enabled the Associated Domains in the Apple Developer portal
I have followed those above steps for integrating the branch.io in my iOS App for the deep linking to work. I have tried deployed the App through Xcode & also tried deployed the App through Adhoc provisioning. But that short URL is not opening My iOS App
Please do the needful on this issue.
Thanks,
Govindakarthikeyan
When an app has been correctly configured for Universal Linking but Universal Links still fail to open the app, the issue is often that Universal Linking for the app has inadvertantly been disabled by the user.
Disabling Universal Linking is, unfortunately, very easy to do by mistake. When an app is opened via a Universal Link, tapping on the "bnc.lt" or "app.link" button in the upper right-hand corner of the screen, as shown in the screenshot below, will disable Universal Links for the app.
To re-enable Universal Links for an app, tap on a link from Notes and select the "Open in..." option, as shown in the below screenshot.
I completed to develop my first app. Right now i want to distribute my beta throught https://testflightapp.com
I tried to create .ipa file with this tutorial - http://help.testflightapp.com/customer/portal/articles/402782-how-to-create-an-ipa-xcode-4
In the very beginning i should select Entitlements, but there is not such category as Code Signing..
Any helps? Thnx.
PS I have a developer account.
UPD. Does somebody create ipa files for TestFlight on XCode 4.3? How do you do that?
I skipped entitlements altogether. With Xcode 4.2 and later I have not needed them.
Make sure your Archive Scheme uses your Debug configuration. Then just do an Archive of the project (under the Product menu). Save the Archive someplace. Then drag that Archive file onto the TestFlightApp's green "Upload Build" button. That easy. No messing around with entitlements, etc.
Before you do this, make sure you can actually build a correctly formed archive by building, and e-mailing it to one of your testers and see if it can be loaded. There are a bunch of things that have to work before you can use TestFlightApp. Just because you can Build and Run from Xcode doesn't mean that it will work on a remote device that doesn't already have your provisioning file. For example, you have to have your App ID, provisioning profiles and Device ID's all configured correctly via the Provisioning Portal. Once I did that, and verified that my .ipa files can be installed manually, then just uploading to TestFlightApp.com worked without having to do entitlements.
I wrote this up and put it on TestFlightApp's support forum, but for some reason TestFlightApp.com won't let me into the support area so I can find it - I can't use my login to access their "Tender" account.
That's because that tuturial was done for another version of Xcode.
Just create a new property list file (Entitlements.plist) in your Xcode project and it let you edit it as a Entitlements file just fine.
The What's New in Xcode (pdf) documentation states that:
The iOS platform has supported entitlements for a while, and with Lion, Mac OS X does as well. With Xcode 4.1, the project editor provides a UI for setting up entitlements for Mac OS X applications. You can set entitlements for each target in the project editor. There is also a default code-signing entitlements file available in the file templates in the utilities pane.
In the Summary tab of your project editor is a section titled Entitlements. Check the "Enable Entitlements" box to have Xcode automatically create an Entitlements plist for you. This section also governs the entitlements' interaction with iCloud and Keychain.