2015-01-26 3 views
0

이 코드를 사용하여 몇 뷰 컨트롤러에 PLIST 벌금에서 데이터를로드 한로드 할 때 :충돌은 PLIST

if let path = NSBundle.mainBundle().pathForResource("eBaySiteIDs", ofType: "plist") { 

     if let dict = NSArray(contentsOfFile: path) as? Array<AnyObject> { 
      // use swift dictionary as normal 
      countryArray = dict as? [[String : AnyObject]] 
     } 
    } 

이 디버그 모드에서 제대로 실행,하지만 곧 나는 릴리스 구축 모드에서 응용 프로그램이 countryArray에 액세스하려고 시도 할 때 충돌합니다.

아이디어가 있으십니까?

감사

내가

NSLog("\(NSArray(contentsOfFile: path))") 

내가 올바른 값을 얻을 사용하여 어레이를 기록하려고하면

편집 할 수 있습니다.

답변

0

귀하의 문제는 귀하의 리소스가 귀하의 빌드 단계에 아직 추가되지 않았기 때문입니다. 따라서 디버그 모드에서 작동하지만 릴리스 모드에서는 파일이 누락됩니다.

따라서 Xcode targetBuild Phases 아래의 동영상을 Copy Bundle Resources에 추가해야합니다.

+0

그것은 거기에 이미 –

0

해결되었습니다. I가 문을 변경하는 데 필요한 몇 가지 이유를 들어

는 :

if let dict : AnyObject = NSArray(contentsOfFile: path) { 

}