We are developing iOS apps.
The user registration function uses the method of email address authentication to cause the app to Deeplink from the authentication URL.
Yahoo Mail (@y ahoo.co.jp) is the Yahoo Mail Client App (https://itunes.apple.com/jp/app/yahoo-%E3%83%A1%E3%83%BC%E3%83%AB/id669931877?mt=8)
When opening in , you are faced with a problem where you cannot Deeplink from the client application to the external application.
I use URL Scheme as a way to make an external application Deeplink from the above authentication URL.
Also, the client application of Yahoo Mail is designed to open the URL in WebView within the client application.
It seems that the URL Scheme has not been handled on the WebView side.
When you open the authentication URL, you have a page to call the URL scheme in Javascript as follows:
<script type="text/javascript">
var fallback_url = "null";
varurl_scheme="[URL SCHEME]";
var loc = window.location;
function redirect(loc){
loc.href=url_scheme;
if(fallback_url.startsWith("http")){
setTimeout(function(){
loc.href=fallback_url;
}, 3000)
}
}
</script>
<body onload="redirect(loc)">
<p>
<a href="#"onclick="redirect(loc)">Open the app</a>
</p>
</body>
On the Yahoo mail app side, there is a possibility that the URL scheme of the external application or Deeplink in Universal Link is controlled.
This is because other mail client apps (iOS genuine mail apps, Gmail apps) were able to Deeplink to external apps in exactly the same way.
ただし However, the AppStore app was able to Deeplink both the URL scheme and Universal Link.
(Other genuine apps, such as Music, could not be Deepplink in the same way.)
I looked it up a little on the web, but I couldn't find a page dealing with a similar problem, so I ended up asking a question.
In application development where user registration is required, I think the flow of user registration from authentication URL is common, so
I hope it will be helpful for those who have faced the same problem or who will face it in the future.
Thank you for your cooperation.
We have received your opinion from Yahoo official.
Currently, only those on the whitelist work.
Users using Yahoo Mail clients may need to be prompted to copy the authentication URL and paste it into a browser such as Safari.
Yahoo!'s response:
"We are pleased to inform you about your inquiry, ""If you open the authentication URL in the Yahoo! mail app's WebView, you cannot Deeplink to the app."""
For browsers in the iOS version of Yahoo! mail application, URLs that launch other applications are currently designed to work only with whitelisted ones.
Regarding the event you informed me about, this is the current specification of the iOS version of Yahoo! mail app.
I'm afraid I can't open the screen in any other way on the Yahoo! mail app.
From now on, we are considering how to handle all URLs that start any app, but we have not yet decided when to handle them.
This post was posted by @MameGO as a separate response to the community wiki.
© 2024 OneMinuteCode. All rights reserved.