dispatch_async
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ // 耗时的操作 dispatch_async(dispatch_get_main_queue(), ^{ // 更新界面 }); });
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ // 耗时的操作 dispatch_async(dispatch_get_main_queue(), ^{ // 更新界面 }); });
但很多時候你就會去做那些你不該做的事。比方說,你要寫一個 iOS 上的 Client,而 API Server 也還在開發中,接下來所有的 API 都會使用 HTTPS,但是還沒有花錢去買憑證,所以就先隨便產生了一個東西檔著先,而如果你使用 NSURLSession 試圖建立不安全的 HTTPS 連線的話,NSURLSession 就拒絕連線並且回傳 Error 物件。但是這種狀況下,你還是要先想辦法把連線建立起來,才有辦法在 Server 還在開發中的狀況下也寫點 Client Side 的程式。
身為iOS的開發人員很常會遇到iOS升級,Xcode也要跟著升級才能繼續開發
但很奇怪的是iOS每次升級,舊的APP就一定有問題,寫法都會有不相容新的SDK
勢必就要一一的去修正(真不懂為什麼Android就不用這麼麻煩)
有時候APP很趕著要上架,沒空一一修正和改寫不相容的錯誤
這時一個舊版的Xcode就很重要了,以下就教你如何安裝新舊兩套版本的Xcode
** If you have an existing class that you'd like to use, perform Step 2 and then skip to Step 5. (For some cases, I had to add an explicit #import <Foundation/Foundation.h
to an older ObjC File) **
Add a .m
file to your class, and name it CustomObject.m
When adding your .m
file, you'll likely be hit with a prompt that looks like this:
Click YES !
If you did not see the prompt, or accidentally deleted your bridging header, add a new .h
file to your project and name it <#YourProjectName#>-Bridging-Header.h
轉貼來源:
http://www.superqq.com/blog/2015/07/20/ioskai-fa-zhi-sha-he-ji-zhi-%28sandbox/
http://www.superqq.com/blog/2015/07/22/ioskai-fa-zhi-huo-qu-sha-he-lu-jing
iOS APP可以在自己的沙盒裡讀寫文件,但是,不可以訪問其他APP的沙盒。每一個APP都是一個信息孤島,相互是不可以進行通信的,唯獨可以通過URL Scheme。沙盒裡面的文件可以是照片、聲音文件、文本、屬性列表等。
DerivedData
影響:會刪除build生成的專案索引、build輸出以及日誌。重新打開項目時會重新生成,大的專案會耗費一些時間。
路徑:~/Library/Developer/Xcode/DerivedData
移除模擬器的臨時文件
影響:如果需要保留較新版本的模擬器,但tmp文件夾很大。放心刪吧,tmp文件夾裡的內容是不重要的。在iOS Device中,存儲空間不足時,tmp文件夾是可能被清空的。
路徑:~/Library/Application Support/iPhone Simulator/8.0/tmp
移除對舊設備的支持
影響:再連接舊設備調試時,會重新自動生成。
路徑:~/Library/Developer/Xcode/iOS DeviceSupport
Read more...
一 | 二 | 三 | 四 | 五 | 六 | 日 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 |