1跃洛、
[access] This app has crashed because it attempted to access privacy-sensitive data without a usage description. The app's Info.plist must contain an NSCameraUsageDescription key with a string value explaining to the user how the app uses this data.
**(lldb) **
xcode 中訪問視頻以及圖片內(nèi)容的時候會出現(xiàn)這個崩潰在ios 10 上酒奶,因為這些資源都是被設置為私有的資源,所以我們需要相應的設置巍沙,和ios的網(wǎng)絡請求在ios8 上需要在info.plist 文件里面進行設置;
設置的基本的過程:
拷貝內(nèi)容如下:
<key>NSPhotoLibraryUsageDescription</key>
<string>此 App 需要您的同意才能讀取媒體資料庫</string>
<key>NSMicrophoneUsageDescription</key>
<string>此 App 需要您的同意才能讀取麥克風資源</string>
<key>NSCameraUsageDescription</key>
<string>此 App 需要您的同意才能讀取相機資源</string>
2灸眼、
有關的運行的xcode 8 經(jīng)常會顯示一些顯示在xcode中:
經(jīng)常會看到的是subsystem顯示一大片:
相應的解決辦法可以參考這個鏈接:
http://www.reibang.com/p/9b3e5111924f
3、不會自動選擇證書以及有賬號即可真機調(diào)試
選擇對應的開發(fā)者就好了祭犯,一個team,比如是自己的賬號
4滚停、 xcode 8 應該會檢測出相應的內(nèi)容是不是可謂null沃粗,以前的項目可能會出現(xiàn)的問題;
Nullability specifier 'nullable' conflicts with existing specifier 'nonnull'
ps: 也就是這個參數(shù)是不能夠為空了的键畴;
我們把定義的為nuable去掉就好了最盅;
reference:
http://stackoverflow.com/questions/29647919/how-to-use-nonnull-and-nullable-objective-c-keywords-in-block-based-api-method
https://github.com/kean/DFImageManager/issues/94
https://github.com/core-plot/core-plot/issues/284
5、出現(xiàn)這個警告:
"Unsupported Configuration: Plain Style unsupported in a Navigation Item"
這個警告:
1起惕、一種是講UIBarButton Item的樣式進行修改涡贱;將plain 的樣式改為bordered的樣式;
2惹想、是將里面的Button進行修改问词;
6、返回值出現(xiàn)警告嘀粱;
eg:open popViewController(animated: Bool) -> UIViewController? // Returns the popped controller.
(1)我們經(jīng)常使用的時候激挪,并沒有用變量存儲它的返回值,xcode8中會出現(xiàn)警告锋叨,我們可以"_=" 的方式垄分,
(2)@discardableResult 關鍵字聲明方法,表示這個方法返回值可以使用或者不使用悲柱,都不會出席那警告锋喜;
但是,為什么這里的popViewController 方法沒有使用這個關鍵字豌鸡,我們只能夠采用第一種方法了嘿般;
Note : 至于為什么xcode中沒有使用這個關鍵字,有待思考涯冠;
7炉奴、Range 和oc中的NSRange不同,
Range這個和Int類型好像沒有關系蛇更,初始化也是不是這樣子的瞻赶,它的思想是不一樣的,初始化是使用Index類型(eg:0..<2),所以派任,現(xiàn)在循環(huán)也有使用這中結構的類型砸逊;
項目中用Range替換掉NSRange的方法;獲取的思想也是不一樣的掌逛;
參考鏈接
8师逸、字符串獲取編碼
var removingPercentEncoding: String? { get } // 默認是utf8
若是要使用其他編碼可以.utf** ;
eg:
9、
objc[2246]: Class PLBuildVersion is implemented in both /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/PrivateFrameworks/AssetsLibraryServices.framework/AssetsLibraryServices (0x10aff8910)** and /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/PrivateFrameworks/PhotoLibraryServices.framework/PhotoLibraryServices (0x10ad8b210). One of the two will be used. Which one is undefined.**
很多人認為這個不是問題豆混,至于怎么解決有待研究篓像。
參考鏈接
10动知、ios 中8 一樣的通知測試
eg:如果使用信鴿進行推送,需要相應的配置過程(蘋果官方也一樣)需要相應的證書员辩;以及開發(fā)環(huán)境證書盒粮;
question:上面的配置都存在了,都沒有問題了奠滑;
我們?nèi)绻扑瓦€是不成功丹皱,需要查看我們通知的能力是否已經(jīng)打開;
額外的內(nèi)容:
通過brew 來安裝gcc养叛、gdb
g++已經(jīng)在mac上默認安裝了
png++ 應該就是一個圖片處理的庫种呐;
http://www.nongnu.org/pngpp/doc/0.2.9/
11宰翅、問題:
file:///Users/felix/iosFamilyTree/FamilyTree/DTSMobStreamView.xib:
** warning: Attribute Unavailable: Automatic Preferred Max Layout Width before iOS 8.0**
ps:
這個應該是當前的nib設置為version 8 之前的允許的使用弃甥;
12、問題:IB 上的問題:預加載
file:///Users/felix/iosFamilyTree/FamilyTree/Base.lproj/Main.storyboard:
error: IB Designables: Failed to render and update auto layout status for SplashScreen (y9Z-Yd-lOI): The agent crashed
ps:在我們的項目匯總經(jīng)常會寫到有關VCButton這樣的組件進行預加載設置空間的圓角等等汁讼;xcode 8 上出現(xiàn)了上面的問題淆攻,需要在原來的代碼中加入下面代碼,至于原因嘿架,暫時還不清楚瓶珊;
13、在copy target 的時候常常會出現(xiàn)的問題:
Warning: Multiple build commands for output file /Users/felix/Library/Developer/Xcode/DerivedData/FamilyTree-bnctsxqpqrkchqalkculrphluhoi/Build/Products/Debug-iphonesimulator/Relative.app/TencentOpenApi_IOS_Bundle.bundle
Warning: The Copy Bundle Resources build phase contains this target's Info.plist file 'FamilyTree/RelativeInfo.plist'.
就是info.plist 文件是系統(tǒng)啟動的時候就會加載耸彪,這個時候不用在編譯的時候再一次編譯伞芹,所以會出現(xiàn)警告,應該將它在build phases 中去掉蝉娜;
參考鏈接
參考鏈接
14唱较、問題:
ld: warning: directory not found for option '-L/Users/felix/iosFamilyTree/FamilyTree/WeChatConnect'
這個問題應該是這個文件沒有找到,也就是路徑錯誤召川,可能是在配置的時候路徑有問題南缓,這個去掉或者修改;
參考鏈接
15荧呐、關于系統(tǒng)出現(xiàn)的一些子系統(tǒng)內(nèi)容都會答應出來汉形,我們都知道進行target修改:
ps:這樣子我們就可以進行屏蔽掉對應的內(nèi)容的內(nèi)容的輸出;
參考鏈接
擴展:這里就會涉及到系統(tǒng)的target的變量了倍阐;這里就有了啟動的參數(shù)設置和環(huán)境變量的設置概疆;
ps: 一般是為了調(diào)試,
盡量是以“-” 開頭峰搪;可以設置在啟動的時候進行這些參數(shù)的清零等等操作岔冀;
同樣可以修改環(huán)境變量,這里都是直接精心配制的罢艾,一旦配制楣颠,一般的字符串的value都是不可以進行修改的尽纽,只可以進行閱讀;
參考鏈接:
https://viktyz.gitbooks.io/iosnotebook/content/Notes/Note_00140_20160205.html 一些可以設置的參數(shù)
https://xcoder.tips/yun-xing-shi-huan-jing-bian-liang/
https://developer.apple.com/library/content/technotes/tn2124/_index.html
16童漩、storyBoard上組件實現(xiàn)的問題:組件
這個問題不一定要修改弄贿,有時候可以顯示,有時候就沒有顯示矫膨;
ios 9 上不能夠沒有動畫差凹,將動畫勾上就可以了;或者不修改這個警告
storyboard 到xcode8 上的問題侧馅;file:///Users/felix/iosFamilyTree/FamilyTree/Base.lproj/Main.storyboard:
error: IB Designables: Failed to render and update auto layout status for MainController (BYZ-38-t0r): The agent crashed
file:///Users/felix/iosFamilyTree/FamilyTree/Base.lproj/Main.storyboard:
error: IB Designables: Failed to update auto layout status: The agent crashed
file:///Users/felix/iosFamilyTree/FamilyTree/Base.lproj/Main.storyboard:
error: IB Designables: Failed to render and update auto layout status for SplashScreen (y9Z-Yd-lOI): The agent crashed
還有一個可能危尿,就是在使用的代碼頁面,在代碼里面是否引入了這個頭文件(oc的代碼里面)
也可能是mac上顯示的問題馁痴;
file:///Users/felix/iosFamilyTree/FamilyTree/Base.lproj/Main.storyboard:
warning: Attribute Unavailable: Disabling segue animation is not available prior to iOS 9.0
在設置為show的情況下谊娇,出現(xiàn)顯示ios 9 上沒有好的權限;
(好像這個問題是直接勾選上animates就可以了)
file:///Users/felix/iosFamilyTree/FamilyTree/Base.lproj/Main.storyboard:
warning: Attribute Unavailable: Only Custom segues support class names prior to iOS 9.0
只有ios 9 才可以自定義segue名字的權限罗晕;所以會警告
17济欢、
18、
出現(xiàn)上面的問題小渊,大概是因為我們在ios10 之前的系統(tǒng)上運行的法褥,并且很可能是nib上進行直接拉取關系的,
ps: 所以我們應該進行特殊的處理酬屉,判斷當前的系統(tǒng)是否為ios10 的時候半等,再設置對應的接口;
19.bitcode 是蘋果官方優(yōu)化對應的上傳的包的代碼的一種方式呐萨,打包的時候應該盡可能的將它開啟杀饵,如果有些庫較老的時候,有可能是不支持這個bitCode的垛吗,所以凹髓,這個要進行特殊處理,獲取去掉怯屉,換新的蔚舀;
http://www.cocoachina.com/ios/20150818/13078.html
ios 10 上的新特性
http://www.cocoachina.com/ios/20160706/16952.html