IOS Phonegap Functionality not working first time - ios

I am opening one url in inapp browser. when i return from inappbrowser to my phonegap app. phonegap function like camera,gallery or even device ready is not working. but when i send app in background and resume it then all the functionality is wokring. :(
Where in Android all working fine but in ios not.
I have 3 html pages.from index.html i am opening the page in inappbrowser after i am comming to second.html in which i had use all functionality like camera,gallery.
I had used winload.location for redirection...
I had try lot.
Please Help me .... :(

I had this problem some time ago.
To me was related to the settings of the camera. I used following settings:
quality: 50, // or less for ios as in specifications,
destinationType: parent.window.Camera.DestinationType.FILE_URI, // ! Important
Regards

Related

Firebase Dynamic link doesn't work correctly on IOS 15+

I need your help.
Dynamic link does not work correctly on iOS 15+. The application opens but the link is not transmitted.
Firebase version 8.8.0,
Unity version 2020.3.3 LTS,
Associated domains are written as it should be.
On older versions of IOS, everything works as expected.
On Android, too, everything is fine.
I noticed that the preview page does not open on iOS 15+ and immediately after answering the question - do I want to open my application , it opens.
The problem is solved. It was just necessary to use the percent encoding the link.

Cordova App keydown event from external footswitch dosen't work on iOS

I build a Phonegap app and want to use an external footswitch via bluetooth. On Android binding the keydown Event works fine. In Browser, no Problem, but on iOS it doesn't.
I tested this variations:
$(document).bind('keydown',function(event)
$(window).bind('keydown',function(event)
$(document).bind('keypress',function(event)
document.body.addEventListener('keydown', function (event)
Does anyone have an idea what the problem is?
I tested with cli 8 and 9.
Thanks for Help
I do not have enough rep to comment so having to post this as an answer. I believe PhoneGap's UIWebView on iOS requires input focus in order to capture keydown. In a Cordova app I have worked on in the past, we placed an input off the screen with focus so that the input of bluetooth device would be captured and processed from there.
Recently however I have found that on an Ionic 4 app using cordova-ios 5.1.1, WKWebView via this plugin cordova-plugin-ionic-webview and the below RXJS fromEvent I have successfully captured keydown on iOS via a bluetooth device without having to have the input. I have not broke it down to know if this combo or any one of these has anything to do with it. Hope this helps.
fromEvent(document, 'keydown').subscribe((event: KeyboardEvent) => {
});

PWA iOS getting the sms: tag to open iMessage

We are currently developing a PWA for a client of ours. Everything has been going well, but while testing on iPhone (iOS 12.2) we are having an issue with the tags that have sms:123-456-7890 in the href. You get the "Safari cannot open this page because of the sms: tag" (paraphrasing).
If you are browsing the site via Safari (not in the PWA mode), the anchor tag works fine and your iMessage opens up with the number in it. But when you're in the PWA mode and click the link, you get a version of the message I mentioned above.
From doing research, this appears to be some sort of bug in the iOS 12.2 release, though not officially mentioned.
I'm curious if anyone has had any luck with a work-around for this issue?
Thanks in advance.
Edit..to add some code for the anchor tag....
123-456-7890
I've tried many different variations of the sms (with no // or ;), always same outcome when clicking it as a PWA. With Android, everything works fine in PWA mode.
I did find a workaround by using JavaScript
Code Example:
<a href="#" onclick="openSMSMobile();" >
function openSMSMobile(e) {
window.open('sms:1234567890', '_self');
return false;
}
And in case anyone is wondering, if you'd like to add text to the message body, you can use,
window.open('sms:1234567890&body=textGoesHere', '_self');
For Android you'll need,
window.open('sms:1234567890&body=textGoesHere', '_self');

How to open an app with the iOS11 integrated qrcode reader

I want to use the new in-build qrcode reader in the iOS camera to open an app.
I cannot find the right documentation in the API.
Thanks for your help
Best Regards
Christian
I'v just tested with various URLs. It seems if the URL is http the Camera app opens Mobile Safari. If you know the target app URL (which is declared in the Info.plist) you can open the app with QR codes.
(ex) youtube://user/Apple --> Opens Youtube app

Cordova trying to dial telephone number

I am trying to dial a phone number in iOS, however I only have the simulator and an iPod Touch to test on.
The code uses something along the lines of:
window.location.href = 'tel:01234567890';
Working fine with Android, but in iOS it dies with:
Failed to load webpage with error: The URL can't be shown
Now, I do realise this has been asked before, but the general consensus from some time ago was "It doesn't work, you'll need to use a plugin". There haven't been many questions on this for some time though, and what questions there are seem to suggest it works when doing it programmatically (as above with window.location.href). I have tried the iOS PhoneDialer and the newer version of the same plugin, but both have errors in XCode (ARC forbids explicit message send of 'release') - a bit of faffing and I can get this running, but then PhoneGap doesn't find the plugin - it really feels like I'm hitting a brick wall with this method, and I can't believe something as simple as this requires something so over the top.
I know you cannot auto-dial/auto-call a number for security reasons, but all I need to do is open the dialer with number pre-populated, which is surely no different to a mailto:info#example.com link opening your email client with the sender pre-populated?
So, my questions are:
Has this changed with a recent update to PhoneGap, iOS or XCode?
Or, is it a case that I cannot do this on an iPod or Simulator, and it will work fine on an iPhone?
How can I fix it? :)
You didn't specify which version of Cordova you are using so I'm going to assume version > 3.
Make sure that InAppBrowser, a plugin since version 3, is installed and then open the link by calling it through Javascript like this:
window.open('tel:12345678', '_system')
_system will open it with the systems own browser which in turn will open the call dialog, if you use it against http://maps.apple.com/ it will open in the maps app and similar for other apps which opens for special urls.
Remarks:
As described in the docs of the InAppBrowser plugin the window.open function won't be set automatically. You have to do it your self: window.open = cordova.InAppBrowser.open;. Instead you can directly use cordova.InAppBrowser.open('tel:12345678', '_system');
Make sure your number doesn't have any blankspaces in it (the +
prefix is okay). For example you could use a function like the following,
assuming num is a string.
Function:
function placeCall(num) {
if (window.cordova) {
cordova.InAppBrowser.open('tel:' + num.replace(/\s/g,''), '_system');
}
}
Below Code works perfectly fine for iphone:-
window.open('tel:123456', '_system');
Simulator doesn't support dialer. No need to waste time.
Make sure that the phone number in your href also doesn't have any formatting in it, as on iOS it causes the link not to work in a PhoneGap App. So for example, use tel:0390005555, and not tel:(03) 9000 5555.
I don't believe this is a Cordova issue. I know in native iOS you cannot bring up the dialer on the simulator or on an iPod touch. You will need to test this on an actual iPhone.
I know this is a late answer time.
Try by adding // to the url. Like this tel://xxxxxxxxx and see if it works.
Worked for me in IOS 8.4, iPhone 6, 6+ as of today.

Resources