ShareSDK向iOS平臺移植時問題及解決辦法

問題

成都創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比彌渡網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式彌渡網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋彌渡地區(qū)。費用合理售后完善,十年實體公司更值得信賴。

    此前,我的開發(fā)環(huán)境是Windows7(64bits)+VMware 9.0+Mac OS 8.5+Xcode 4.5,結(jié)果在測試游戲中集成目前最新的ShareSDK(ShareSDK For iOS 2.10.3,而ShareSDK For COCOS2D-X也是目前最新的)時失敗。出現(xiàn)如下圖所示的編譯錯誤:


ShareSDK向iOS平臺移植時問題及解決辦法

    而第二個錯誤如下圖:

ShareSDK向iOS平臺移植時問題及解決辦法

    顯然,這兩個錯誤都來自ShareSDK官方文件。注意:在基于Cocos2d-x框架開發(fā)的游戲中集成ShareSDK實現(xiàn)iOS版本時需要兩個部分(其中也要加入上面的ShareSDK For iOS部分中的一部分)。具體細節(jié),請詳細研究cocos2d-x快速集成指南(URL是http://wiki.mob.com/cocos2d-x%E5%BF%AB%E9%80%9F%E9%9B%86%E6%88%90%E6%8C%87%E5%8D%97/,我使用的目前不是cocos2d-x 3.x快速集成指南,此原文基于cocos2d-x 2.2.0版本,我當(dāng)前使用的是cocos2d-x 2.2.3;但是,很快我也會升級到cocos2d-x 3.x版本的集成)。

分析

    此前,注意到上述錯誤都圍繞Objective-C中的新內(nèi)容Blocks(這里使用了oc與c++混合編程技術(shù)員)。在仔細地學(xué)習(xí)了這個新知識點后,我簡單地認為可能ShareSDK官方在Blocks編程時出現(xiàn)了問題(因為搜索網(wǎng)絡(luò)上的文章說,從Xcode 4.3開始其內(nèi)置Gcc編譯器已經(jīng)支持Blocks了,而我使用的是Xcode 4.5+LLVM GCC 4.2)。于是,相當(dāng)然地對上述兩個文件作了修改:把blocks內(nèi)普通形式的局部變量提取出來前面添加以__block。其實,現(xiàn)在看來我還沒有根本理解blocks用法,上述表達沒有問題。

   在兩次請教ShareSDK官方負責(zé)朋友后,我基本定位錯誤原因在當(dāng)前的GCC版本太低了(當(dāng)然要圍繞blocks)。于是,狠下心來下載了新的VMware Workstation 10.0.2+Mac OS 10.9+Xcode 6.1。重新編譯此前工程時基本上是一路順風(fēng)走下來的。

補充

    在安裝新環(huán)境后,感覺有了不少變化。其中最明顯的一點是,原來情況下,我只要把Win7下的文件夾設(shè)置為與Mac OS 10.8共享后即可在Xcode 4.5中打開與操作游戲工程,但是現(xiàn)在不行了--出現(xiàn)著名的錯誤“clang failed with exit code 254”。無奈,參考網(wǎng)絡(luò)文章(http://zhidao.baidu.com/link?url=5WyS4C5HmSck8SECJsFBmVZaAYU6pyjCUKBGRhkkr3_wiKG84pR8wkG4L5-KqgVzcRHiw-13EzF0lnedY9HBIE4j1UcNJtWozEVNGz4ablW)后,我只好把游戲工程使用Finder從原來共享位置復(fù)制到Mac OS內(nèi)部的一個文件夾[文稿]下。再重新編譯運行工程OK!

本文名稱:ShareSDK向iOS平臺移植時問題及解決辦法
文章網(wǎng)址:http://bm7419.com/article8/jjsjop.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設(shè)計公司、定制開發(fā)、網(wǎng)站營銷、響應(yīng)式網(wǎng)站、網(wǎng)站制作、商城網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)