Safari Services

RSS for tag

Enable web views and services in your app using Safari Services.

Safari Services Documentation

Posts under Safari Services tag

31 Posts
Sort by:
Post not yet marked as solved
7 Replies
1.6k Views
Hi! I'm working on an iOS Safari extension that has a ServiceWorker. Lately we've noticed that this ServiceWorker seems to get killed seemingly at random, and there are no logs or crash reports to tell us what happened. I'm hypothesizing that iOS might be shutting down Safari ServiceWorkers when the ProcessInfo.thermalState approaches .serious. I have circumstantial evidence that our ServiceWorker tends to get killed more often at higher levels of thermalState but can't yet say conclusively that this is the case. I can't find any direct evidence of this on internet searches either. Is anyone able to shed light onto this topic? The specific symptoms are: ServiceWorker stops, and the menu entry for its console window no longer appears on macOS Safari. No crash logs via Xcode or Sentry, and no Console messages as far as we could tell (caveat: MobileSafari generates a LOT of messages! We might have missed it.) If attached via debugger, the native part of our extension just disappears and the debugger loses connection with no error message. ServiceWorker no longer works for the lifetime of the Safari process. Sometimes, when we kill Safari and restart, we can get the ServiceWorker back. This usually requires toggling our extension's "enabled" state in system settings. In some cases, even killing/relaunching Safari and toggling the system setting doesn't bring our ServiceWorker back. I'm hypothesizing right now that this happens when the thermal state is high. I've tried simulating a serious/critical thermal state in the Xcode Devices window, but couldn't repro the ServiceWorker problem. I don't know if that setting affects the whole system, though, or just our own apps. Help appreciated! Yuna
Posted Last updated
.
Post not yet marked as solved
0 Replies
221 Views
The SFSafariViewController documentation mentions not to display content from websites when using the pageSheet and formSheet presentation styles for the In-App browser. Is this a hard restriction that is enforced or more of a loose guideline? And if possible, providing the reasoning behind it would be great. Thanks in advance.
Posted
by CreaseK.
Last updated
.
Post not yet marked as solved
0 Replies
314 Views
Scenario: Apple decided to not support PWAs in Europe in IOS 17.4. My company has multiple Angular PWAs, all using IndexedDB and providing full offline-usage as main feature, that apparently won't work anymore. The apps communicate with a server. We maintain two versions of that server, e.g. v1.1 and v1.2 - some customers don't want or can't upgrade to v1.2 just yet. Not all new features of an app will get implemented in v1.1, and eventually we won't push updates for it anymore. At some point, we'll have the same situation with e.g. v1.2 and v1.3. My questions: Do I understand correctly that offline-usage and IndexedDB features won't work anymore? If I wrap the PWAs via Capacitor and upload them as Custom App via App Store Connect, in IOS 17.4... Will the app, including routing, work offline? Will the IndexedDb still be usable as permanent data storage? Can I upload v1.1 and v1.2 as separate apps or will I have to create on app with in-app purchase options? If it's the latter, how do I push updates? Apparently, Apple Review can cause problems with separate apps that have similar functions... Thank you for your time!
Posted Last updated
.
Post not yet marked as solved
20 Replies
4.8k Views
Hello, since the last iOS 17.4 Europe update, and since the implementation of new rules for default browsers, PWAs no longer work. In fact, they are nothing more than shortcuts for internet pages, so this makes the application unusable, which could not necessarily be launched in install mode with notifications. I tried looking for changes but couldn't find them. I think it's linked to the fact that you can install applications from the web from a marketplace. If anyone has a solution or the same problem. Thank you
Posted Last updated
.
Post not yet marked as solved
1 Replies
339 Views
I recently noticed that using Google Docs, Google Sheets, and any other Google-related sites on a Safari browser uses tons of RAM. It usually consumes around 4-5 GB of RAM. Compare it to when I use Google Docs on Chrome; it only uses around 1-2 GB. Why is this so? I want to use Safari alone for work, but it's so slow. Do you have any tips on this?
Posted
by PMLO.
Last updated
.
Post marked as solved
1 Replies
374 Views
On Safari Mobile and iOS version 16 or 17, while scrolling the webpage, the function browser.tabs.captureVisibleTab() is not returning the expected screen image. The image is cropped from the top. The probable reason for the same is the collapsible Address Bar. The below attached image is the iPad mini (6th generation ) Simulator OS Version:17.0 simulator The below attached image is created by browser.tabs.captureVisibleTab() I tested it on iPad mini (6th generation ) Simulator OS Version:17.0 and iPad (8th generation) - iPadOS Version 16.2.
Posted Last updated
.
Post not yet marked as solved
0 Replies
603 Views
Hello everyone, i want to set transparent status bar (where wifi and time), in my pwa app, writing on html, using manifest.manifest and sw.js, i make: and this not work, i am want but this work on ios 15-17.xx, who know, how do setup this variable?
Posted
by nikits.
Last updated
.
Post not yet marked as solved
0 Replies
444 Views
Problem : Deep links are not directing users to the intended apps, instead, they are redirecting to the respective apps on app store. When clicking on a deep link in private mode, it consistently displays a prompt to open the application or cancel. If the "Cancel" button is selected on the prompt, it redirects to the app store via a deep link to open the specific application, on next time onwards we are not receiving the prompt to open application, every time it get redirects to the appstore via merchant link automatically. In other case if we click open button on the prompt , it redirects to the application, Subsequently, each time we click the deep link, it repeatedly prompts us to open the app. Why do the "Open" and "Cancel" buttons lead to different outcomes in these scenarios? How can we ensure that the application always opens when clicking on the deep link, if it is in private mode as well?
Posted
by YuvarajS.
Last updated
.
Post not yet marked as solved
1 Replies
706 Views
I'm experiencing an issue with the Smart App Banner on my website, and I'm seeking assistance in resolving it. I have followed Apple's guidelines for implementing the Smart App Banner on my website, but it doesn't seem to work as expected when the app is not installed on the user's device. Here are the details of my setup: I have added the following meta tag to the root index file of my website: html <meta name="apple-itunes-app" content="app-id=, app-argument=myapp.com"> In the .well-known folder, I have created an apple-app-site-association file with content like this: { "applinks": { "apps": [], "details": [ { "appID": "HGU83XXXXX.com.myapp.app", "paths": ["*"] } ] } } The issue I'm encountering is that the Smart App Banner only displays with the "Open" button when the app is already installed on the user's device. However, when the app is not installed, the Smart App Banner doesn't appear to prompt users to download the app from the App Store. I would appreciate any insights or guidance on how to make the Smart App Banner work correctly, especially when the app is not installed on the user's device. Are there any specific steps or configurations I might be missing in this implementation? Thank you for your assistance!
Posted Last updated
.
Post not yet marked as solved
1 Replies
430 Views
Hello, I try to develop extension for safari. I edited info.plist but I can't see my menu items. My Info.plist page <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>NSExtension</key> <dict> <key>NSExtensionPointIdentifier</key> <string>com.apple.Safari.web-extension</string> <key>NSExtensionPrincipalClass</key> <string>$(PRODUCT_MODULE_NAME).SafariWebExtensionHandler</string> </dict> <key>SFSafariContextMenu</key> <array> <dict> <key>Text</key> <string>Search for selected text in MyApplication.</string> <key>Command</key> <string>Search</string> </dict> <dict> <key>Text</key> <string>Add an entry for selected text in MyApplication.</string> <key>Command</key> <string>Add</string> </dict> </array> <key>SFSafariWebsiteAccess</key> <dict> <key>Level</key> <string>All</string> </dict> </dict> </plist>
Posted
by tarikk.
Last updated
.
Post marked as solved
1 Replies
510 Views
Hello, In the latest macOS Sonoma and Safari 17 update, Safari App Extensions that were previously running without any issues (for years) suddenly stopped working. Digging a little into the source code and debugger, I found out that basic API calls do not work anymore, for example: SFSafariApplication.getActiveWindow { (window) in ... } or the async version: let window = await SFSafariApplication.activeWindow() getActiveWindow callback is never called and let window = await ... waits forever. Is there anything updated in the security model of Safari 17 that I should be aware of? Or any API updates. I repeat, the extensions worked for 5 years without any issue and also work perfectly in Safari 16 and macOS Ventura. Thank you.
Posted Last updated
.
Post not yet marked as solved
1 Replies
523 Views
Hello, safari consumes less CPU than Chrome, but it does not consume less RAM. When you access YouTube in Safari, especially when you skip 5 seconds while watching a video, the buttons are very inadequate compared to Chrome. The video and audio lag, the loading sign appears and the audio lag is very annoying. At the same time, when I log into Twitter, some videos do not play but remain loading. While browsing the web in Safari, the mouse sometimes remains stuck. While typing, the mouse becomes a line, but when I hover over something to click, it still remains as a line. There are such bugs. I like to use Safari, it is very useful, but I always prefer to stay in Chrome because of such errors. I try it every time Apple updates Safari, most bugs go away, but new ones come and unfortunately the Youtube problem is very bad. This problem only occurs on YouTube, not on Netflix and similar platforms. Browsing YouTube with Safari is very annoying. I hope you find a solution to these problems soon. Since I deal with CDN and Linux servers, the web is very important to me and I like the safari web tool part, but it is not an immersive view. It gives the impression that I shouldn't have opened it. I hope a new design language will be added to this design. Other than that, using safari is nice and I love how minimalist it is. Thank you, I wish you good work.
Posted Last updated
.
Post not yet marked as solved
0 Replies
480 Views
Hi, this is my first time to write in Forum. My Problem is that, when I have a video in Safari for Mac recorded, Safari is splitting my record into three blobs. For Example Chrome doesn't. There is one record, one blob. Safari Version: 16.6 (18615.3.12.11.2) Does anyone know why Safari splits one Record/blob into three blobs? Thank you and have a great day.
Posted Last updated
.
Post not yet marked as solved
0 Replies
531 Views
Hello, i try to send a Web Push Notification to my Safari Webbrowser and use the "http2" Module from Node.js Every other Browser is able to receive my messages. I got the message "BadJwtToken" but when i use the same Authorization Key with a HTTP/1.1 Request, i got a Message on Safari. Is there a Problem with the API when i use the HTTP/2 Protocol? Has anybody the same Problem? I send exactly the same Headers and as i said other Push APIs from Mozilla,Chrome and Microsoft e.t.c. are working with my HTTP2 Client.
Posted
by Saschn.
Last updated
.
Post not yet marked as solved
1 Replies
820 Views
Hey, I am loading a link on my app using SFSafariViewController and that link asking camera and location permission. Camera permission pop-up showing and accessible but for location permission it is not doing anything even not showing location permission pop-up. I need to know is there any way to get location permission pop-up on SFSafariViewController.
Posted Last updated
.
Post not yet marked as solved
0 Replies
1k Views
You used to be able to create custom Widgets using Safari to view a section of a website. The "open in dashboard" option is no longer there. what is the process to do this now?
Posted
by crewze.
Last updated
.