iOS開發一些路徑和配置
真機除錯檔案路徑
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport
描述檔案路徑
~/Library/MobileDevice/Provisioning Profiles
macOS系統快取路徑,可以定期清理快取
~/Library/Caches
Xcode清理快取和垃圾檔案
- 前往Xcode所在的檔案目錄:
~/Library/Developer/Xcode
(1) Archives 存放的是Xcode打包時生成的檔案,這裡面的檔案可以全部刪掉。
(2) DerivedData 存放的是build生成的專案索引、build輸出以及日誌,這裡的檔案可以全部刪除。
(3) iOS DeviceSupport 存放的是模擬器,對於你不需要的一些模擬器你可以刪掉。即使不小心刪掉了,也是可以重新下載的。
其他幾個檔案所佔的記憶體不多,可以不用去管它了。
Xcode開啟監聽殭屍物件
Target->Edit Scheme->Run->Diagnosics
將Zombie Objects
勾選上
MRC和ARC混編
-
iOS5.0以後就開始可以使用ARC了;
-
設定編譯環境:Target->Build Settings ->Objective-C Automatic Reference Counting,iOS5以後預設是YES,修改為NO即為MRC.
-
ARC環境下允許編譯MRC檔案:Target->Build phases->Compile Sources雙擊對應的MRC檔案在彈出框中新增
-fno-objc-arc
-
MRC環境下允許編譯ARC檔案:Target->Build phases->Compile Sources雙擊對應的ARC檔案在彈出框中新增
-fobjc-arc
即可.
使用pch檔案匯入標頭檔案方法(預編譯標頭檔案)
- 新建一個
PCH File
檔案,在裡面匯入一些預設的標頭檔案,可以說系統標頭檔案,也可以說自己建立的標頭檔案,也可以在裡面定義一些巨集,如:
#ifndef PrefixHeader_pch #define PrefixHeader_pch #ifdef __OBJC__//直被oc檔案所引用 #import <UIKit/UIKit.h> #import "Header.h" #define DefultUrl @"https://baidu.com/test" #endif #endif //建立一個Header File 檔案,在裡面定義一些巨集,可以說預設的常亮,也可以說變數 #ifndef Header_h #define Header_h #define Test @"預設設定" #endif /* Header_h */
- Target->Build Settings->Apple LVVM9.0 - Language中Precompile Prefix Header 設定為YES(預編譯標頭檔案設定為YES);雙擊Prefix Header將pch檔案路徑寫入(可以直接將pch檔案拖進去)
或者直接設定相對於專案的相對路徑如PCH巨集檔案/PrefixHeader.pch
也是可以的。
也可以說$(SRCROOT)/工程名字/pch檔名.pch
- 建議用第二、第三種方式,簡單不易出錯,第一種有時候多人開發可能會出錯,有時候專案換了路勁也可能出錯。
- 這樣pch檔案中的
UIKit.h
、Header.h
、DefultUrl
在整個工程中都可以直接使用,不用再匯入標頭檔案 - 實際上不僅僅PCH檔案可以設定成預編譯標頭檔案,
.h
標頭檔案也可以設定成預編譯標頭檔案,方法一樣,如’Header.h’也可以直接設定的。
Xcode定義Preprocessor Macros編譯巨集
- 有時候我們一個工程
(project)
中有多個target
,同一個程式塊,不同的邏輯。這裡就可以用到Preprocessor Macros了。只要把你的巨集加到Preprocessor Macros裡就行了。
Target->Build Settings ->Preprocessor Macros
雙擊新增巨集即可。
設定後項目中就可以直接使用了
相關推薦
iOS開發一些路徑和配置
真機除錯檔案路徑 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport 描述檔案路徑
iOS 開發一些常用外掛和第三方庫的整理
一:第三方外掛 1:基於響應式程式設計思想的oc 地址:https://github.com/ReactiveCocoa/ReactiveCocoa 2:hud提示框 地址:https://github.com/jdg/MBProgressHUD 3:XML/H
修改npm安裝的全局路徑和配置環境變量的坑
出現 默認 http prefix sta fig not 新建 top 修改npm安裝的全局路徑和配置環境變量的坑 轉自:http://www.qdfuns.com/notes/30749/0f66fcf5e62eed010f744d0d4adaa870.html 我之
iOS開發知識之:iOS開發中alloc和new的區別
1.在實際開發中很少會用到new,一般建立物件咱們看到的全是[[className alloc] init] 但是並不意味著你不會接觸到new,在一些程式碼中還是會看到[className new], 還有去面試的時候,也很可能被問到這個問題。 2.那麼,他們兩者之間到底有什麼區別呢 我們看原始碼:
iOS開發實用工具——CornerStone配置SVN
CornerStone作為一款適用於Mac作業系統的軟體,Subversion 客戶端管理工具。個人感覺用CornerStone配置svn相比XCode的svn容易上手的多。CornerStone配置雖不難,但也有幾個需要注意的地方,在此整理分享給大家,希望能提供些許幫助,當然更希望大家
React Native 開發環境安裝和配置
要進行Rect Native 開發你需要安裝如下工具, homebrew,nvm,watchman ,flow和node.js. Homebrew是一個方便開發者在MAC OS X系統上面安裝Linux工具包的ruby指令碼,而MAC OS X已經內建了ruby的
iOS開發必備OC和Swift的轉換速查手冊(強力推薦)
這篇文章主要給大家介紹了關於Objective-C和Swift的轉換速查手冊的相關資料,文中通過示例程式碼介紹的非常詳細,非常推薦給大家參考學習使用,盛情邀請讀者進入小編交流群:624212887,一起交流學習 前言 如果你正要從Objective-C過渡到
【iOS開發】SEL和Selector 原理小結
一 、Selector(選擇器)簡介 選擇器是用來選擇一個方法來為一個物件 執行的名稱,或是在編譯原始碼時替換該名稱的 唯一識別符號的名稱。一個選擇器本身不做任何事情。它簡單地識別了一種方法。唯一使選擇器的方法名稱不同於普通字串,編譯器確保選擇器是獨特的。
IOS開發-CocoaPods安裝和使用教程及常見錯誤
CocoaPods是iOS最常用的第三方類庫管理工具,絕大部分有名的開源類庫都支援CocoaPods。所以,作為iOS程式設計師,掌握CocoaPods的使用是必備技能。 下面我們就來講一下CocoaPods的安裝流程。 第一步:安裝cocoapods sudo gem
iOS 開發 Object-C和JavaScript互動詳解之OC與JS互動在WKWebView中使用
1.OC與JS互動在UIWebView中使用 2. WKWebView的使用詳解 3.OC與JS互動在WKWebView中使用 // // ViewController.m // oc與js互動WKWebView // // Cr
2.1 docker 啟動容器的時候可以使用的一些選項 和配置
Usage of docker: --api-enable-cors=false Enable CORS headers in the remote API # 遠端 API 中開啟 CORS 頭 -b, --bridge=""
IOS開發:尺寸和適配
iPhone裝置物理解析度是硬體所支援的,邏輯解析度是軟體可以達到的。代數裝置作業系統邏輯解析度(point)物理解析度(pixel)螢幕尺寸(對角線長度)縮放因子iPhone第一代iPhone 2GiOS 1320 x 480480 x 3203.5寸1x第二代iPh
ThinkPHP5開發環境安裝和配置
一、實驗目的 1、掌握ThinkPHP5(簡稱TP5)開發環境安裝和配置。 二、實驗內容 1、掌握AppServ開發環境安裝。 2、掌握TP5開發環境安裝。 3、掌握Composer開發環境安裝。 三、實驗步驟及過程 1、環境要求 我們選擇在Win8作業
iOS開發之NS_ASSUME_NONNULL_BEGIN和 NS_ASSUME_NONNULL_END
最近使用新更新的Xcode10.0新建類時,發現它自動為我們在.h檔案裡添加了NS_ASSUME_NONNULL_BEGIN和 NS_ASSUME_NONNULL_END。如下示例: #import <UIKit/UIKit.h> NS_ASSUME_
iOS開發中字串和字典的轉換
1.字串轉字典 NSString * jsonString = @“123”; NSData *jsonData = [jsonString dataUsingEncoding:NSUTF8St
iOS開發-CocoaPods安裝和使用教程
本文是對原文一些錯誤的修正已經添加了自己的理解。CocoaPods安裝和使用教程目錄CocoaPods是什麼?當你開發iOS應用時,會經常使用到很多第三方開源類庫,比如JSONKit,AFNetWorking等等。可能某個類庫又用到其他類庫,所以要使用它,必須得另外下載其他類
iOS開發 -- CocoaPods安裝和使用步驟(詳解)
CocoaPods是什麼? 當你開發iOS應用時,會經常使用到很多第三方開源類庫,比如JSONKit,AFNetWorking等等。可能某個類庫又用到其他類庫,所以要使用 它,必須得另外下載其他類庫,而其他類庫又用到其他類庫,這也許是比較特殊的情況。總之意思就是,手動
iOS 開發 CocoaPods安裝和使用教程
CocoaPods安裝和使用教程 目錄 CocoaPods是什麼? 當你開發iOS應用時,會經常使用到很多第三方開源類庫,比如JSONKit,AFNetWorking等等。可能某個類庫又用到其他類庫,所以要使用它,必須得另外下載其他類庫,而其他類庫又用到其他類庫,“子子孫
iOS開發私有變數和私有方法
oc中有私有變數,沒有私有犯法,但是嚴格來說沒有絕對的私有變數和私有方法 私有變數: oc中提供了關鍵字@private來宣告私有變數,只允許本類訪問 私有方法: oc中沒有提供關鍵字來宣告私有方法,可以通過catogry的匿名類E
ios開發-懶載入和模型的封裝
一. ios開發中的懶載入 什麼是懶載入: 就是在需要資料的時候,再去載入資料,可以理解為延遲載入. OC中懶載入的形式 首先在控制器中宣告一個數組 @property (nonatomic, strong) NSArray *