Current location on iOS 10 dosen't work - uiwebview

I have been working on an iOS app for iOS 9 and I have been using
NSLocationWhenInUseUsageDescription
I updated my device to iOS 10 and it didn't work anymore
is there an update or something to let it work on iOS 10?

It seems that Safari is blocking Geolocation API calls on pages served over insecure connections. In my specific case, my app embeds a website (HTTP) that uses Geolocation API calls and since iOS 10 it does not work anymore. I will update the website to HTTPS and hopefully that will fix the problem.
https://developer.apple.com/safari/technology-preview/release-notes/

Related

How to allow mobile devices, (e.g. Phones, Tablets) to have access to python flask server using HTTPS

app.run(host='0.0.0.0',port=443,threaded=True,ssl_context=(
'certs/mydomain.com_bundle.crt',
'certs/mydomain.com.key'),debug=False)
This is my code in flask.
The strange things is, I can use PCs like MAC OS and WINDOWS to enter the website using HTTPS, no warnings at all and all certificates are shown as secured. But I just can't enter it using my mobile devices like my phone and my android tablet. Haven't tried iPad or iPad pro yet cause I don't have one.
All errors are "REFUSED TO CONNECT". That seems pretty much to be a problem in the program.
However if I switch it to HTTP & PORT=80 , I can enter it using basically all devices.
So does anyone know how to allow mobile devices to enter it using HTTPS as well?
My bad.
For some unknown reasons, my phone's browser didn't use HTTPS, it used HTTP as url proxy instead.
In the best of my knowledge, most browsers set HTTPS as the first priority for connections, yet the chromes in both of my mobile devices used HTTP, so did the default browsers...
So changing the url proxy to HTTPS fixed the problem, just that simple.

Outlook web add-in for iOS not persisting 3rd party cookies - works in Safari

I am developing an app for our company; because of legacy reasons when the user logs in we use a
third party JSESSIONID cookie.
Issue
What I am seeing is that the cookie when sent to the client is not saved, and therefore not sent on subsequent requests to the server. As such, the server does not think the user is logged in.
Normally I would attribute this to the blocking of 3rd party cookies feature of WebKit/View, but I have turned this off in the Safari settings.
As an FYI we have an Ionic/Cordova project that is based on the same code and it works fine in iOS.
If I use the Add-in on MacOS (Native Outlook and Outlook Web) it works fine.
Works fine in Chrome/Firefox as well.
Works in Android on Outlook for Android app
Our server sets all the correct CORS headers as well.
Since the add-in is just a webapp, I can launch it directly in Safari on iOS, and login there; this also works.
I am aware that Apple regressed WebKit in version 12 (CORS related), but they fixed it in the latest version of iOS 13/MacOS. However, Outlook for iOS (WebView) does not appear to be saving cookies. I can see that looking at the requests coming to the server, they are missing the SessionID which was sent to the client.
I can also see it from the requests when I run through a proxy (Charles) that the Cookie header is not set.
It is also almost impossible to debug the WebView in Outlook for iOS (the webview does not show up in the Safari Developer menu on my Mac). I am easily able to debug other WebViews such as the mobile project mentioned above.
Question
Is the Webview configured to prevent 3rd party cookies explicitly? if yes, can it be turned off somehow? I have turned off the 3rd party tracking in Safari, but that does not appear to help.
I have been reluctant to use the DialogJS API since the login flow is working on my Mac; and this would considerable change our UX for login. Also, I have not seen any examples of using this API for a mobile project. Can it be used with a mobile project, and if so what would it look like?
All the examples relate to the desktop only.

Chrome extension accessing UWP app?

We have chrome and FF extensions which works with a native messaging app. Recently we developed edge extension and a UWP app which works in the same way. Now the user has to install two separate native messaging apps if they want use any chrome/FF/Edge browsers.
My question is, is it possible for Chrome/FF extension talk to windows UWP app?
Unfortunately no. On Windows, both Chrome and Firefox use the registry to locate the native applications manifest, and Windows Store apps are forbidden from writing to the registry. (ref: Prepare to package an app (Desktop Bridge)
If something changes (Store apps gain the ability to alter the registry, or Chrome and Firefox introduce an alternative way to locate the manifest), then it might be possible. Though likely not via the UWP app directly. UWP apps appear to support standard input and output, but the way they are run prevents access to it. It might however be possible to create an intermediary Win32 app that can communicate with the UWP app via the AppService and the browser extension via stdio.
Afterthought: Enpass Password Manager (win32) was ported to the Windows Store reportedly because of API issues, and has a browser extension for Chrome and Firefox. Might be worth asking them how they pulled it off. I did some more digging, and figured it out. localhost loopback, a custom url scheme, web sockets, and browser verifications is how they are doing it. Not an ideal solution, but it seems to work.

android webview autocomplete/autofill

I am creating a web app which requires a login. It seems my webview autofill/autocomplete does not work. Is this feature disabled by default? In my search through the web I have found many posts asking how to disable this feature, leading me to believe that it is enabled by default. My credentials are remembered and autofilled fine when testing my web app in chrome for android. I have also loaded gmail in my webview and tested to see if autofill worked, and I still could not get it to work. My app is set for SDK 18 and up.
Thanks

node http2 and safari

I am well into building an single page application using nodejs and the http2 module. The client end is using Polymer and is a progressive web app, with a fairly minimal index.html. I have been doing most of the development in chrome, and am reasonably happy, since this is an intranet application and I can dictate the brower.
I would like to support the ipad, albeit perhaps at lesser performance. I have to borrow my wife's if want to try anything, and I couldn't get it to work at all. I do have a mac laptop and tried accessing my (in development) site using safari on that (I also have chrome on it and that works fine). With Safari it doesn't get anywhere. In fact with the web inspector open it doesn't even appear to have loaded the basic index.html file.
I am assuming that safari doesn't support http2. I am not sure what I should do about it through. How do you gracefully fall back to something else?
Safari does support http/2. Test your site at https://www.ssllabs.com/ssltest/ and see if you've a cipher config that safari supports.

Resources