Is there a way to use the mailto: or message: scheme in a PWA in iOS 12.2? - progressive-web-apps

I've built a PWA using Ionic 4 that had a "Contact" Button with a simple href using the 'mailto:' scheme.
Contact
This used to open the native Mail app in iOS 12.1 when starting the PWA from homescreen. Since I updated to iOS 12.2 it just opens the PWA internal Safari with a message that Safari can't open links starting with 'mailto:'
I have tried using other URI schemes like 'instagram:' or 'message:' but they all lead to the same problem. The only one that I have found to still be functional when I start my PWA from homescreen is the 'tel:' scheme.
Has anyone else encountered this problem and has any idea how to still open URI schemes other than tel: from a PWA that has been opened from homescreen?

I managed to get it working using the below click function.
Tested on both Android and iOS PWA.
()=>{
window.location.href = "mailto:support#example.com?subject=" + emailSubject + "&body=" + emailBody
return
}

I have a PWA which is installed on iOS 12.2, my link uses target="_blank" and it works.
Did you try this ?
Have a nice day,

Related

I am using in app browser in ionic . Its opening the url on the mobile browser instead of app

I am using in app browser in ionic to implement my web in app.Its working fine but its opening the url on mobile browser instead of opening it on mobile app. I am using this in my .ts file
ngOnInit(){
this.iab.create('url','_self','location=no');
}
So adding _self: Opens in the Cordova WebView if the URL is in the white list, otherwise it opens in the InAppBrowser.
So you need to have _blank instead.
Following should work as expected.
this.iab.create('url','_blank','location=no');
More info can be found here

Opening facebook page and app store using ionic 3 in iOS

I wanna open my facebook page link using the ionic: It's working in Android using:
window.open('fb://page/620967164688741', '_system')
and through some tutorials I came to know that in order to open Facebook page, use the:
window.open('fb://profile/620967164688741', '_system')
But even after doing that, I'm unable to open.
And same goes with open the store, on Android it's working fine but again issue on iOS. Below is the code:
let promise = this.market.open('com.teach9.teach9');
Can someone correct me where I'm making mistake?
How about you check this plugin out for iOS - "inAppBrowser" at "https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-inappbrowser/"?
P.S. In iOS you should be able to open any webpage inside the inAppBrowser, Make sure that the target is set as "_blank" instead of "_system".

Branch.io - How to setup universal links/App links in Ionic app

My app is built on ionic 1 and I have followed this guide to get things working. https://github.com/BranchMetrics/cordova-ionic-phonegap-branch-deep-linking When you click on the branch url, the app opens up fine.
Now I want to setup android app links. When I receive an email with my web app url, eg: https://app.example.com, this should open up the app if mobile app is installed. If not user should be taken to play store/App store.
Also if the link has query params (the query params will be dynamic), this should be passed to the mobile app. eg: https://app.example.com/mypath?query_params=1234567890
Based on the path in the url, the user will be redirected to the respective page on the ionic app.
I have setup the branch sdk bower install branch-sdk. When I click on the url (https://app.example.com) this still opens up on browser. This is how my index.html in ionic app looks like.
<script src="lib/branch-sdk/dist/build.min.js"></script>
<script type="text/javascript">
console.log("Branch SDK Loading");
branch.init('key_test_ikEKvQjiZRwV1LXZ2hUlamfewwhVQ5rw', function(err, data) {
console.log("Branch SDK Loaded");
console.log("Branch SDK Err and Data ", err, data);
});
</script>
Any idea how to set these things up?
Alex from Branch.io here:
Everything you've described should generally be working once you've done the initial integration process. If you haven't already, I'd suggest reviewing our main integration guide to make sure all the steps were completed.
If you're still having difficulty, get in touch with our Integrations team. They're fantastic!
EDIT: this is due to using Postmark for email sending. To understand why this is a problem, take a read through this blog post. It's primarily about iOS Universal Links, but App Links work almost exactly the same way.
To get this working, you'll need to turn off link tracking on Postmark.

How do I open any app from my web browser (Chrome) in Android, automatically?

I am struggling a little bit. I have a common url like www.domain.com/test.html
and i want Android users to get my app open if "test" is included, otherwise if they don't have the app their should be directed to the play store. I got everything implemented and it works with mozilla browser. But using chrome on Android it should be forbidden to automatically open the app if it is available!?. Now if the user enters www.domain.com/test.html and i recognize he is using Android and Chrome i tried the intent stuff in a script in a redirected www.domain.com/android_chrome.html:
<script> window.open("intent://scan/#Intent;scheme=zxing;package=com.google.zxing.client.android;S.browser_fallback_url=http%3A%2F%2Fzxing.org;end","_self")
</script>
But the App won't open automatically. If i use a regular Link:
Take a QR code
it works. But i want to let it open automatically!
Google restricted starting intents from javascript apps, that's why it isn't working. Security reasons I guess. You should just display nice big link to let user switch to your app instead of website - or let him continue if he doesn't want to launch the app.
Forcing users into using app is bad, IMO. Splash screen suggesting to use it is okay, but don't push it.

Not able to Close blackberry 7 browser from my code

Thanks! Hello everyone! I am making a BlackBerry 7 mobile native application. On click of button from my native application. It will be open a URL in a separate browser. So, I want to close the opened browser. The URL it is opening. This URL is separate domain, but this is my page, in this page i have tried following code. But, it is not working -
blackberry.app.exit();
window.close();
System.exit();
I have tried to open the URL in my native application using iframe. But, here always taking me splash screen instead of loading URL.
Are you using WebWorks or Cordova (nee PhoneGap) ? One solution is to use Cordova 2.9 (the last version to support BBOS) and the InAppBrowser API.