When dealing with universal links, how can I exclude a specific subdomain? What should I add in my entitlement file if I wanted to exclude help.example.com so that that url is opened in the browser?
My entitlement file looks like:
<?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>com.apple.developer.associated-domains</key>
<array>
<string>applinks:www.example.com</string>
<string>applinks:*.example.com</string>
</array>
</dict>
</plist>
Related
So i need to disable ATS in my xcode project by typing
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
in my info.plist. However my info.plist file contains only
<?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>LastAccessedDate</key>
<date>2022-11-06T09:15:11Z</date>
<key>WorkspacePath</key>
<string>/Users/markmarus/Desktop/name/name.xcodeproj</string>
</dict>
</plist>
There also is a scm.plist which contains
<?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>Version</key>
<integer>5</integer>
</dict>
</plist>
After adding ATS settings and starting simulator up the info.plist file just deletes added lines so it changes nothing.
The Info.plist generated by Xcode starts with a uppercase letter and contains much more information than your obviously self-generated one.
If you want to modify the Xcode Info.plist do it the GUI in the Info tab of the target. After adding a custom key-value pair it appears also in the project navigator and you can open it as Source Code to modify the property list text directly.
I want to turn the tutorial off and set the default folder, so I'm not asked when the machine boots.
I have created a plist based on the instruction (https://learn.microsoft.com/en-us/onedrive/deploy-and-configure-on-macos), and when I log into OneDrive via the app, nothing changed. I'm still asked for the drive location, and the tutorial still runs.
Plist File: com.microsoft.OneDrive.plist
Location: /Users/syacko/Library/Preferences
<?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>DefaultFolder</key>
<dict>
<key>Path</key>
<string>/Users/syacko</string>
<key>TenantId</key>
<string>ee19ff16-4eb9-4f7e-acdb-XXXXXXXXX</string>
</dict>
<key>DisableTutorial</key>
<true/>
</dict>
</plist>
I have an app with multiple schemes, where I want to have a different associated domain for each scheme.
I have the following .entitlements file:
<?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>com.apple.developer.associated-domains</key>
<array>
<string>applinks:$(ASSOCIATED_DOMAIN)</string>
<string>webcredentials:(ASSOCIATED_DOMAIN)</string>
</array>
</dict>
</plist>
My .xcconfig files look like this (?mode=developer is only there to verify everything is working and will be removed):
// ...
ASSOCIATED_DOMAIN="my.domain.com?mode=developer"
I tried to verify my link with the following command, but this opens mobile Safari:
xcrun simctl openurl booted 'https://my.domain.com/app/link'
My /.well-known/apple-app-site-association file is accessible and when I inline my domain and remove the $(ASSOCIATED_DOMAIN) the app link works as expected by opening the app instead of Safari. In this case, my .entitlements file looks like this:
<?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>com.apple.developer.associated-domains</key>
<array>
<string>applinks:my.domain.com?mode=developer</string>
<string>webcredentials:my.domain.com?mode=developer</string>
</array>
</dict>
</plist>
Does anybody have a suggestion what might be wrong? Thanks!
Instead of using a variable for the ASSOCIATED_DOMAIN value, consider specifying a separate entitlements file for each of the schemes.
In the relevant xcconfig file, this can be done by setting:
CODE_SIGN_ENTITLEMENTS = [location of the file].entitlements
I receive "CommandFormatError" on Managed Settings commands.
That's what I'm sending as a Settings command:
<?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>CommandUUID</key>
<string>123456</string>
<key>Command</key>
<dict>
<key>RequestType</key>
<string>Settings</string>
<key>Settings</key>
<array>
<dict>
<key>Item</key>
<string>VoiceRoaming</string>
<key>Enabled</key>
<true/>
</dict>
</array>
</dict>
</dict>
</plist>
Thank you in advance!
I am also having this same exact issue. Specifically, for VoiceRoaming command on both iPhone (iOS 7 AT&T) and iPad (iOS 8).
According to this 3rd party documentation: http://darthnull.org/media/papers/MDM_CommandReference.pdf
The CommandFormatError is the result of sending the Setting to a device/carrier combination that does not support it.
Hope that helps
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN""http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Command</key>
<key>RequestType</key>
<string>RemoveApplication</string>
<key>Identifier</key>
<string>com.mega888.Release</string></dict>
<key>CommandUUID</key><string>RemoveApplication</string>
</dict>
</plis>
I've researched that the whitelist rejection error requires
<key>ExternalHosts</key>
<array>
<string>*</string>
</array>
in your plist file. I'm building this app with phonegap build (not with XCode) and I need to know where in the plist file this key goes. Currently I have it as follows:
<plist version="1.0">
<dict>
<key>items</key>
<array>
...
</array>
<key>ExternalHosts</key>
<array>
<string>*</string>
</array>
</dict>
</plist>
But this is still throwing the same error.
Are there any modifications I need to make to my app in tandem with this change?
I did put that:
`<?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>KeyboardDisplayRequiresUserAction</key>
<true/>
...
<key>BackupWebStorage</key>
<string>cloud</string>
<key>ExternalHosts</key>
<array>
<string>dl.dropbox.com</string>
</array>
<key>Plugins</key>
<dict>`
into Cordova.plist file.