Clicking on an email link from the Mail app that had "utm_source=eCom" as part of the URL brought me Safari URL where "=eC" was replaced by "ì" (the lowercase i with an accent going left). Final result: "utm_sourceìom"
In the same instance, "utm_content=Face" was replaced with "utm_contentúce".
Other links from the same email with the same content didn't do this. Any ideas what might be causing this?
Related
I'm testing on iOS 13.2 this link from a webpage:
Open IG
It first opens the IG app, and then right away opens IG in Safari, and below displays a message if I want to switch to the app.
why does it make two actions at once?
I want to make only one action - either have it open Instagram right away with the correct path, or open instagram in web version right away.
I know I can use this link format instead:
Open IG 2
But it is not the format I wish to use, but I'm not sure if it supported on all phones, and also it might do nothing if a user does not have the app installed, right?
My app sends the user to Safari to open a URL with this:
UIApplication.shared.open(url)
This works fine with urls I've obtained from TMDB but when I get podcast URLs from queries to http://itunes.apple.com/search?media=podcast&lang=en_us&term=1468013270 I take the collectionViewUrl field from the JSON response and try to send the user there. In the iOS Simulator I get that Safari error message. If I cut and paste the CollectionViewUrl into an actual Safari tab I go to the web page. And if I test this on my actual iPhone I get sent to the podcast app where this show is pulled up. I'm just wondering why the simulator gives this response?
Did you tried to disable "Block all Cookies" feature on the safari settings?
it worked for me
I have an app that relies on deep linking using a custom scheme ://appName for some user email verification. The way it currently works is:
User enters email in app and hits send
Email is sent to user, user taps on "activate" button
Button opens valid website url which then redirects to deep link url, i.e ://appName/auth/tokenId
All was good, and this worked flawlessly on iOS 9 devices, but iOS 10 seemed to break it.
After further investigation:
appName://id=123 opens in iOS9, but in iOS10 safari displays that “the url can’t be shown” for the exact same URL.
They will both work however for the URL scheme alone (appName://)
You can even test this on your devices/simulator to see. Perhaps the change is in safari?
More investigation:
Almost sure its related to Safari.
Any ideas on how to resolve this?
Eventually tracked down this issue and got a response from the CEO of Branch. He said:
Ah interesting find! I just tested a few ways and it seems to reject
typed-in URI schemes with a deep link host & path, but you can still
trigger them in JS and click them on page. You just can't type it in
for some reason.
So beware of this if you are using deep linking in such a way on iOS 10!
I personally ended up just giving the direct deep link URL in the email, rather than embedding a redirect in a nice button. Something like this appName://gotoHere/here
Is there a way to intercept URLs on iOS (iphone/iPad) such that a URL from a specific host is always opened by my app and not by the browser?
Example: http://myapp.com/ref/123 -> gets opened by my app and I parse out the 123
Update
I find it really weird that this isn't allowed on iOS (iphone/ipad). On Android I've been able to intercept a url and whenever it begins with http://myapp... it gets opened in my app.
How does the community solve the issue of: Say a user who has my app installed on their iphone gets a link from a friend in an email. When they click it, if the link can't be opened in my app...how else am I suppose to do anything good with the shared url? OR should I not be passing http:// links but myapp:// instead??
The scheme name (or protocol) of a URL is the first part of a URL - e.g. schemename://. For web pages, the scheme is usually http (or https). The iPhone supports these URL schemes:
http, https, ftp Web links* (Safari)
mailto E-mail links (launches the Mail app)
tel Telephone Numbers (launches the phone app)
sms Text Messages (launches the SMS app)
iPhone apps can specify their own custom URL scheme (for example, myapp://doStuff). But it's not possible to redirect a specific http host to be opened by your app.
To add a custom URL scheme to your app follow this guide,
Custom URL schemes
My app uses a custom URL scheme so i send a link to my users in an email which when clicked, launches my app installed on their devices. This was working seamlessly till iOS 6 came into picture.
Now when the users click on the link or even type the address manually in the safari they get an error saying "Safari cannot open the page because it is a local file."
Wondering if anyone else encountered the same or if someone has any pointers in this regard !!
Any help much appreciated...
Update: it works if I only give my app's custom url without any parameters.. e.g. if I do "reader-app://" it launches my app but if i do "reader-app://doc=xyz" it doesn't !
try: reader-app://?doc=xyz (add a question mark after //) this way you'll specify a query string. It works for me, but it presents an alertdialog asking the user if she wants to open the url with my application
Try to remove the - sign from reader-app://.
My URL was not working until I removed underscore sings from URL.
Ex:
my_app:// is not working.
myapp:// is working.
That is just a guess.