I noticed that my identifierForVendor always changes. Someone told me that it doesn't change when you download from iTunes. I'm not so sure about it, though. So, I want to store the first identifierForVendor generated. I found this class, JNKeychain from one of the posts i checked. It can store password and other data. I tried using that to store my identifierForVendor. Even after deleting my app and reinstalling using XCode, I was able to get the value I stored. Sounds good because this way, my identifierForVendor can persist regardless of whether it was downloaded from iTunes or not. However, I"m not very familiar with Keychain. I didn't even know we can store secure data using it. I read their documentation and it says there it's usually used to share data between applications and your apps should have same provisioning profile etc... I don't plan on sharing. I just want it to save my identifier so this is not a concern for me. My only concern is how long will my data last in the keychain storage? Will it be deleted after some time? or when I turn off my device? When i update ios version? Can it persist forever? Will keychain have a different behavior if I use developer/distribution profile?
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 OBJECTIVE-C
- How to control the volume of an iPhone programmatically in objective-c
- Occasional crash at NSURLSessionDataTask dataTaskWithRequest:completionHandler:
- How to set value the descriptor of iOS BLE in Objective-C?
- Unexpected #selector() Behavior in Swift-Objective-C Interop?
- In what context can we use an unqualified #selector() expression in Swift?
- AVPictureInPictureController crashes during initialization
- How to use pow() in Objective-C?
- How to change the image on the MGSwipeButton in MGSwipeTableCell
- Using sort descriptors in Outline View
- Why is my Swift function not printing from inside the dataTask closure?
- Using UICollectionViewCell with IBOutlet
- Undefined symbol: _OBJC_CLASS_$_ only on simulator
- Why can't I receive a notification sent from Camera Extension(Swift) to an observer application (obj-c++)
- Behavior of __block modifier in objc
- Inserting subview into view where I've added subviews and sublayers
Related Questions in XCODE6
- How behave alternate icons feature regarding app updates?
- incorrect architecture in 3u tools from clickteam project
- How to setup and use Apache arrow from within Xcode C++ project
- Xamarin.ios not running in visual studio on mac
- Could not build the application for the simulator. Error launching application on iPhone 11 Pro
- Sum up values in multidimensional array in c++ and store it in another multidimensional array
- Trying to add two images in a UI image
- Xcode set up with Appium
- Network Extension capability missing in dev portal
- Cannot find 'SwiftUIWebView' in scope
- Swift UI: App looks different in simulator than on same iPhone model
- Xcode 6.2 fails to download docsets, complains they're "untrusted"
- I've just ejected expo react native app. How do I run the app via xcode?
- Add photo to a section in UITableview
- Variable unexpectedly resetting to 0 when View Controller Switched
Related Questions in KEYCHAIN
- key not found in keychain error when debugging on local device connected to my windows dev machine
- Always allow is gone, how to get it back?
- Saving credentials for subdomain in iOS keychain
- Flutter show Auto fill password prompt after api success
- Problem accessing keychain certificate via ssh in macOS Sonoma
- Retrieving AWS Cognito Tokens from iOS Keychain
- Renew expired fastlane certificate from .cer file. File does not contain private key
- How to show "Save password" dialog on iOS with react-native on update password page?
- dotnet-try wants to access key "tmp..." in your keychain. Should I give it access?
- share username with keychain between two application
- Autofill save (TextInput.finishAutofillContext) not working | FLUTTER
- How do I fix my Git credentials so that I can push to my remote repo on Github?
- MacOS command line xcrun gives 2 identical code signing identities
- How to accept Touch ID on macOS without triggering a Prompt
- Save data into keychain using Shell Script
Related Questions in IDENTIFIER
- How does JavaScript knows the variable identifier points to the specified memory address?
- Getting `error: expected identifier or '(' before '}' token`
- Efficient way of watching and evaluating pieces of code with parameters in C++ that are cascading macros
- Why do I need to qualify tables with the schema "public" and double-quote some column names?
- What are the rules for _ underscore variables in C++26, and what's a name-independent declaration?
- Function to DELETE rows taking the parameters in sql query
- How to store information of two 3D point clouds using only one point cloud?
- no Maps ID in the option list when Register a new identifier for apple mapkit js
- Syntax error at or near ""20231002"" in procedure with dynamic table name
- ESP32 BLE unique identifier
- `<tr id='item-<xsl:value-of select="$item.count" />'>` : How to do it correctly?
- How to correctly handle misplaced keywords in FParsec preserving FParsec's inbuit error messages and positions?
- Signing and Capabilities in Xcode 15
- Using shortid as custom Object ID in MongoDB
- Can't Find Namespace "Microsoft.Win32"
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?
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)
The keychain entry will last as long as the device is not wiped or hard-reset or until the app deletes it. Apps can be deleted and replaced, but the keychain entry will remain. If an app from developer profile is overlaid with enterprise profile or app store the keychain entry should be fine.