1义屏、檢測(cè)APP磨镶、靜態(tài)庫(kù)、framework是否支持bitcode
- (a) 靜態(tài)庫(kù):
打開終端急黎,輸入一下指令扎狱,xxx.a代表你的靜態(tài)庫(kù)路徑
otool -arch armv7 -l xxx.a | grep __bitcode | wc -l
如果輸出的數(shù)字不為0,就代表包含bitcode
- (b) APP、framework:
framework和APP勃教,只要傳遞對(duì)應(yīng)的二進(jìn)制文件即可淤击。由于APP和framework的二進(jìn)制文件和.a存在一定的差異,因?yàn)锳PP和framework的二進(jìn)制文件需要檢測(cè)的是__LLVM端故源,當(dāng)該段出現(xiàn)的時(shí)候污抬,則判定為支持bitcode,否則不支持绳军。終端指令如下:
otool -l xxxx | grep __LLVM | wc -l
xxxx為二進(jìn)制文件的路徑印机。當(dāng)你是使用lipo指令生成framework矢腻,進(jìn)行拆解和合并之后,需要指定指令集進(jìn)行檢查才可以射赛,終端命令如下:
otool -arch armv7 -l xxxx | grep __LLVM | wc -l
2多柑、framework如何支持bitcode:
第一步,DEPLOYMENT_POSTPROCESSING = YES楣责,
第二步顷蟆,設(shè)置 STRIP_STYLE 為 Debugging Symbols,
第三步腐魂,Build Settings -> Compiler Flags添加 -fembed-bitcode 參數(shù)
第四步,確認(rèn)Build Settings -> Enable Bitcode 為YES
上述操作完成之后逐纬,重新打一個(gè)framework出來(此處不贅述制作framework的方法)蛔屹,通過檢測(cè)方法去檢測(cè),就可以了豁生。