The account settings page for registering an app accepts just valid http:// url schemes. We would require a custom url scheme in order to redirect back to our iOS app. Is there currently a way to provide a custom url scheme or if not, would it be possible to allow custom URL schemes from your side?
(I work at Asana.) We agree those would be useful. There is currently no way to use non-http schemes but we will look into adding them soon. Stay tuned!
Related
I still don't quite get it.
As far as I understand it we should do https redirects instead of using custom url schemes because everyone could define the custom schemes into their apps. Why are then Apple's solutions SFAuthenticationSession(used before iOS 12), ASWebAuthenticationSession designed to use custom url schemes?
We have universal links enabled, so I thought it should be fairly easy to use a universal link. To test that I passed the https redirect to the ASWebAuthenticationSession and checked in the application:continueUserActivity:restorationHandler: callback in the app delegate for the redirect. It worked. Trying the same thing for the SFAuthenticationSession on iOS 11 on the other hand fails.
Am I overlooking something here? Isn't this really a security problem or am I listening at the wrong place to get the callback for the SFAuthenticationSession?
What is the correct format for a redirect URL when authenticating with OAuth2 and the Harvest API from an iOS application?
oauth.com states that a redirect URL for a native application can look like myapp://callback. Problem is, Harvest doesn't accept such a redirect URL. It seems to require prefixing it with http/https, which causes problems when redirecting back to the iOS application at the end of the authentication flow. I don't seem to find anything relevant in the Harvest API documentation.
I have added a URL Type in Xcode where I set the Identifier value to com.example.myapp and the URL Schemes value to MyApp. No matter what redirect URL I specify (given the format mentioned above) in Harvest the authentication flow always complains that Safari cannot open the page because the server cannot be found. I am able to open the app manually with the appname:// URL from the
It sounds like you're looking for the URL to use regarding redirection from a web call. I'm not certain on oath2, but on SAML it is something like
https://where you are signing in/SSOpage?RelayState=https://where you are going
I hope this helps get you to your answer.
If anyone else has this issue, the identifier and URL Schemes should not be com.example.myapp and MyApp, respectively. You only need to set the URL Scheme to com.example.myapp
I'm having a problem for deeplinking in iOS when the user haven't installed the app. I can't use universal link because the link that's access by user will be a redirect link to the link that have the AASA file. The link that'll be clicked/accessed by user is "deeplink.example.com/{input}" which will redirect to "api.example.com/api/v3/deeplink/{input}", so I can't use universal link, so that endpoint will redirect to URL Scheme instead, like myApp://deeplink/{input}.
I can't find a solution for this problem when user haven't installed the app while still using url scheme, so I'm thinking instead of redirecting it to url scheme, i'll put the url scheme in branch.io and redirect the endpoint to branch.io, like branchdeeplink.com/{input}.
The problem is, can I pass the the input in branchdeeplink.com/{input} to custom url scheme in myApp://deeplink/{input} using branch.io?
A Branchster here -
Passing in query param in the URI scheme as in the example shared is currently not possible. Since you can already attach custom data to your deep links we don't support query params for URI schemes. When you are creating your links you can add
$deeplink_path = product/123
Since Branch automatically appends URI scheme to your links, when the link would open your application like this -
yourUriScheme://product/123
which you can use for in-app routing.
When the users don't have your app installed, they'd be routed to either App Store or the URL specified under iOS redirects in the Configuration Section of Branch Dashboard.
In Twitter's Developer Documentation we can read the following:
Mobile apps with app-specific protocols must use just the protocol
Example:
You want to use example://authorize as your callback URL
Add this to both your Twitter app dashboard and your call to oauth/request_token: example://
However; in the Developer's Dashboard I am not able to enter a protocol only URL, or any URL beginning with other than http or https.
My reason for wanting a protocol only URL is so that I can use in an iOS app that uses OAuthSwift to access web APIs.
Any ideas anybody?
I haven't found the answer to the original question but I do have an excellent work around. So, for anyone else who might land here:
The web app at https://oauthswift.herokuapp.com/callback
will perform redirections. If you access that web site with the url https://oauthswift.herokuapp.com/callback/target then it will redirect to oauth-swift://oauth-callback/target.
So:
In the Twitter Dashboard enter https://oauthswift.herokuapp.com/callback/SomeName for your app's callback URL
Register oauth-swift as a URL scheme in your iOS app's URL Types
In your iOS app, use https://oauthswift.herokuapp.com/callback/SomeName as the callback URL for the OAuth authorization request.
Voila. Twitter will redirect to https://oauthswift.herokuapp.com/callback/SomeName which will in turn redirect to oauth-swift://oauth-callback/SomeName, allowing your iOS app to regain control of the flow.
If you find any of this confusing then this might help: http://iosdevelopertips.com/cocoa/launching-your-own-application-via-a-custom-url-scheme.html
Is it possible to get branch.io to try to open the iOS app with a specific HTTPS URI such as https://example.com/openapp?
I can only set up iOS URI Scheme which the app does not have and will not have.
Also is it possible to pass query params through branch.io?
If you wish to open an app with a specific URI scheme, the said app should be configured/ modified to handle the URI scheme. If it doesn’t support the particular URI scheme you will not be able to open the app.
You can pass information to your app along with Branch links by appending query parameters. You can also create Branch links dynamically by appending the query parameters to your Branch link sub-domain.
Here are the formats you can use based on the link subdomain: