You should store this in the keychain, this is what I'll do. The keychain is far more secure than a .plist or the user defaults (which are .plists, too, as far as I know). Have a look at SFHFKeychainUtils, you should be able to use this or just implement a better method exactly for the need to save a simple bool.
It is easy to edit the com.something.plist without jailbreaking. With a free tool* you can browse your device, you can also edit and save these files. If you store your inapp purchase something like this:
EDIT:
The suggested method only protects - somewhat - your IAP if the user doesn't have access to the hashed value. If someone gets it from somewhere, it is easy to copy that data to the plist. If the SALT is device dependent copying is useless.
You can not edit you're info.plist file dynamically. When you submit your app to The App Store, your app bundle, which includes info.plist, can't change because the signature created when you compile you app is based on the bundle.
Any pirate has a jail-broken iPhoneAny jail-broken device offers full file system access via tools like PhoneDisk, etcAny file system access allows people to change the values in your applications .plist file
I removed the files com.apple.audio.DeviceSettings.plist and com.apple.audio.SystemSettings.plist (Go > Computer > Macintosh HD > Library > Preferences > Audio) and restarted. Now the popping and crackling is gone. I got the answer from these pages (kudo's to them!): _source=share&utm_medium=web2x&context=3
Had a call with Apple Support about this issue. The above solution is a verified solution (it's a step they take sometimes to fix issues) and removing 'preference' or 'plist' files cant harm the OS much as they almost always get recreated on reboot. Disclaimer: do make a backup of the files before removing them so that you can always revert the changes.
I had a lot of trouble getting a com.steinberg.Virtual Guitarist 2.plist file because my old Macintosh HD crashed.
But now I am happy. My VG2 works fine.
I created a new (empty) com.steinberg.Virtual Guitarist 2.plist file in TextWrangler and pasted the following text in the newly created file (without the 2 lines)
Because of the specific nature of PLists to Development, however, using a special program like Xcode or Property List Editor becomes a much more fruitful endeavor. This is because it not only automatically formats the XML code for you, but it will actually translate the key identifiers and layers into readable words, and also for some values it will provide a drop-down menu to fill in the correct responses. Especially when dealing with iPhone plists, when multiple runtime variables can be set using the Plist, easily creating new fields and knowing what to put in them makes it so much easier.
A fine program like TextWrangler can edit binary .plist files without first converting them using Terminal. Simply open the file like you would any other (i.e. drag-and-drop on the program icon, or the File open dialog, or Open With in the Finder or...)
The extension is cross-platform but primarily uses the macOS plutil binary for conversion, the Python plistlib is used as an alterntative if available. The node package simple-plist is used as a fallback but due to JavaScript not having a float type real values that are whole numbers will be cast to integer types (a warning dialog is shown first).
I wasn't sure whether to post this in here or in Feature Requests. Ultimately, I chose here because the workflow configuration sheet and workflow variables provide a very handy way to configure a workflow, but its utility as a settings store is significantly limited by the fact that Alfred doesn't notice when info.plist was altered by something other than itself.
The problem is that Alfred takes several seconds to notice that info.plist has been changed by something other than itself (possibly several minutes if the workflow is symlinked), so the setting doesn't immediately stick and the workflow displays incorrect info or straight-up doesn't work until Alfred notices.
Ideally, Alfred would either (a) check the modtime of info.plist every time it sets the workflow variables or (b) provide some official means for workflows to edit their own settings, e.g. /Applications/Alfred\ 3.app/Contents/MacOS/Alfred\ 3 --set "name" "value" (Alfred can grab the workflow's bundle ID from its own workflow variable! How cool is that?)
@deanishe I wonder why symlinked workflows take that long to update, I'd have to look into that. Alfred is fed filesystem notifications from macOS when there is an update Alfred should be aware of (this mechanism is also used for the syncing), and Alfred sets the grouping param to 5 seconds, so it shouldn't be any slower than this. I wonder if symlinked ones aren't even getting notifications at all, and it's an alternative mechanism (there are a few others) which is reloading the info plist at that time.
For my part, I'd prefer an tiny official helper program for updating the values. It would pretty much eliminate the risk of a workflow screwing up its own info.plist, allow Alfred to be aware of any changes instantly, and allow you to change how/where settings are stored however you like. You could pass the path to the helper program as an environment variable, then I can just run "$alfred_variables_setter" API_KEY "ABC-DEF-XYZ".
Having just written a workflow that re-writes its own info.plist (i.e. not just setting variables), I'd love to see a reload command added to Alfred's AppleScript dictionary that tells it to re-read info.plist.
In the Mac OS X and iPhone OS, property list files are files that store serialized objects. Property list files use the filename extension .plist. Mac OS X 10.2 introduced a new format where property list files are stored as binary files. Starting with Mac OS X 10.4, this is the default format for preference files.
plist Editor Pro is a tool that can help you to reading and edit both XML format and binary format plist file under Windows system.
Before, we can only edit plist file under Mac OS, now with plist Editor Pro, we can also reading and edit plist file under Windows system. It is directed both to software developers and to end users who like to have full access plist files under Windows system.
PlistEdit Pro is the most advanced property list editor written for Mac OS X. Property list files are used throughout Mac OS X, and with PlistEdit Pro, users can easily change these files and exert finer control over their systems. You can use PlistEdit Pro in your development work, and its built-in preference file browser lets you explore and tweak your system's settings to your heart's content.
Some of PlistEdit Pro's features include:
- Full drag and drop and copy/paste support
- Full keyboard navigation of the interface
- The ability to view and edit a property list both in an outline and as raw text
- Support for editing both plist and JSON files
- Extensive Applescript support, for automating processes involving property list files
- Property list definitions, which make editing common forms of property lists less cumbersome
- Full multi-level undo support
- Powerful find/replace capabilities
- A built-in window to browse through your preference files
- Customizable fonts
Open the com.adobe.acrobat.FeatureState.plist file in any plist editor. If you don't find the plist file, create a file of type Property List with the name 'com.adobe.acrobat.FeatureState' using any plist editor.
Preference files are stored in the app container, which isn't the same thing as the app bundle. The app container is created the first time an app is run. The app container is located in the user's /Library/Containers folder. For example, the app container for Outlook is named com.microsoft.Outlook. Within the app container, the .plist file is located in the Data/Library/Preferences folder. For example, the .plist file for Outlook is named com.microsoft.Outlook.plist.
You can take an existing .plist file and modify it with your organization's preferences. In some cases, you can actually copy that .plist file to other Mac devices in your organization that have Office installed. But that doesn't work for all .plist files. Therefore, the preferred method is to create a script that incorporates all the defaults commands that you want to use to set preferences. Then deploy that script to your users. Because preferences are user-specific, you need to run the script in the user's context. If several users share the same device and each user has a different account, then the script needs to be run for each user of that device.
I recently updated my hack to 10.15.2 from 10.15 and I started having issues with audio (same on 10.15.1). Every time I start a sound for ex. Youtube or in Music app, there are crackling/popping sounds when playing and browsing in Finder, Safari, etc.
Plist Editor Pro is a software program designed to fulfill the users need of manipulating both XML format and binary format plist file either on Windows OS or Mac OS.
The program is extremely easy to install and the interface can be described as straightforward. When you enter the editor, you discover that the main interface is composed of a simple main menu, with different tabs, and a button action menu, with basic commands such as Print, Copy, Cut or Create new document.
Despite being very responsive to user commands, the software could've had a more modern and polished GUI, all along with a few skins to choose from.
Also, if you maximize the program's window, the icons of the action menu seem to be too small, and the text becomes blurry.
When it comes to functionalities, plist Editor Pro comes equipped with basic editing features but which are quite useful and very well implemented.
Users are able to read and edit plist files in XML text mode, while in the List mode they can select a DATA property while the program opens and decodes the data with the built-in editor.
Other features worth to mention are the option to check plist syntax before saving it to the disk, as well as functions like Syntax highlighting, Bookmark, Undo and Redo, or Search and Replace.