SignalR and Mobile Devices - mobile

Does SignalR work on mobile devices ?
I've only found this Does SignalR work on Mobile
However there's no real answer there - one of the replys refers to web-socket support however SignalR is supposed to revert to long polling if web-sockets aren't supported.
Has any one used this in a real cross platform application ?

We have built an application which runs on:
Win 7
Google Chrome
FireFox
Safari
IE6/7/8/9/10
Win 8
Google Chrome
FireFox
Safari
IE10
OSX
FireFox
Google Chrome
Safari
iOS5 (IPhone 4, IPad 2)
Safari
iOS6 (IPhone 4/5, IPad 2, new IPad)
Safari
Android Froyo - Android current
default browser
Windows Phone 7
default browser
SignalR works on all very well and will use the best transport for that device/OS/browser. The only problems I have seen are when using Opera browser.
If you have any issues with building a cross platform/browser app let me know as I have seen all sorts of crazy bugs!

While the support on the browsers is good, the support for the mobile platforms is not up to date. Microsoft is not focusing in keeping the android client api up to date (anti Android and iOS?). The documentation is very poor as well. With the help of a couple of non Microsoft resources, I could get it done with some effort.

Related

Direct attestation with Webauthn in Safari

I am creating a React app and am using Webauthn to use device biometrics for authentication.
My implementation works perfectly in Chrome however I get an alert saying 'The operation can't be completed' on Safari or any iOS device.
The error disappears when I set my attestation to 'none' however I need to use direct attestation for this app.
Has anyone experienced this issue before and managed to resolve it?
Thank you
That's a limitation of WebAuthn in Safari unfortunately. Apple confirmed that when they launch passkeys officially in macOS Ventura and iOS 16 they won't support direct attestation either. Whether this means "direct" attestation will return no attestation, or error out instead as it currently does, is still TBD till they officially launch.
For now you'll have to decide to support use of Safari or not. You can either browser detect via user agent to request "none" attestation in Safari, or keep it "direct" and just not allow users to use Safari.

Is there a way to see all installed service workers in browsers in iOS or Andorid and/or manually clear them?

In desktop I can go to chrome://serviceworker-internals/ to see all installed service workers in my chrome browsers and optionally unregister manually.
Is there any similar feature available in Chrome or Safari on iOS or Android devices?
Given that in Mobile devices, browser is always running in background and service workers can be active even if the pages are not open, it's important to see what SWs are potentially running on my device.

iOS/Safari traffic in Jmeter - how to implement with WebDriver for Safari?

How is it possible to implement WebDriver for Safari in Jmeter (client-side)?
What workaround should be used instead of set up a path to WebDriver (because there is no safari driver path like for Chrome web driver)?
I'm confusing that there are no specific "jp#gc - Driver Config" for Safari in JMeter. - Will this absence affect tests or not and why?
By using Selenium you are not emulating traffic, you're launching a real browser on the real mobile device (or simulator) and automating this browser using Selenium API. This is mainly used for automated testing of websites functionality.
If you need to simulate a lot of mobile users concurrently accessing your website - just go for normal HTTP Request samplers. The only thing which indicates mobile Safari is its User-Agent header which can be added to requests using HTTP Header Manager
More information:
iOS User Agents
The latest user agents for Safari

Mobile Safari Push Notifications

A few months back I saw that Safari 7 was allowing push notification and it seemed like a very useful tool except every example of it that i've seen is focused on desktop browsing, not mobile.
Do the Safari push notifications work on mobile and if not is there plans to release this to Safari mobile in the near future?
I guess it is just for OS X, at least for now. I received a mail from Apple broadcasting this: https://developer.apple.com/notifications/safari-push-notifications/.
I am also waiting for web-based push notification on iOS. But it seems Apple is pursuing a native-first strategy on iOS platform, giving native apps much more privilege than mobile web.
[Updated] Web Push Notifications depend on "Service Workers" which are "Supported" in WebKit (Mobile Safari), but the state of Push Notifications is unclear. – Kudos to Chris Talman for the update
https://webkit.org/status/#specification-service-workers
https://w3c.github.io/ServiceWorker/
Since this was 2 years ago, I no longer think this is of service, but Apple has no plan to expand to mobile nor has any plan for push notifications on mobile. I have been on the Apple developer site and have found that there is no way for push notifications on IOS. However, Users using Google Chrome can use push notifications on Android using the Push API (https://developers.google.com/web/updates/2015/03/push-notifications-on-the-open-web?hl=en)
Looks like Safari 16 in macOS 13 will support the Notifications API. Details are vague / possibly protected under non-disclosure agreement during the macOS beta.
Source: https://developer.apple.com/documentation/usernotifications/sending_web_push_notifications_in_safari_and_other_browsers
The Safari 16 release notes doesn't make particular mention to iOS/iPadOS 16 & Mobile Safari, however.
Web API
New Features
Added Web Push Notifications support on macOS.
Source: https://developer.apple.com/documentation/safari-release-notes/safari-16-release-notes
Right now there's no way to send push notifications to mobile Safari nor any plan to add it in the future.
However the latest versions of Chrome on Android started to support the push notifications through the Push API, so Apple might want to add push support to iOS to avoid being outdated by Android.

Is there a way to spoof a desktop browser response to a css media query?

Maybe a browser plugin? Just looking for a dirty, quick way to test some mobile web development.
Here's 3 tools I found pretty helpful for testing media queries for mobile devices within my desktop browser:
Adobe Shadow: You'll have to download the app on your mobile device, and then link the device to Chrome and once you've done so you can inspect your webpages on chrome as they would appear on your mobile device.
Remote Debugging with Chrome for Android: Similar to Adobe Shadow, but I found this to be a lot more reliable when dealing with network requests on mobile devices - you will need a android device with Ice Cream Sandwich however.
Changing User Agent on Safari to debug different browsers straight from your desktop Safari: If you have Safari, it allows you to change the useragent string from the developer tools. Pretty useful if you want to spoof browsers. - Didn't really find this useful for media queries though.
Go into Safari settings, there is one that reads "Request Desktop Website." Check it, then browse to facebook.com Now you can message within browser. No app needed.

Resources