項(xiàng)目提審被拒:
Guideline 4.3 - Design
We noticed that your app provides the same feature set as other apps submitted to the App Store; it simply varies in content or language, which is considered a form of spam.
The next submission of this app may require a longer review time, and this app will not be eligible for an expedited review until this issue is resolved.
我們的項(xiàng)目是新開(kāi)發(fā)的項(xiàng)目,并不是馬甲包,為什么這樣呢一臉懵逼,懷疑是機(jī)審被拒了,以為我寫(xiě)了一個(gè)項(xiàng)目框架,包名都是一樣的,里面的框架結(jié)構(gòu)代碼,網(wǎng)絡(luò),工具等代碼都是多個(gè)項(xiàng)目公用的,但是業(yè)務(wù)邏輯代碼,UI代碼等都是每個(gè)項(xiàng)目不同,可能是蘋(píng)果的機(jī)審機(jī)制有點(diǎn)雞肋,認(rèn)為我的項(xiàng)目是馬甲包,而有用的新代碼被認(rèn)為是垃圾代碼。
目前打算做如下修改:
1、修改項(xiàng)目包名
2、修改版本號(hào) 原來(lái)是1.0.0 改為 1.0.1.0901 看起來(lái)變化挺大哈哈
3、修改項(xiàng)目色系,原來(lái)是紫色系,修改為其他色系包括項(xiàng)目logo,頁(yè)面按鈕的按鈕,tabbar按鈕顏色,部分彩色文字的顏色等。
修改項(xiàng)目包名
iOS部分
iOS部分比較復(fù)雜,主要分為這么幾個(gè)部分:
1.Xcode項(xiàng)目部分;
2.Xcode中test部分;
3.Xcode中所有文件名;
4.Xcode中所有相關(guān)代碼;
5.修改scheme;
6.finder中文件夾名稱(chēng);
7.cocospod相關(guān);
Xcode項(xiàng)目部分
首先從Xcode項(xiàng)目開(kāi)始,使用Xcode打開(kāi)項(xiàng)目,點(diǎn)擊左上角項(xiàng)目名稱(chēng),按下回車(chē)就可以修改項(xiàng)目名稱(chēng)了。
修改好新的名稱(chēng)之后回車(chē),就可以看到這個(gè)界面,點(diǎn)擊rename就可以了。
這時(shí)候會(huì)發(fā)現(xiàn)應(yīng)用大部分東西已經(jīng)發(fā)生變化了,而且這個(gè)時(shí)候項(xiàng)目是一定沒(méi)辦法跑起來(lái)的,也不用跑,接著往下改。
Xcode中test部分
接下來(lái)把xxTests.m中的代碼修改一下。
Xcode中文件名
這步就直接把Xcode中所能看到的所有舊的相關(guān)文件名都替換成新的項(xiàng)目包名就可以了。也可以直接在下邊搜索關(guān)鍵字并替換,這里注意,Pods下的部分先不要修改。

Xcode中相關(guān)代碼
接下來(lái)再應(yīng)用中全局搜索舊包名的關(guān)鍵字,并替換成新的包名,同上,這一步Pods部分先不要?jiǎng)樱?strong>xcodeproj中的也可以先不動(dòng)。

修改scheme
點(diǎn)擊Product => Scheme => Manage Scheme ,這里你可以直接把原來(lái)的名字替換成新的名字。哦對(duì)了,這個(gè)地方不要雙擊,單擊要改的地方按下回車(chē)就可以修改了。這里的-Pods也是需要修改的。
修改finder中的文件
這時(shí)候關(guān)閉Xcode,在finder中修改所有的舊包名,改成新的包名。
cocospod相關(guān)
這部分有兩種方式可以使用。
重新安裝pods
一種就是把原來(lái)的cocospod相關(guān)的東西全部刪除,需要?jiǎng)h除的文件有:
Pods 文件夾
Podfile.lock 文件
.xcworkspace 文件
然后重新pod init,記得不要?jiǎng)h掉Podfile文件,不然就沒(méi)辦法安裝了。
修改名稱(chēng)
再或者修改.xcworkspace文件的文件名為新的包名,并右鍵.xcodeproj文件,點(diǎn)擊Show Package Contents,然后使用文本編輯器打開(kāi)project.pbxproj。尋找所有的舊包名并替換。
收尾工作
這時(shí)候打開(kāi)Xcode,別急著跑,先看看有沒(méi)有文件是爆紅的,如果有的話(huà),點(diǎn)擊右側(cè)小文件夾,重新引入一下文件路徑。
如果之前你是使用修改名稱(chēng)的方式修改cocospod,記得我們之前說(shuō)的不要修改pods下的文件名和代碼么?這時(shí)候就可以開(kāi)始修改了。
記得先修改一下Pods下target的名稱(chēng)。
修改完直到應(yīng)用中再也搜索不到舊的包名,這時(shí)候cmd+r一下試試吧。
最后
修改包名還是有很多坑的,有的時(shí)候有一點(diǎn)東西改的不對(duì),就會(huì)影響最后的效果,修改的時(shí)候還是要多耐心一點(diǎn)。
個(gè)人
在按照上述文章操作了一番后,項(xiàng)目報(bào)錯(cuò):
The file "/Users/me/Desktop/XXX-iOS/XXX/XXX.entitlements" could not be opened. Verify the value of the CODE_SIGN_ENTITLEMENTS build setting for target "XXX" is correct and that the file exists on disk.
找不到entitlements,因?yàn)轫?xiàng)目中的entitlements 是在TPNS文件中,所以修改Target->XXX->Build Settings中,搜索entitlements,將原來(lái)的 XXX/XXX.entitlements 改為 TPNS/XXX.entitlements,再次編譯即可, 如果編譯不過(guò),先clean一下再編譯即可。