Hi everyone,
I’m working on an iOS app using WKWebView, and I have a specific use case involving cross-origin iframes and form autofill. I’m wondering if it’s possible to programmatically fill input elements, such as credit card numbers, within a cross-origin iframe loaded in a WKWebView.
I understand that due to the Same-Origin Policy, direct DOM manipulation of cross-origin iframes is restricted. However, I’m curious if there are any methods or workarounds that might allow me to achieve this, specifically within the context of WKWebView. Thanks.
Post
Replies
Boosts
Views
Activity
Hi all,
We have an iOS app which has Cloudkit Coredata as storage mechanism. Whenever user logout of iCloud in settings app, then the Coredata is wiped out and no row exists in the tables. Can we prevent this. We want to retain the coredata values until there is another iCloud user logs into settings app.
Thanks
Vinoth
Can someone share how secure is the communication between iOS app and its safari mobile extension. Is it encrypted? Are there any references to best practices to follow?
If a user has opened multiple tabs and has multiple extensions can there be security issues during their communication like one extension able to read other extensions memory?
We are facing a challenging memory issue during a Core Data heavy weight migration in our app.
Background: We store sizable data(~250kb/record) in a Core Data entity called "Email." We have roughly 20k records. We are loading the "Email" list using fetchedResultsController with batching. Recently, we split the another entity named "Profile" into "Profile" and "Address" entities, requiring a heavyweight migration.
The Problem: This migration consumes an exorbitant amount of memory, causing the OS to kill our app. Interestingly, the "Email" entity is causing the brunt of the memory usage, even though the actual migration code deals with the "Profile" entity to create "Address." If we remove the "sizable" data from "Email" and attempt for migration then the migration is successful.
My Questions: Is this memory consumption expected behavior? Why does the "Email" entity, seemingly unrelated to the actual migration, seem to be the main memory culprit?
How can I prevent the OS from terminating my app during migration? Are there strategies to optimize memory usage or mitigate memory pressure?
Also we are encountering a delay in loading the email list on the very first launch of app. Subsequent launches work comparatively faster. Is that related to storing bigger size data in Email entity?
We have an entity called "EMail" with attributes such as ID, From, To, Subject, Body.
Due to various reasons including performance for retrieval, impact on migration etc, we want to refactor this entity into two entities with a parent child relationship: "EMail": ID, From, To, Subject and "EMailBody": ID, Body.
Can this be done with an existing model? If so, will this still fall under lightweight migration?
Our application is configured to handle a custom file type with the extension .ptw. Until the release of iOS 17, when we used Airdrop to send a .ptw file, it would seamlessly open directly in our app on the receiving device. However, since iOS 17, we've noticed a change in behavior where the .ptw file is now being automatically saved to the Files app. To access it in our app, we must manually tap the share button and select our app from the sharing menu.
I'm curious to know if others have experienced this change as well, and whether this is the expected behavior in iOS 17 or We are missing some configurations to regain the previous behaviour.
If anyone has any insights, workarounds, or suggestions regarding this issue, please share them here.
We are currently exploring deferred installation using iOS universal links. Our web page includes universal links with specific user data that we want to pass to the app after first installation.
We are looking for suggestions on implementing a seamless transition from Safari to the app, where the device can be consistently and uniquely identified. Any insights or best practices regarding JavaScript-based fingerprinting, storing identifiers, and linking them to user accounts within the app would be greatly appreciated. Additionally, I'm interested in ensuring compliance with privacy regulations and maintaining transparent data collection practices. Thank you in advance
We have a core data entity with an attribute "description" with very very large string stored. When we try to filter the entities with a predicate format such as "description contains ***" then it takes around 20 seconds time when the number of rows are above 10000.
To improve the speed we tried adding index to description, but it took actually more time than querying without index. Not sure it is because of "contains" predicate.
We also have a requirement of fetching all the matching rows immediately. So we cannot use fetchLimit.
Is there any alternative to fetchrequest predicate?
Is there any better ways to make the fetchrequest faster?
Please suggest
Thanks
Vinoth
We have a Mac Catalyst app that is installed and works with a custom Safari extension. The Safari is working as expected and is able to pass messages (using sendNativeMessage) to the Mac Catalyst app as expected. Now we want to port the extension to Chrome and other browsers on the desktop and retain the ability to pass messages back and forth.
My questions:
Is it possible ?
Can we pass messages form the Chrome extension and the Mac Catalyst app?
How do we distribute/install the Chrome extension?
Can we have the extension running in parallel across multiple browsers and still communicate the Mac Catalyst app ?
let query: [String : Any] =
[kSecClass as String : kSecClassGenericPassword,
kSecAttrLabel as String : "hello@email.com"]
let status = SecItemDelete(query as CFDictionary)
A query like above helps to search the keychain and delete the entries that have AttrLabel as "hello@email.com" .
However we are having a requirement to delete the entires that don't match "hello@email.com", basically we want to get all entries that are NOT EQUAL TO "hello@email.com".
I checked on the documentation and other links, we could not find on details whether it is possible to pass != condition to keychain query
Please suggest
Regards,
Vinoth
Hello All,
We are working on an app that involves storing sensitive data in cloud keychain.
We took two devices made a change to keychain value in one device. After some random delay the iCloud sync happens and the changes comes to the second device. We see this delay in iCloud sync to be very random. Sometimes the sync happens in less than 1 min and sometimes it takes more than 1 hour.
Is this delay in keychain sync expected. Is there any way to call synchronize() like we have for NSUbiquitousKeyValueStore to speed up the sync
Thanks
Vinoth
Hello All,
We are working on an app that involves storing sensitive data in cloud keychain. Each sensitive data contains two parameters p1 and p2.
We took two devices made a change to p1 in one device and p2 in another device. Both changes are performed on the same sensitive data. After some delay iCloud sync happens and the changes are not merged. Instead one change is chosen as a whole and the other change is discarded as a whole. Is it expected behaviour for keychain?
Thanks
Vinoth
We are using iCloud key value storage(NSUbiquitousKeyValueStore) in our app to store some user data. I moved to a new device and logged into iCloud settings and if I immediately open our app and query for a value it returns nil. After considerable delay say 1 minute and if I query, then the proper stored value is returned. We called synchronize(), but it did not help. Is there any other way we can force sync and get a value immediately.
Thanks
Vinoth
Hello All,
Currently we have an app with coredata as storage mechanisms and it works fine. Now we want to move to coredata with cloudkit and found unique constraints are not supported by cloudkit.
Can someone suggest how to enable cloudkit and still enforce unique constraints.
Thanks in advance
Vinoth
Hi, My app was approved by apple and it's in Ready for sale Status. But in my app InApp Purchase products are not shown?