Ti.Media.queryMusicLibrary在新的更新后崩溃应用程序?

时间:2016-09-19 08:20:26

标签: ios appcelerator

在新的OS 10 Apple中,我添加了访问music library的新权限,我的问题是使用Ti.Media.queryMusicLibrary,当我调用此方法应用程序崩溃时,我试图搜索条件检查用户是否已授予访问权限或请求访问音乐库无法找到它们!

var musicList = Ti.Media.queryMusicLibrary({
    mediaType : Ti.Media.MUSIC_MEDIA_TYPE_MUSIC
});

升级到ios 10和appcelerator SDK到5.5.0.GA后,当您调用上述方法时,应用程序将崩溃!

1 个答案:

答案 0 :(得分:1)

尝试将以下密钥添加到tiapp.xml ios标记:

<强> NSAppleMusicUsageDescription

<ios>
        <plist>
            <dict>
                <key>NSAppleMusicUsageDescription</key>
                <string>Allow this app to access your music library.</string>

                <key>UISupportedInterfaceOrientations~iphone</key>
                <array>
                    <string>UIInterfaceOrientationPortrait</string>
                </array>
                <key>UISupportedInterfaceOrientations~ipad</key>
                <array>
                    <string>UIInterfaceOrientationPortrait</string>
                    <string>UIInterfaceOrientationPortraitUpsideDown</string>
                    <string>UIInterfaceOrientationLandscapeLeft</string>
                    <string>UIInterfaceOrientationLandscapeRight</string>
                </array>
                <key>UIRequiresPersistentWiFi</key>
                <false/>
                <key>UIPrerenderedIcon</key>
                <false/>
            </dict>
        </plist>
    </ios>

此外,

  • 在try-catch块中包装Ti代码以便更安全地使用。

  • 根据当前的文档,有一种检查Audio Permissions的方法,但我不确定它是否会要求获得音乐库权限,它只适用于Ti SDK 6.0。 0对于一般公众来说还没有。

有关更多信息,请参阅以下链接:

<强> Music Library Permission

<强> iOS 10 Music Library Permission