Webrtc編譯篇

此篇是源于自己跟團(tuán)隊(duì)小伙伴在運(yùn)行源碼demo時(shí)一些稀奇古怪問(wèn)題的坑,望眾基共勉之衰齐。由于比較雜,所以主要針對(duì)命令行跟蹤所遇到的問(wèn)題出發(fā)做筆記继阻。

mobileprovision-read -f app/embedded.mobileprovision

該命令行用于查看app對(duì)應(yīng)的provisonning文件是否和簽名對(duì)應(yīng)耻涛,其中有幾個(gè)key可供對(duì)比使用:

1、com.apple.developer.team-identifier
2瘟檩、Name
3抹缕、ProvisionedDevices
4、TeamName
5墨辛、UUID
1卓研、該命令行中有許多類(lèi)似key值的string與其相同,用于存儲(chǔ)開(kāi)發(fā)者團(tuán)隊(duì)的TeamIdentifier
2睹簇、為provisonning文件的文件名
3奏赘、當(dāng)前項(xiàng)目開(kāi)發(fā)者團(tuán)隊(duì)組中授權(quán)的設(shè)備UUID數(shù)組
4、開(kāi)發(fā)者團(tuán)隊(duì)名
5開(kāi)發(fā)者團(tuán)隊(duì)的ID

附帶貼一個(gè)鏈接(.mobileprovision文件查詢工具)
https://github.com/0xc010d/mobileprovision-read
關(guān)于provisonning文件太惠,以'iOS Team'開(kāi)頭的文件磨淌,現(xiàn)在只能在xcode中進(jìn)行管理,developer apple中不顯示
對(duì)比兩個(gè)APP中的embedded.mobileprovision是否一樣凿渊,使用

md5 embedded.mobileprovision
例:MD5 (embedded.mobileprovision) = 91a3dc5a9c4ec0edc035231ced41dbfe

附上一個(gè)地址/Users/ducky/Library/MobileDevice/Provisioning Profiles

關(guān)于webrtc的源碼管理(from大佬)

gclient是用來(lái)同步代碼梁只,在和src同級(jí)目錄會(huì)有一個(gè)隱藏.gclient文件,里面記錄了基本的代碼拉取設(shè)置
src里面的各個(gè)目錄埃脏、甚至子目錄搪锣,基本上都是一個(gè)獨(dú)立的git庫(kù)
 gclient sync的命令回去檢查整個(gè)項(xiàng)目的完整情況,并同步代碼
如果gclient sync無(wú)法通過(guò)彩掐,一般都不是代碼的問(wèn)題构舟,是因?yàn)楣ぞ哝溁蛞蕾噹?kù)和當(dāng)前代碼需要的不一致
gclient是用來(lái)同步代碼和工具鏈的
gn 是用來(lái)產(chǎn)生ninja所需的配置文件
ninja 才是編譯的
代碼里面有很多*.gni,可以認(rèn)為是和make腳本差不多的堵幽,是告訴ninja旁壮,我要編譯某個(gè)項(xiàng)目
例如AppRTCMobile,需要哪些代碼文件谐檀、以來(lái)哪些庫(kù)

git status

該命令行可查看自己的對(duì)該git的改動(dòng)

gn clean < out_dir>

刪除輸出目錄的內(nèi)容抡谐,除了args.gn和創(chuàng)建一個(gè)足以重新生成構(gòu)建的忍者構(gòu)建環(huán)境。
個(gè)人見(jiàn)解:該命令行作用應(yīng)與xcode中clean操作功能相識(shí)桐猬,clean后out中目錄相關(guān)目錄會(huì)被刪除麦撵,
但不需要重新gn新的一份,可直接用ninja編譯。

gn args < out_dir> [--list] [--short] [--args]

該命令行其實(shí)在生成項(xiàng)目篇有提及到免胃,--list可查看所有參數(shù)默認(rèn)值音五,若指定為--short則只給出當(dāng)前設(shè)置的參數(shù)。
其實(shí)根據(jù)gn的官方文檔羔沙,該命令行有很強(qiáng)大檢索功能躺涝,但這點(diǎn)我一直設(shè)置錯(cuò)誤,待補(bǔ)充扼雏。

ios_enable_code_signing=false

這是gn項(xiàng)目時(shí)的一個(gè)設(shè)置參數(shù)坚嗜,當(dāng)沒(méi)有簽名時(shí),設(shè)置false可不簽名诗充,仍可以編譯苍蔬,但不能部署到真機(jī)。
應(yīng)該是打包出來(lái)的AppRTCMobile.app里面沒(méi)有了_CodeSignature文件夾(來(lái)自大佬的推測(cè))

xcrun security find-identity -v -p codesigning

該命令行可查詢當(dāng)前環(huán)境中可用的有效簽名蝴蜓。

ios_code_signing_identity

同是gn項(xiàng)目的設(shè)置參數(shù)碟绑,用于設(shè)置證書(shū)ID。
此處證書(shū)為iPhone Developer證書(shū)茎匠。

iOS Code Signing

由于項(xiàng)目中自動(dòng)簽名一直出錯(cuò)格仲,需要對(duì)其中的.APP文件進(jìn)行重簽名,此處用到iOS Code Signing诵冒。
貼上一個(gè)相關(guān)學(xué)習(xí)網(wǎng)址http://www.cocoachina.com/ios/20141017/9949.html

1凯肋、codesign -vv -d /Users/linzq/WebRTC/src/out/arm/AppRTCMobile.app 
    該命令行用于查詢APP的簽名信息
2、$ codesign -f -s 'iPhone Developer: Thomas Kollbach (7TPNXN7G6K)' Example.app
    該命令行可對(duì)已簽名的APP進(jìn)行重簽名造烁,如果APP未被簽名否过,需用其他命令午笛。上面的網(wǎng)址有詳細(xì)介紹惭蟋,此處跳過(guò)。

證書(shū)匹配的兩個(gè)點(diǎn)

1药磺、( mobileprovision-read -f AppRTCMobile.app/embedded.mobileprovision )
與 (codesign -vv -d AppRTCMobile.app )
2告组、通過(guò)命令得到簽名的UUID后,增加編譯參數(shù)( ios_code_signing_identity="UUID" )
與 ( xcrun security find-identity -v -p codesigning )  
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末癌佩,一起剝皮案震驚了整個(gè)濱河市木缝,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌围辙,老刑警劉巖我碟,帶你破解...
    沈念sama閱讀 217,734評(píng)論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異姚建,居然都是意外死亡矫俺,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)厘托,“玉大人友雳,你說(shuō)我怎么就攤上這事∏ζィ” “怎么了押赊?”我有些...
    開(kāi)封第一講書(shū)人閱讀 164,133評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)包斑。 經(jīng)常有香客問(wèn)我流礁,道長(zhǎng),這世上最難降的妖魔是什么舰始? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,532評(píng)論 1 293
  • 正文 為了忘掉前任崇棠,我火速辦了婚禮,結(jié)果婚禮上丸卷,老公的妹妹穿的比我還像新娘枕稀。我一直安慰自己,他們只是感情好谜嫉,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,585評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布萎坷。 她就那樣靜靜地躺著,像睡著了一般沐兰。 火紅的嫁衣襯著肌膚如雪哆档。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,462評(píng)論 1 302
  • 那天住闯,我揣著相機(jī)與錄音瓜浸,去河邊找鬼。 笑死比原,一個(gè)胖子當(dāng)著我的面吹牛插佛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播量窘,決...
    沈念sama閱讀 40,262評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼雇寇,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了蚌铜?” 一聲冷哼從身側(cè)響起锨侯,我...
    開(kāi)封第一講書(shū)人閱讀 39,153評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎冬殃,沒(méi)想到半個(gè)月后囚痴,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,587評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡审葬,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,792評(píng)論 3 336
  • 正文 我和宋清朗相戀三年深滚,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了骂束。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,919評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡成箫,死狀恐怖展箱,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情蹬昌,我是刑警寧澤混驰,帶...
    沈念sama閱讀 35,635評(píng)論 5 345
  • 正文 年R本政府宣布,位于F島的核電站皂贩,受9級(jí)特大地震影響栖榨,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜明刷,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,237評(píng)論 3 329
  • 文/蒙蒙 一婴栽、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧辈末,春花似錦愚争、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,855評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至组去,卻和暖如春鞍陨,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背从隆。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,983評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工诚撵, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人键闺。 一個(gè)月前我還...
    沈念sama閱讀 48,048評(píng)論 3 370
  • 正文 我出身青樓寿烟,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親艾杏。 傳聞我的和親對(duì)象是個(gè)殘疾皇子韧衣,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,864評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容

  • 此篇是源于自己跟團(tuán)隊(duì)小伙伴在運(yùn)行源碼demo時(shí)一些稀奇古怪問(wèn)題的坑盅藻,望眾基共勉之购桑。由于比較雜,所以主要針對(duì)命令行跟...
    朱曉曉的技術(shù)博客閱讀 1,917評(píng)論 0 0
  • 什么是Code Signing Code Signing是用于驗(yàn)證一個(gè)APP是否由你創(chuàng)建的安全技術(shù)氏淑。一旦一個(gè)應(yīng)用被...
    楠溪山人閱讀 2,471評(píng)論 0 5
  • 今日求職已經(jīng)快到了死皮賴臉強(qiáng)行登門(mén)拜訪一些好點(diǎn)的創(chuàng)業(yè)公司的地步勃蜘。既然走到這一步,那就梳理下我未經(jīng)驗(yàn)證的套路假残,日后驗(yàn)...
    kevinzhon閱讀 588評(píng)論 0 1
  • 如果告訴十年前的自己缭贡,現(xiàn)在追求和現(xiàn)況炉擅。我會(huì)心疼還是嘲笑。 當(dāng)年那么那么的趾高氣昂阳惹,如今的委屈求全谍失。曾經(jīng)追求的海闊...
    GYKifan閱讀 92評(píng)論 0 0
  • 聽(tīng)到這么高端霸氣的名字頓覺(jué)自己極致土鱉,介是何方神圣呢莹汤,其全稱是Resource Acquisition Is I...
    縱橫而樂(lè)閱讀 1,016評(píng)論 0 1