2016-10-10 25 views
5

我已經構建了一個xamarin.ios應用程序。該應用程序一直工作得很好。沒有任何代碼改變,而且突然間,訪問攝像頭時該應用程序崩潰。我不知道爲什麼會發生這種情況,誰能解釋這個問題?我有谷歌周圍這個錯誤,並嘗試各種事情,包括刪除各種軟件包。我最近更新到ios 10,但更新後,該應用程序仍然正常工作。下面的錯誤是:執行本機代碼時遇到SIGABRT xamarin.ios

2016年10月10日21:44:28.925教練員[307:24128]臨界:母語 堆棧跟蹤:

2016年10月10日21:44:28.934教練員[307 :24128]臨界:0
libmonosgen-2.0.dylib 0x00363d33 mono_handle_native_sigsegv + 242二〇一六年十月一十日21:44:28.934 教練員[307:24128]臨界:1個libsystem_platform.dylib
0x1db5326d _sigtramp + 24 2016-10 -10 21:44:28.935 Coacher [307:24128] critical:2 libsystem_kernel.dylib 0x1da9fd8f + 64 2016-10-10 21:44:28.935 Coacher [307:24128] critical: 3 libsystem_kernel.dylib 0x1da9fdd9 system_set_sfi_window + 0 2016-10-10 21:44:28.935 Coacher [307:24128] critical:4 TCC 0x201a8e85 + 228 2016-10-10 21:44:28.936 Coacher [307:24128] critical: 5 TCC 0x201a8da1 + 0 2016-10-10 21:44:28.936 Coacher [307:24128] critical:6 TCC
0x201ab57b + 276 2016-10-10 21:44:28.936 Coacher [307:24128] critical:7 libxpc.dylib 0x1db8915f + 46 2016-10-10 21:44:28.937 Coacher [307:24128] critical: 8 libxpc.dylib 0x1db89101 + 26 2016-10-10 21:44:28.937 Coacher [307:24128] critical:9
libdispatch.dylib 0x1d9ae49b + 604 2016年10月10日21:44:28.937教練員[307:24128]臨界:10 libdispatch.dylib 0x1d9afa91 + 378 2016年10月10日21:44:28.938教練員[307: 24128]臨界:11 libdispatch.dylib 0x1d9af8b7 + 106 2016年10月10日21:44:28.938教練員[307:24128]臨界:12 libsystem_pthread.dylib 0x1db55947 _pthread_wqthread + 1168 2016年10月10日21點44分: 28.938 Coacher [307:24128] critical:13 libsystem_pthread.dylib 0x1db5549c start_wqthread + 8 2016-10-10 21:44:28.939 Coacher [307:24128] critical: ============ ================================================== ===執行本機代碼時遇到了SIGABRT。這通常表示單聲道運行時錯誤或您的

應用程序使用的本機庫中的一個致命的 錯誤。

回答

8

這是因爲您的iOS 10更新。你需要現在請求相機的許可。以下博客文章現在解釋如何設置這些權限。

https://blog.xamarin.com/new-ios-10-privacy-permission-settings/

在iOS的10起,即要求請求授權和其他API,如打開相機或照片庫幾乎所有的API,需要一個新的鍵值對,描述他們在信息的使用。 plist中。這與NSLocation的要求非常相似,當使用地理位置和iBeacon API時,將UseUseageDescription或NSLocationAlwaysUsageDescription放入Info.plit中。現在的區別是,當應用程序在未設置這些密鑰的情況下嘗試授權時,應用程序會崩潰。

+0

哇非常感謝!!!!你真的救了我的培根。我不知道我必須這樣做,錯誤不清楚問題是什麼。謝謝!!! –

+0

我仍然有一個問題在這裏,我要錄製帶聲音的視頻,所以我增加了兩個NSCameraUsageDescription和NSMicrophoneUsageDescription。該應用程序請求訪問相機,然後崩潰,如果我重新打開應用程序,它然後要求音頻訪問和工作。我如何請求這兩個權限? –

+0

嗯,不知道可能先請求麥克風,然後啓動相機?如果沒有代碼,現在很難說。我也必須四處搜索並搜索文檔。也許可以添加'NSPhotoLibraryUsageDescription'。對不起,我還沒有使用它在生產。 –