Clicky

iOS Dev Nugget 115 Displaying Information in Settings App

.

Need to run a code review on your codebase? Hire me

Since the first public release of the iOS SDK, developers have been able to display preferences in the Settings app for our 3rd-party apps. This also presents a good outlet to display information that isn't of much use within the app itself such as app version number, acknowledgments and open source code attributions.

Create a Settings Bundle (via Xcode or manually create a folder and rename it to have the .bundle file extension) and have Root.plist as:

<?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>PreferenceSpecifiers</key>
    <array>
        <dict>
            <key>Title</key>
            <string>About</string>
            <key>Type</key>
            <string>PSGroupSpecifier</string>
        </dict>
        <dict>
            <key>DefaultValue</key>
            <string>1.0</string>
            <key>Key</key>
            <string>AppVersion</string>
            <key>Title</key>
            <string>Version</string>
            <key>Type</key>
            <string>PSTitleValueSpecifier</string>
        </dict>
        <dict>
            <key>File</key>
            <string> Acknowledgments </string>
            <key>Title</key>
            <string>Acknowledgments</string>
            <key>Type</key>
            <string>PSChildPaneSpecifier</string>
        </dict>
    </array>
    <key>StringsTable</key>
    <string>Root</string>
</dict>
</plist>

It also refers to Acknowledgments.plist:

<?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>StringsTable</key>
    <string>Root</string>
    <key>Title</key>
    <string>Acknowledgments</string>
    <key>PreferenceSpecifiers</key>
    <array>
        <dict>
            <key>Type</key>
            <string>PSGroupSpecifier</string>
            <key>FooterText</key>
            <string>Acknowledgments and attribution goes here. Remember you can localize this</string>
        </dict>
    </array>
</dict>
</plist>


Your feedback is valuable: Do you want more nuggets like this?   Yes   or   No

.

.

Like this and want such iOS dev nuggets to be emailed to you, weekly?

Sign Me Up! or follow @iosdevnuggets on Twitter

.

View archives of past issues