Post not yet marked as solved
Hello,I've been developing a web app which utilizes the google maps javascript api and the markerwithlabel extension.After a bit of testing I found after having zoomed in on a marker, zooming out using a pinch gesture causes the entire Safari/Chrome tab to crash on an iPad 2 running iOS 8 and 9.Here is the code I used:HTML<div id="maptest"/>Javascript$(function () {
var map = new google.maps.Map(document.getElementById('maptest'), {
zoom: 4,
center: new google.maps.LatLng(0, 0),
mapTypeId: google.maps.MapTypeId.ROADMAP
});
for (var i = 0; i < 10; i++) {
var marker = new MarkerWithLabel({
position: new google.maps.LatLng(i, i),
map: map,
labelContent: "A",
});
}
});Css#maptest {
width: 100vw;
height: 100vh;
}You can check it out in this fiddle:http://jsfiddle.net/mac89/h8w3v7v0/15/The crash seems to only occur when using a label, in this fiddle the crash does not happen:http://jsfiddle.net/mac89/h8w3v7v0/17/Decreasing the size of the map seems to lessen the chance of the crash occuring. If the markers are placed close together (0.0001 distance) the crash does not occur either. Panning and zooming in causes no issues whatsoever.I'm at a loss as what to do with this. I reckon this is a bug, because on the desktop or the Android device I've used, this does not happen.
Post not yet marked as solved
Hi.I've got an iPad Air 2 and recent iOS 9.2.There is an issue with it. I'm currently working on WebGL web application. If you launch WebGL web application, using frame buffers (for example this demo from Chrome Experiments: http://labs.fluuu.id/tubes/), make Safari application go to background (click the home button, then double-click the home button, press the Safari icon in the multitasking bar), it appears that Safari will clear the frame buffers.My question: Is there a way to restore framebuffers?Thanks
Post not yet marked as solved
Hi guys,i am new to the iOS plattform as a developer and struggeling a bit with the new WKWebView.I made an app that handles registration and login process with nativ views and communicates via REST API with the Server.In one View i use the WKWebView to show an Web-Interface. This is not locale on the phone. Everythings is working fine instead of a file upload.I can choose images via camera or from the library, but after submitting the files the webview load the first page of the web interface.I tried this with 3rd party uploaders like plupload.com or blueimp.github.io/jQuery-File-Upload ... but it never works.The documentation of the WKWebView does not mention anything related to file handling.So i am asking for some help in this forum.The upload works in Safari and Chrome by the way. But the SFSafariViewController is not a possible way for me because i con not customize the view.Thanks and sry for my poor english.
Post not yet marked as solved
Hi!I currently developing a mobile website and found that Safari on iOS has some problems setting the focus on inputs when they are inside an iframe.When in a page you have many inputs you can tap on a field and then use the next / previous buttons on the keyboard to navigate between the fields. When the focus move to another input Safari scroll automatically the page centering the field in the page. This is great and works well.The problem is when the fields are inside a page of an iframe. In this case when you change focus from one field to another Safari has some kind of issue; the page โbounceโ and the focused field is not centered in the page.I have made a video of a simple page that has this issue. In the first part of the video the page without the iframe is loaded and the focus works correctly. In the second part the page with the iframe is loaded and the issue is visible.http://www.dale1.ch/documents/safari_iframe_focus_issue.movThe code of the first page (testinput.html) where the focus is correctly handled is this:<!DOCTYPE html>
<html>
<head>
<title>Test input</title>
<meta name="viewport" content="width=device-width, height=device-height, initial-scale=1, minimum-scale=1, maximum-scale=1, user-scalable=no" />
</head>
<body>
<div><span>Input 1: </span><input type="text" tabindex="1" /></div>
<div><span>Input 2: </span><input type="text" tabindex="2" /></div>
<div><span>Input 3: </span><input type="text" tabindex="3" /></div>
<div><span>Input 4: </span><input type="text" tabindex="4" /></div>
<div><span>Input 5: </span><input type="text" tabindex="5" /></div>
<div><span>Input 6: </span><input type="text" tabindex="6" /></div>
<div><span>Input 7: </span><input type="text" tabindex="7" /></div>
<div><span>Input 8: </span><input type="text" tabindex="8" /></div>
<div><span>Input 9: </span><input type="text" tabindex="9" /></div>
<div><span>Input 10: </span><input type="text" tabindex="10" /></div>
<div><span>Input 11: </span><input type="text" tabindex="11" /></div>
<div><span>Input 12: </span><input type="text" tabindex="12" /></div>
<div><span>Input 13: </span><input type="text" tabindex="13" /></div>
<div><span>Input 14: </span><input type="text" tabindex="14" /></div>
<div><span>Input 15: </span><input type="text" tabindex="15" /></div>
<div><span>Input 16: </span><input type="text" tabindex="16" /></div>
<div><span>Input 17: </span><input type="text" tabindex="17" /></div>
<div><span>Input 18: </span><input type="text" tabindex="18" /></div>
<div><span>Input 19: </span><input type="text" tabindex="19" /></div>
<div><span>Input 20: </span><input type="text" tabindex="20" /></div>
<div><span>Input 21: </span><input type="text" tabindex="21" /></div>
<div><span>Input 22: </span><input type="text" tabindex="22" /></div>
<div><span>Input 23: </span><input type="text" tabindex="23" /></div>
<div><span>Input 24: </span><input type="text" tabindex="24" /></div>
<div><span>Input 25: </span><input type="text" tabindex="25" /></div>
<div><span>Input 26: </span><input type="text" tabindex="26" /></div>
<div><span>Input 27: </span><input type="text" tabindex="27" /></div>
<div><span>Input 28: </span><input type="text" tabindex="28" /></div>
</body>
</html>This is the code of the page that has the issue (testinput_iframe.html):<!DOCTYPE html>
<html>
<head>
<title>Test input</title>
<meta name="viewport" content="width=device-width, height=device-height, initial-scale=1, minimum-scale=1, maximum-scale=1, user-scalable=no" />
</head>
<body>
<iframe src="/testinput.html" />
</body>
</html>The issue is present in Safari on the iPhone, iPad and the xCode Simulator from version 8.4 to version 9.2.Someone know if this is a bug? There is way to fix it in css or javascript?Thanks and sorry for my english! ๐
Hi.When usign the HTML Media Capture system by adding <input type="file" accept="video/" capture="camera"> it correctly shows the options to either record video or select a video from the library, but how do I (either as the web developer or the end user ) what quality video is uploaded?When I record video using this on my iPhone 6S Plus it only uploads a tiny 360x480 video file. Exactly the same script on an ancient Samsung Galaxy SII running 4.0 Android uploads 1080p video without problems.Similarly on my iPhone, when selecting a video from the library it compresses it to 720p without me asking it to.Is there a way to change this and allow higher quality video uploads to my website?
Post not yet marked as solved
I have web-view based app and other native apps in company. We were using universal links to redirect user to other apps when needed (other apps still support universal links - I can run them by pressing links from Apple Notes app).We recently made a transition to WKWebView (from UIWebView), which provides a way better experience. But after the update Universal Links stopped working and we cannot start other apps when user press link inside our app.According to the docs:"Universal links let iOS 9 users open your app when they tap links to your website within WKWebView and UIWebView views and Safari pages, in addition to links that result in a call to openURL:, such as those that occur in Mail, Messages, and other apps." (https://developer.apple.com/library/ios/documentation/General/Conceptual/AppSearch/UniversalLinks.html)It seems that WKWebView is not handling the Universal Links. My questions is, am I missing some special configuration for WKWebView or this is WebKit bug? I'm creating web view as provided:WKWebViewConfiguration *config = [[WKWebViewConfiguration alloc] init];
config.allowsInlineMediaPlayback = YES;
config.processPool = // Here I'm using shared process pool
self.webView = [[WKWebView alloc] initWithFrame:CGRectZero configuration:config];
self.webView.translatesAutoresizingMaskIntoConstraints = NO;
self.webView.clipsToBounds = YES;
self.webView.allowsBackForwardNavigationGestures = YES;
if (SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"9.0")) {
self.webView.allowsLinkPreview = YES;
}
[self addSubview:_webView];To show the problem I have created simple repository with simple app (https://github.com/apan06/UniversalLinks - with very simple initialisation). There are two web views - WKWebView and UIWebView with both with simple html that there is only link to Twitter. WKWebView simply loads the Twitter page. On the other hand UIWebView open Twitter app. Just remembet:- test it on device with Twitter app installed, if you don't have Twitter app or don't like Twitter you can chande link- I was testing it on iPhone 6 with iOS 9.2.1Thanks!
Post not yet marked as solved
I am tearing my hair, because it is not working no matter what. I have:<meta name="mobile-web-app-capable" content="yes">
<meta name="viewport" content="initial-scale=1">
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
<link rel="apple-touch-icon" sizes="192x192" href="/test/icon.png">
<link rel="manifest" href="manifest.json">all defined properly. Then I use 'Add to Home' button, testing it on all iPhones using crossbrowser live test website. And I never get that fullscreen experience. The launch icon is always being created on home screen, with proper icon, but it launches just ordinary website all the time, on every iOS version;Any advice, on what I might be missing? Website test url is: http://gostopworld.com/test/index.htmlI tried with/without manifest file, all the same, no difference.
Post not yet marked as solved
Someone would help me if I have created web page what I could to turn it into a web application. my page is www.stavamesauspesnymi.sk ๐ ๐
Post not yet marked as solved
Hello,I would like to create a live streaming on my website. For the desktop version it's easy, I have use https://github.com/jhuckaby/webcamjs which use getUserMedia OR flash (depends of your browser).BUT, that does not work on my iphone (iphone 6). Dam it ! We are in 2016, I sure that is possible.How can I process to access to my mobile camera using (JS, HTML, FLASH or whatever)?Thanks
Post not yet marked as solved
Hello,I have a problem with implementing Universal Links. My application implemented Universal Links with this documentation. When I try to validate my domain with App Search API Validation Tool it says "Error no apps with domain entitlementsThe entitlement data used to verify deep link dual authentication is from the current released version of your app. This data may take 48 hours to update." 48 hours already passed and I got still same warning. When I try to open a link about my domain, some devices directly opens my application but some devices doesn't. Especially updated app's have problem with opening. Deleting and reinstalling the app solving this problem and new installs just works normal.Do you have any idea about this problem?
Post not yet marked as solved
Currently I'm showing a custom app smart banner. I want to hide the custom smart app banner when the user has already installed the app. Since I'm using universal links a banner to open the current page in the app is shown automatically. How can I detect the native smart app banner provided by Safari via JS?
Post not yet marked as solved
We have a web page that lets users to upload an image. Users can select a file from library or take a photo.Below is the html5 snippet:<input type=file capture="camera" accept="image/*" value="select image">When user clicks on "select image" and selects a file from photo library or icloud, the GPS info is retained in the image returned.Whereas , if user choose to "take photo" and takes a photo with camera option, the image returned by camera does not have GPS info.Is this a privacy feature ? Is there a user setting to turn off this behavior?Already Location is allowed for camera. Other pictures taken with camera indepdently have GPS info in the image.Pls help.
Post not yet marked as solved
I built a web app that allows a user to upload files to an Amazon s3 bucket via a webform, I unfortualy am in a sandboxed evnoronment and cannout make a JS httprequest to s3. Anyway, Amazon send a 204 response back if the PUT was a success, unless you specify it to respond with a 201. I've searched exhaustivly around the net and have found mutple older stackoverflow topics and similar sites refering to this same issue with Amazon S3 or with 204 responsess in general, on iOS. I have tested the app on multipel Android devices, in Chrome as well as all major desktop clients and it works as expected.In iOS based browsers, it returns a blank page, which is what a 204 is but that is not what the HTTP 1.1 Specs say a 204 shoudl do on a client. Can anyone help me fix this? Suggest a solution or a direction to look? What I can offer are these things :Amazon's documentation of POST responses :The status code returned to the client upon successful upload if success_action_redirect is not specified.Accepts the values 200, 201, or 204 (default).If the value is set to 200 or 204, Amazon S3 returns an empty document with a 200 or 204 status code.If the value is set to 201, Amazon S3 returns an XML document with a 201 status code.If the value is not set or if it is set to an invalid value, Amazon S3 returns an empty document with a 204 status code.Type: StringDefault: NoneNoteSome versions of the Adobe Flash player do not properly handle HTTP responses with an empty body. To support uploads through Adobe Flash, we recommend setting success_action_status to 201.The HTTP 1.1 Spec for a 204 response via the W3C :The server has fulfilled the request but does not need to return an entity-body, and might want to return updated metainformation. The response MAY include new or updated metainformation in the form of entity-headers, which if present SHOULD be associated with the requested variant.If the client is a user agent, it SHOULD NOT change its document view from that which caused the request to be sent. This response is primarily intended to allow input for actions to take place without causing a change to the user agent's active document view, although any new or updated metainformation SHOULD be applied to the document currently in the user agent's active view.The 204 response MUST NOT include a message-body, and thus is always terminated by the first empty line after the header fields.Here is a nice little tool for testing responses :http://httpstat.us/Clicking the 204 link should cause your browser to load for a second and then the page not do anything. This works as expected in all browsers, except ones running on iOS. My devices are at version 10.2.Again, I am at the mercy of Safari (the Client), this is a simple form POST that recieves a 204 response, I can not catch the response and rely on the client to handle it correclty, which it appears to not do. Thank you for your help
Post not yet marked as solved
I have a table view where each cell contains a WKWebView of HTML content. Initially the content has its size to fit a prescribed width and height.What I want to do is allow users to zoom in and out of the WKWebView and while adjusting the height of the cell view.To give some context what I did was attach a Javascript (WKUserScript) to the WKWebView and in the script it containswindow.onload = function () {
window.webkit.messageHandlers.sizeNotification.postMessage({width: document.body.scrollWidth, height: document.body.scrollHeight});
}What this does is when the HTML content is loaded, it will send the message with name "sizeNotification" to a UIViewController conforming to the WKScriptMessageHandler. The message contains the scrollHeight which is what I use to set the frame of the WKWebView by adjusting a height constraint.I also save that scrollHeight value which will be important later.After the user zooms in the WKWebView the delegate method scrollViewDidEndZooming gets called which contains the current scaled information of the WKWebView's scrollView. I set the new height constraint constant of the WKWebView's frame bywebViewHeightConstraint.constant = initialHeight * scaleThe height of the WKWebView increases and since I used dynamic sizing cells, the table cell height will also adjust accordingly. ๐That is UNTIL the zoom scale reaches a value close to 1.0 If it gets higher than this value, the content inside the WKWebView/scrollView gets white padding at the bottom.I suspect that this has to do with the Width/Height ratio of the WebView's frame being changed, since if the initial height of the WebView is greater than content height this will also happen. Another example would be if you open a webpage in Safari that has a content height of 300px but you stretched out the window to have a height of 100px, there would be white space at the bottom (or whatever <body> is set to)My questions is if there's a fix/workaround for the white bottom padding issue? If you look at an email thread in Mail on iOS you can zoom in and out of the emails and the cell heights adjust accordingly.
Post not yet marked as solved
Using WKWebView in iOS, I encountered a problem with controlling audio output level from <audio> element in HTML page.I tried the 'volume' property of the <audio> and also the Web Audio API 'GainNode'. Neither approach worked. The player's output stays/reported as 1.0.Curiously, within the same scope of code I can change player's other properties such as playback rate; this does work. But calls to 'volume' or 'GainNode' are flatly ignored. Two observations make me believe that this is a bug.The first one: if I use instead of WKWebView the old deprecated UIWebView, everything works fine; even Web Audio API AudioContext, Splitter, Merger, etc.The second observation: in the version of the app for macOS the very same HTML page and <audio> element behave as expected.Any suggestions for 'workaround' would be much appreciated,Igor Borodin
Hi Guys,We are aware that Apple have already included the media autoplay blocking mechanism in the Safari browsers. We strongly agree on this step to minimize abusive use of annoying video advertisements that plays annoying audio loud enough to blast a hole on your sound system.But what we are not really aware of is if Apple have reserved a way to facilitate autoplay for websites that offer protected premium LIVE streaming services like ours. Could you guys point us to where we might find this? This autoplay block is really affecting the user experience on our service and we are receiving a lot of complains from customers. Instructing our clients to enable autoplay manually on Safari for our website is really becoming costly for us.Bigger streaming websites such as youtube doesnt seem to be affected by these changes. Probably because of some exceptions of the rules that are pre-installed on Safari or in the way they are using autoplay. Would you guys be kindly enough to tell us how youtube is able to use autoplay while others cannot? Is it because of some special agreement they have with Apple or is there any established rules that we need to comply in our code to make Safari enable autoplay for our application?Best regards,
Post not yet marked as solved
Hi,I am currently working on a web application which is heaviliy rellying on offline storage (AppCache, IndexedDB, WebSQL). We would like to branch out and fully support IOS platform or in other words, Safari (mobile version). We are targeting iPad devices.I know that from IOS version 9 and 10 offline storage should be fully supported on Safari mobile, but I was wondering and could not find relyable source of information regarding limitations of offline storage.Does someone know (or can at least point me to the site/documentation/forum) what are the limitations of offline storage on iPads and Safari browser regarding size of the storage? I found some forum mentioning a hard limit of 50MB of data per application which won't do for the app that I am working on. It would mean a lot if to know which are the limitations before we start developing as there is no point in development if storage limits are not big enough. We are storing large amounts of data (i.e hundreds of MB).
Post not yet marked as solved
has any one seen this and/or know the solution?what could cause a pause event to get triggered? we can trap when the event gets caught in the safari debuggerbut unable to see what is causing it. like who is sending the event? is there any way to trace the sending of media events in safari? we get random pause events recv'd by our video tag, a few seconds after video start.seems to be on videos with audio playing Only, ios10.3 and upokay on ios10.2UIWebView implementation
Hi,We are developing a small intranet web app for a company. This company is using self signed certs and a difference of iOS devices. It is not possible/wanted to import the self signed certs into the devices. So far no problem. For our web apps we have designed touch icons which did work on our test-servers but won't work on the devices of our customer. After a lot of debugging the following seems to be the cause:- If the webserver supports https with a valid certificate, Safari wil use the apple-touch-icon. (best situation)- If the webserver supports https and is using a self signed certificate, Safari does NOT use the apple-touch-icon. (worse, but stil ssl)- if the webserver only supports HTTP Safari uses the apple-touch-icon correctly. (no encryption at al, but Safari uses the apple-touch-icon)Because Safari is using the apple-touch-icon without https, the self signed cert probably may not be the cause of not using the apple-touch-icon (encryption is better than no encryption at all....).Is this a bug in Safari? Anybody an idea how to place the apple-touch-icon on the home screens of our customers without importing the self signed cert or using only http connections?Thank you,Mart.
Post not yet marked as solved
PlatformsTested on macOS High Sierra v10.13.3Safari v11.0.3DescriptionThis problem doesn't occur neither on Chrome nor Firefox. It doesn't occur on Safari over HTTP neither.It affects only POST requests (GET and OPTIONS works fine) on Safari over HTTPS.[Error] Origin [origin] is not allowed by Access-Control-Allow-Origin.[Error] Failed to load resource: Origin [origin] is not allowed by Access-Control-Allow-Origin.[Error] XMLHttpRequest cannot load [apiURL] due to access control checks.The preflight OPTIONS request is following:Request HeadersName: Value
Referer: [referer]
Access-Control-Request-Headers: content-type
Origin: [referer]
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_3) AppleWebKit/604.5.6 (KHTML, like Gecko) Version/11.0.3 Safari/604.5.6
Accept: */
Access-Control-Request-Method: POSTResponse HeadersName: Value
Age: 0
Server: nginx/1.6.0
Date: Tue, 06 Feb 2018 09:56:50 GMT
Content-Length: 0
Connection: keep-alive
Access-Control-Allow-Origin: *
Access-Control-Allow-Headers: Content-Type, X-CSRF-Token, X-Requested-With, Accept, Accept-Version, Content-Length, Content-MD5, Date, X-Api-Version, X-File-Name
Access-Control-Request-Method: GET,POST,OPTIONS
Accept-Ranges: bytes
X-Varnish: 2033664925
Via: 1.1 varnish
X-Cache: MISSThe POST request seems not to be sent at all: https://imgur.com/a/t78PjAs written before - it works good on Safari over HTTP and it also works on another browsers both over HTTP and HTTPS.The only problem is with Safari over HTTPS with POST request.GET requests works fine too..๐Does Safari have any special restrictions or something? What could be a problem?