バックグラウンド:
Apple は、デバイスを 1 つのアプリケーションにロックする iOS6 の一部として、iPad 用の「キオスク モード」を提供します (アプリを直接起動することもできます)。小売店/レストランなどで iPad を使用するのに最適です。
これを使用するには、最初にデバイスを Apple Configurator を使用して「監視対象」デバイスとして設定する必要があります。次に、「App Lock」と呼ばれる構成プロファイルに特別なエントリを追加します。最近更新された構成プロファイル ドキュメントに従いました。基本的に、PayloadType を 'com.apple.app.lock' として設定し、アプリケーションのバンドル ID の値に設定される 'Identifier' というプロパティを追加するだけです。
構成プロファイルを iPad に追加しようとすると (Safari リンク、MDM、または Apple Configurator を介して)、拒否されます。
Xcode のコンソール出力には、次のように表示されます。
Sep 24 17:51:56 Test-iPad mc_mobile_tunnel[487] <Notice>: (Note ) MDM: Attempting to perform Supervised request: ProfileList
Sep 24 17:51:56 Test-iPad installd[30] <Error>: 0x2ff9f000 filter_attributes: Info.plist keys requested via MobileInstallationLookup/Browse in client Apple Configurator (via mobile_installation_proxy) were not found in MobileInstallation's cache. Please file a bug requesting that these keys be added: <CFBasicHash 0x1e58b0b0 [0x3d8f2100]>{type = mutable set, count = 1,
entries =>
2 : <CFString 0x3d8de564 [0x3d8f2100]>{contents = "CFBundleSignature"}
}
Sep 24 17:51:57 Test-iPad mc_mobile_tunnel[492] <Notice>: (Error) MC: MCAppWhitelistPayload Can't parse payload: NSError:
Desc : The payload “Test Profile” is invalid.
Sugg : The field “App” is invalid.
US Desc: The payload “Test Profile” is invalid.
US Sugg: The field “App” is invalid.
Domain : MCPayloadErrorDomain
Code : 2000
Type : MCFatalError
Params : (
"Test Profile"
)
...Underlying error:
NSError:
Desc : The field “App” is invalid.
US Desc: The field “App” is invalid.
Domain : MCPayloadErrorDomain
Code : 2003
Type : MCFatalError
Params : (
App
)
Sep 24 17:51:57 Test-iPad mc_mobile_tunnel[492] <Notice>: (Error) MC: Payload “(null)” contains ignored fields. They are: <CFBasicHash 0x20819140 [0x3d8f2100]>{type = mutable dict, count = 1,
entries =>
1 : <CFString 0x1f527bd0 [0x3d8f2100]>{contents = "Identifier"} = <CFString 0x1f527c10 [0x3d8f2100]>{contents = "com.hubworks.myapp"}
}
Sep 24 17:51:57 Test-iPad mc_mobile_tunnel[492] <Notice>: (Error) MC: Cannot create profile of type “com.apple.app.lock”. Error: NSError:
Desc : The payload “Test Profile” is invalid.
Sugg : The field “App” is invalid.
US Desc: The payload “Test Profile” is invalid.
US Sugg: The field “App” is invalid.
Domain : MCPayloadErrorDomain
Code : 2000
Type : MCFatalError
Params : (
"Test Profile"
)
...Underlying error:
NSError:
Desc : The field “App” is invalid.
US Desc: The field “App” is invalid.
Domain : MCPayloadErrorDomain
Code : 2003
Type : MCFatalError
Params : (
App
)
Sep 24 17:51:57 Test-iPad mc_mobile_tunnel[492] <Notice>: (Error) MC: Profile MCConfigurationProfile 0x1f526100, version 1:
Display Name: “Test Profile”
Identifier : home-macbook-air.local.2A8DC5A2-937E-4246-B2AF-7C756C30C447
UUID : E06A5B33-9CD3-40CB-8611-0479E642B427
Is Stub : No
Locked : No
Encrypted : No
Trusted : 2
Signed : Yes
Signed by : Apple Configurator (58:55:CA:F7:24:B9)
Can't parse profile: NSError:
Desc : The profile “Test Profile” is invalid.
Sugg : The payload “Test Profile” is invalid.
US Desc: The profile “Test Profile” is invalid.
US Sugg: The payload “Test Profile” is invalid.
Domain : MCProfileErrorDomain
Code : 1000
Type : MCFatalError
Params : (
"Test Profile"
)
...Underlying error:
NSError:
Desc : The payload “Test Profile” is invalid.
Sugg : The field “App” is invalid.
US Desc: The payload “Test Profile” is invalid.
US Sugg: The field “App” is invalid.
Domain : MCPayloadErrorDomain
Code : 2000
Type : MCFatalError
Params : (
"Test Profile"
)
...Underlying error:
NSError:
Desc : The field “App” is invalid.
US Desc: The field “App” is invalid.
Domain : MCPayloadErrorDomain
Code : 2003
Type : MCFatalError
Params : (
App
)
Extra info:
{
isPrimary = 1;
}
Sep 24 17:51:57 Test-iPad mc_mobile_tunnel[492] <Notice>: (Error) MC: Failed to parse profile data. Error: NSError:
Desc : The profile “Test Profile” is invalid.
Sugg : The payload “Test Profile” is invalid.
US Desc: The profile “Test Profile” is invalid.
US Sugg: The payload “Test Profile” is invalid.
Domain : MCProfileErrorDomain
Code : 1000
Type : MCFatalError
Params : (
"Test Profile"
)
...Underlying error:
NSError:
Desc : The payload “Test Profile” is invalid.
Sugg : The field “App” is invalid.
US Desc: The payload “Test Profile” is invalid.
US Sugg: The field “App” is invalid.
Domain : MCPayloadErrorDomain
Code : 2000
Type : MCFatalError
Params : (
"Test Profile"
)
...Underlying error:
NSError:
Desc : The field “App” is invalid.
US Desc: The field “App” is invalid.
Domain : MCPayloadErrorDomain
Code : 2003
Type : MCFatalError
Params : (
App
)
Extra info:
{
isPrimary = 1;
}