Custom back button for Google Chrome - ios

I've noticed in the latest iPhone Gmail app, that if I tap a link (and if I have the Google Chrome iPhone app installed) it opens up Google Chrome, and changes the back button in Chrome to show it going back to "Gmail"
I was wondering if anyone has managed to find a way to get this to work with their own apps, or if it's a private Google API?
I've tried Google's OpenInChromeController (https://developers.google.com/chrome/mobile/docs/ios-links) though that only seems to provide helper methods to open Chrome, and not change the back button

Google Chrome uses the x-callback-url scheme to create this type of behavior.
One example is something like this:
googlechrome-x-callback://x-callback-url/open/?x-source=MyApp&x-success=com.myapp.callback%3A%2F%2F&url=http%3A%2F%2Fwww.google.com
You can customize it to have a different response for a success or failure, and define whether Chrome will open the link in a new tab. There's more information available lower in the document that you linked to.

Related

Is there a way to avoid opening the link in browser

When using Huawei App Links (Because Firebase dynamic link doesn't work for Huawei App Gallery), this is the kind of long link that is generated.
https://example.drcn.agconnect.link/?deeplink=https%3A%2F%2Fexample.com%2Freferral%2F3c3432x&android_deeplink=https%3A%2F%2Fexample.com%2Freferral%2F3c3432x&android_open_type=2&android_package_name=com.example.mobile
When clicked on this link on an Android(Google) device where my app is not installed, I see these options:
"Open" - opens the deep link i.e https://example.com/referral/3c3432x in a browser
"Download" - opens the Google play store app with my app page
The download behavior is fine, but I don't want the open behavior, since that link actually does not exist. I understand this link still be accessed on a desktop and might try to go to the link on a browser, but for now we are okay showing 404 in such cases.
Is there a way to avoid the "Open" option? Or better would be to stop showing this screen and immediately redirect to application if installed or play store of not installed. Just like how Firebase does.
I even tried the option of landing_page_type=2 as listed here: https://developer.huawei.com/consumer/en/doc/development/AppGallery-connect-Guides/agc-applinking-createlinks-defined-0000001055514692 but that doesn't seem to work, it always show the Open/Download page irrespective of the value.

Disable iOS deepviews on Branch.IO

I´ve been battling with something with Branch.IO.
I´ve searched and searched for the answer and nothing... Everytime I click on a link provided by Branch.IO and i´m in iOS, it ALWAYS goes to a deepview webpage. I want to either open the app or open the store without this middle page.
Android and Desktop there´s no deepview.
I´ve checked inside the configuration inside the Branch.IO dashboard and I have every deepview disabled... I tried to pass in the link data "ios_passive_deepview" with a False.
No matter what I do it ALWAYS goes to this Deepview....

How to get WebRTC logs on Safari Browser

I have been trying to get the webrtc logs for my web application running over safari browser, similar to what we get in firefox by going to the page about:webrtc and on chrome by using chrome://webrtc-internals.
Alternatively, Is there any js API for webrtc to get the logs on the console itself, similar to what we use in Native Android and iOS applications using the RTCLogger.
Thanks in Advance
On Safari Version 15.4 (17613.1.17.1.13), useful information can be retrieved this way:
In Preferences... -> Advanced, ensure Show Develop menu in menu bar is enabled.
In the Develop menu Settings, select the Console tab, then ensure WebRTC Logging is not Off (and so choose either Basic or Verbose).
At that point the Console will show WebRTC events and data structures.
e.g.:
Solution
If you open the Safari and also open the console application, you can filter WebRTC logs with these filters:
category:WebRTC
process:safari (optional)
just copy-paste them one by one to the search bar in the console application. Actually, the second one is optional (process:safari).
I'm not sure about the others but at least you can see:
SDP offers and answers
ICE candidates
WebRTC statistics
incoming and outgoing video frame counters
Fun Fact
Based on the official documentation of WebRTC you can't see logs on Safari :)
Useful Infos
Do you know there is a WebRTC menu in the Safari. Check the Develop > WebRTC sub-menu
Check the Safari Technology Preview app for more options and flags
If you’re not logged in as an administrator, you need to enter an administrator name and password to search for and view log messages.

Firebase dynamic links does not work on iOS gmail

I have setup a firebase dynamic link like explained here https://www.youtube.com/watch?v=sFPo296OQqk
When I tap on my dynamic link via Notes app, it opens my app as expected.
But when I tap on the dynamic link via gmail app on iOS - it just open the Chrome Browser on iOS and redirects me to the fallback web URL. It does not open the app.
Any help is appreciated.
I believe the iOS Gmail app allows you to select whether links will open in Chrome or Safari. When Chrome is selected, Universal Links (which is what Firebase dynamic links piggyback on) do not work. You'll need to somehow open a web page with the link and then present a button for users to click that will open your app. At Branch.io, we use our deepviews feature for this.
For more info, see this list of apps that support Universal Links.
You should follow the below link.This will definitely fulfill your query.
Firebase dynamic link doesnt work in safari swift

How do I avoid the "Open this page in 'appName'" alert from appearing in Safari for iOS?

I am creating a flow that:
1) takes the user from my iOS app to my website through Safari
2) and then navigates back into the app via javascript
However when I try and redirect the user back to my app from my site using url schemes, i get the familiar "Open this page in 'appName'" alert.
Is there a way to avoid this alert from showing up? Is there some way to whitelist my website as a source for my app to allow me to direct the user back to my app w/out any alerts?
It seems like it might be possible with Universal Links, but I am wondering if there is a simpler way to do so.
EDIT: I should have mentioned that I have the unique requirement that I need to use Safari. I am processing donations in my app, and Apple requires you to go this through Safari and not a webview. Any ideas? –
You can achieve this using webView instead of Safari,so that
control will not go out of the App.
Now the problem is how to get the click from webView, for that you can
use this approach
How to invoke Objective C method from Javascript and send back data to Javascript in iOS?
I have integrated this approach in my App so this approach will work for sure. It feels like you are in APP & some times it will diificult to differentiate between WebPage & native page

Resources