I need to make some folder / file copy for a local backup, the app gives protection to files and folders, while in background I create, copy delete, zip and encrypt folders and files. while app is active, or if it is in background mode but device still unlocked, code works. But if device is locked I got some errors, sometimes "operation not allowed" some times cannot find my folders. Again, my question: Is there some change when device is locked at "thread management level" ? or is not allowed to change protection level of folder to none if device is locked and app in background? the most of my work is inside document folder and tmp folder. I cannot give snippet of code, but app is too large, my question is about general permissions about iOS fileSystem or threads
Is it possible to change the protection level of folders and files while app is in background and device is locked?
104 Views Asked by biggreentree At
1
There are 1 best solutions below
Related Questions in IOS
- URLSession requesting JSON array from server not working
- Incorrect display of LinearGradientBrush in IOS
- Module not found when building flutter app for IOS
- How to share metadata of an audio url file to a WhatsApp conversation with friends
- Occasional crash at NSURLSessionDataTask dataTaskWithRequest:completionHandler:
- Expo Deep linking on iOS is not working (because of Google sign-in?)
- On iOS, the keyboard does not offer a 6-character SMS code
- Hi, there is an error happened when I build my flutter app, after I'm installing firebase packages occurs that error
- The copy/paste functionalities don't work only on iOS in the Flutter app
- Hide LiveActivityIntent Button from Shortcuts App
- While Running Github Actions Pipeline: No Signing Certificate "iOS Development" found: No "iOS Development" signing certificate matching team ID
- Actionable notification api call not working in background
- Accessibility : Full keyboard access with scroll view in swiftui
- There is a problem with the request entity - You are not allowed to create 'iOS' profile with App ID 'XXXX'
- I am getting "binding has not yet been initialized" error when trying to connect firebase with flutter
Related Questions in SWIFT
- Navigate after logged in with webservice
- URLSession requesting JSON array from server not working
- When using onDrag in SwiftUI on Mac how can I detect when the dragged object has been released anywhere?
- Protect OpenAI key using Firebase function
- How to correct error: "Cannot convert value of type 'MyType.Type' to expected argument type 'Binding<MyType>'"?
- How to share metadata of an audio url file to a WhatsApp conversation with friends
- Using @Bindable with a Observable type in SwiftUI
- How to make a scroll view of 9 images in a forEach loop open on image 6 if image 6 is clicked on from a grid?
- Using MTLPixelFormat.rgba16Float results in random round-off errors
- Search and highlight text of current text in PDFKit Swift
- How is passing a function as a parameter related to escaping autoclosure?
- Actionable notification api call not working in background
- Custom layout occupies all horizontal space
- Is it possible to fix slow CKAsset loading on Cloudkit?
- Thread 1: Fatal error: Unexpectedly found nil while implicitly unwrapping an Optional value - MapView.isMyLocationEnabled
Related Questions in MULTITHREADING
- How can I outsource worker processes within a for loop?
- OpenMP & oneTbb difference
- Receiving Notifications for Individual Task Completion OmniThreadLibrary Parallel.ForEach
- C++ error: no matching member function for call to 'enqueue' futures.emplace_back(TP.enqueue(sum_plus_one, x, &M));
- How can I create a thread in Haskell that will restart if it gets killed due to any reason?
- Qt: running callback in the main thread from the worker thread
- Using `static` on a AVX2 counter function increases performance ~10x in MT environment without any change in Compiler optimizations
- Heap sort with multithreading
- windows multithreading CreateMutex
- The problem of "fine-grained locks and two-phase locking algorithm"
- OpenMP multi-threading not working if OpenMPI set to use one or two MPI processor
- WPF Windows Initializing is locking the separated thread in .Net 8
- TCP Client Losing Connection When Writing Data
- vc++ thread constructor throwing compiler error c2672
- ASP.NET Core 6 Web API : best way to pause before resending email
Related Questions in BACKGROUND-PROCESS
- Run Jobs Sequentially, in the Background, in Bash
- Logging after return statement in method && asynchronous logging
- Handling Data Transmission in Foreground Service with WebSocket and Managing Downtime
- Is anyone used react-native-background-geolocation?
- How to properly request location permissions for background location updates in Flutter?
- Configure a background service in .NET 8 MAUI for Windows
- Run method works with widgets from background task in Flutter Dart
- Persistent Background Task in iOS 2024
- setWallpaper in Android after app terminated
- React-native-background-action Cannot read property 'start' of null
- How to Sync Data to Server from a Flutter Windows App Even When the App is Closed?
- Set wallpaper in Headless JS react native background task
- How to run a service in background on Android 10? Rooted device
- how can i make a php function to continue to run with the while loop in background?
- How to convert java application with process in background to installer?
Related Questions in DATA-PROTECTION
- Well isolated DB storage for each user
- How to Restrict access to company's sensitive information for a developer from other country?
- How do I migrate .NET Core data protection keys from Redis to MySQL entity framework?
- Unable to Utilize Full Microsoft BI Functionality with Local Data due to Privacy Concerns
- protect and unprotect a checkbox with a warning give me a erroneous behaviour
- Data protection still works after deleting all keys from the database
- Should I configure ASP.NET Data Protection when using Docker with Azure Container App
- AddDataProtection - Register PersistKeysToFileSystem and PersistKeysToDbContext at the same time
- Is it secure to use GCP signed URLs on a public site for uploading sensitive identification documents?
- Protect application that uses time from a website as license key
- How do I use Core WCF in Kubernetes?
- Discord python bot: Is data sent through slash commands secure/protected?
- Using Asp.Net Core Data Protection in scalable Azure App service
- Seeking Advice on Enhancing Security Measures for My React Native Money Game
- Is it possible to change the protection level of folders and files while app is in background and device is locked?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
I don't know what "thread management level" means. But, no, you cannot change the protection of something you cannot currently access (that would defeat the point of protection). So if something is set to "complete," you cannot access it when the device is locked, and so you cannot change its protection. The default value for files you create is "Complete until first user authentication," which allows access once the device has been unlocked at least one time since rebooting. But this default can be overridden in your app's settings.
The typical approach is to accept that data cannot be accessed until that first unlock. UIApplication.isProtectedDataAvailable will let you know when you can access it. You should avoid turning off encrypted unless the use case absolutely requires it and you know for certain that the data will never be sensitive. If you are creating new files in the background, or only need to access files that were opened while in the foreground, "complete unless opened" can be useful (but is a somewhat niche use case).
See Encryption Your App's Files for details and examples. You may also find Practical Security, starting at 5:52, useful as an overview.