从AppStore下载的应用程序与从xcode和同步到iTunes的应用程序运行的应用程序有不同的行为

时间:2015-02-26 23:59:10

标签: ios swift

我们在应用商店中有一个有奇怪行为的应用。我们提交给应用商店的应用在调用特定事件时会崩溃。但是当使用Xcode运行应用程序并调用某些事件时,它不会造成任何崩溃。我也尝试使用.app并将其添加到iTunes上然后将应用程序安装到我的设备上;它不会造成任何崩溃。只有我们提交给appStore的应用程序才会在应用程序上创建奇怪的崩溃。

我已经检查了崩溃日志,它说。

enter image description here

崩溃日志指向此行代码。

func createPlaylist()
{
    let storePath = applicationDocumentsDirectory().stringByAppendingPathComponent("Playlist.plist")

    var playlists = NSDictionary(contentsOfFile: storePath)

    if playlists == nil
    {
        // return immediately
        return
    }

    let query = MPMediaQuery.songsQuery()

    var mediaItemCollection : MPMediaItemCollection // use for initial playlist of the app

    var keys : [String]  = playlists?.allKeys as [String]!

    for key in keys
    {
        var tempSongList : [MPMediaItem]  = [MPMediaItem]()

        var playlist = playlists?.objectForKey(key) as NSArray

        if (playlist.count > 0)
        {
            for persistentId in playlist
            {
                let predicate : MPMediaPropertyPredicate = MPMediaPropertyPredicate(value: persistentId, forProperty: MPMediaItemPropertyPersistentID)

                query.addFilterPredicate(predicate)

                let songs = query.items

                if (songs.count > 0)
                {
                    let mItem = songs[0] as MPMediaItem

                    tempSongList.append(mItem)
                }

                query.removeFilterPredicate(predicate)

            }
        }

        self.userPlaylistCollection[key] = tempSongList

        self.createPlaylistTitles()
    }

}
func createPlaylistTitles()
{
    let storePath = applicationDocumentsDirectory().stringByAppendingPathComponent("PlaylistTitles.plist")

    var playlistTitles = NSArray(contentsOfFile: storePath)

    if playlistTitles != nil
    {
         self.userPlaylistKey = playlistTitles as [String]
    }
}

任何人都可以帮我解决这个问题。我不知道为什么从AppStore下载的应用程序与从xcode和同步到iTunes的应用程序运行的应用程序有不同的行为。

感谢。

更新:

我已将应用程序上传到iTunesConnect,使用试飞版下载了应用程序。与从App Store下载相同的行为,应用程序崩溃。

0 个答案:

没有答案