iOS-應(yīng)用提交被拒原因(更新按鈕叛买、微信登陸)

1.不得包含更新按鈕

Design Preamble
Your app includes an update button or alerts the user to update the app. To avoid user confusion, app version updates must utilize the iOS built-in update mechanism.
We've attached screenshot(s) for your reference.
Next Steps
Please remove the update feature from your app. To distribute a new version of your app, upload the new app binary version into the same iTunes Connect record you created for the app's previous version. Updated versions keep the same Apple ID, iTunes Connect ID (SKU), and bundle ID as the original version, and are available free to customers who purchased a previous version.

神奇的是,這個(gè)更新功能在之前的版本就有褐筛,并不是這次提交才加上去的。而之前都審核通過了,這次才給退回來焙格。感覺每個(gè)審核人員的標(biāo)準(zhǔn)不一樣,又或者是某些員工偷懶夷都。眷唉。

解決辦法:

將更新按鈕去掉,改成彈窗式提醒更新囤官。
在合適的地方加入這個(gè)業(yè)務(wù)邏輯冬阳,判斷本地的版本號和APP Store上的版本號,若APP Store的版本更高則彈出提示框提醒更新党饮。
這樣做的好處是審核人員審核時(shí)永遠(yuǎn)不會彈出該彈窗肝陪,審核通過后用戶使用提醒更新的功能是正常的。

Swift代碼:
func remindUserToUpdate() {
        let localVersion = NSBundle.mainBundle().infoDictionary!["CFBundleShortVersionString"] as! String
        let URL = "http://itunes.apple.com/cn/lookup?id=\(APP_ID)" //APP_ID對應(yīng)應(yīng)用的apple id
        HTTPTool.GET(URLString: URL, parameters: parameter, success:{ (responseObject) in
            let results = responseObject["results"] as! NSArray
            let newestVersion = (results[0] as! NSDictionary)["version"] as? String
            if newestVersion != nil {
                //比較兩個(gè)版本號
                if (localVersion! as NSString).compare(newestVersion!) == .OrderedAscending {
                    let alertVC = UIAlertController.init(title: "升級提示", message: "您的當(dāng)前版本為V\(localVersion)刑顺,發(fā)現(xiàn)新版本V\(newestVersion!)氯窍,是否現(xiàn)在下載新版本?", preferredStyle: .Alert)
                    let cancelAction = UIAlertAction.init(title: "下次再說", style: .Cancel, handler: nil)
                    let okAction = UIAlertAction.init(title: "現(xiàn)在升級", style: .Default, handler: { (action) in
                        let url = NSURL.init(string: "itms://itunes.apple.com/cn/app/he-bi/id\(APP_ID)?mt=8")
                        UIApplication.sharedApplication().openURL(url!)
                    })
                    alertVC.addAction(cancelAction)
                    alertVC.addAction(okAction)
                    self.presentViewController(alertVC, animated: true, completion: nil)
                }
            }
            }, failure: { (error) in
                debugLog("獲取版本信息失敗\(error)")
        })
    }

2.微信第三方登陸

We were required to install WeChat before we could sign in with WeChat mechanism. Users should be able to sign in and access their account, without requiring additional applications to be installed.
Next Steps
If you choose to allow users to sign in via WeChat, please use methods that can authenticate users from within your app, such as a native web-view.

這個(gè)可以說是非常普遍的被拒原因蹲堂,一般有第三方登陸的如果不注意這個(gè)問題都會被拒狼讨。蘋果要求沒有安裝微信的用戶也一樣可以使用微信登陸(通過WebView的方式)

解決辦法:

因?yàn)檫@個(gè)問題的普遍性,實(shí)際上微信已經(jīng)開發(fā)出了新的API可以解決這個(gè)問題柒竞,但是在官網(wǎng)上并沒有說明這個(gè)新的API政供。
新的接口在WXApi.h中可以查看,具體如下:

/*! @brief 發(fā)送Auth請求到微信朽基,支持用戶沒安裝微信布隔,等待微信返回onResp
 *
 * 函數(shù)調(diào)用后,會切換到微信的界面踩晶。第三方應(yīng)用程序等待微信返回onResp执泰。微信在異步處理完成后一定會調(diào)用onResp。支持SendAuthReq類型渡蜻。
 * @param req 具體的發(fā)送請求术吝,在調(diào)用函數(shù)后,請自己釋放茸苇。
 * @param viewController 當(dāng)前界面對象排苍。
 * @param delegate  WXApiDelegate對象,用來接收微信觸發(fā)的消息学密。
 * @return 成功返回YES淘衙,失敗返回NO。
 */
+(BOOL) sendAuthReq:(SendAuthReq*) req viewController : (UIViewController*) viewController delegate:(id<WXApiDelegate>) delegate;

使用了這個(gè)接口后腻暮,在沒有安裝微信的iPhone上點(diǎn)擊微信登陸會拉起網(wǎng)頁(使用手機(jī)驗(yàn)證碼登陸):


注意:

如果你的是IPhone應(yīng)用彤守,那么以上所說的接口可以很好解決微信登陸的問題毯侦。但是如果你的是IPhone/IPad應(yīng)用,那么就該換另外一個(gè)解決辦法了具垫。因?yàn)樵摻涌谥恢С諭Phone侈离,IPad無法接收短信,所以沒辦法實(shí)現(xiàn)驗(yàn)證碼登陸的功能筝蚕。

這時(shí)候只能用最原始的辦法去解決了:判斷應(yīng)用是否安裝微信卦碾,沒安裝則隱藏掉微信登陸按鈕。

以上解決辦法均可通過蘋果審核并上架起宽,親測洲胖。

關(guān)于我

我是可樂,在職iOS開發(fā)坯沪,業(yè)余時(shí)間獨(dú)立開發(fā)App绿映,現(xiàn)有上架作品:Mini記賬
公眾號:沙拉可樂 分享獨(dú)立開發(fā)的干貨和背后的故事

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市屏箍,隨后出現(xiàn)的幾起案子绘梦,更是在濱河造成了極大的恐慌,老刑警劉巖赴魁,帶你破解...
    沈念sama閱讀 211,561評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件卸奉,死亡現(xiàn)場離奇詭異,居然都是意外死亡颖御,警方通過查閱死者的電腦和手機(jī)榄棵,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,218評論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來潘拱,“玉大人疹鳄,你說我怎么就攤上這事÷瘢” “怎么了瘪弓?”我有些...
    開封第一講書人閱讀 157,162評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長禽最。 經(jīng)常有香客問我腺怯,道長,這世上最難降的妖魔是什么川无? 我笑而不...
    開封第一講書人閱讀 56,470評論 1 283
  • 正文 為了忘掉前任呛占,我火速辦了婚禮,結(jié)果婚禮上懦趋,老公的妹妹穿的比我還像新娘晾虑。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,550評論 6 385
  • 文/花漫 我一把揭開白布帜篇。 她就那樣靜靜地躺著糙捺,像睡著了一般。 火紅的嫁衣襯著肌膚如雪笙隙。 梳的紋絲不亂的頭發(fā)上继找,一...
    開封第一講書人閱讀 49,806評論 1 290
  • 那天,我揣著相機(jī)與錄音逃沿,去河邊找鬼。 笑死幻锁,一個(gè)胖子當(dāng)著我的面吹牛凯亮,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播哄尔,決...
    沈念sama閱讀 38,951評論 3 407
  • 文/蒼蘭香墨 我猛地睜開眼假消,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了岭接?” 一聲冷哼從身側(cè)響起富拗,我...
    開封第一講書人閱讀 37,712評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎鸣戴,沒想到半個(gè)月后啃沪,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,166評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡窄锅,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,510評論 2 327
  • 正文 我和宋清朗相戀三年创千,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片入偷。...
    茶點(diǎn)故事閱讀 38,643評論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡追驴,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出疏之,到底是詐尸還是另有隱情殿雪,我是刑警寧澤,帶...
    沈念sama閱讀 34,306評論 4 330
  • 正文 年R本政府宣布锋爪,位于F島的核電站丙曙,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏几缭。R本人自食惡果不足惜河泳,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,930評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望年栓。 院中可真熱鬧拆挥,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,745評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至汉矿,卻和暖如春崎坊,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背洲拇。 一陣腳步聲響...
    開封第一講書人閱讀 31,983評論 1 266
  • 我被黑心中介騙來泰國打工奈揍, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人赋续。 一個(gè)月前我還...
    沈念sama閱讀 46,351評論 2 360
  • 正文 我出身青樓男翰,卻偏偏與公主長得像,于是被迫代替她去往敵國和親纽乱。 傳聞我的和親對象是個(gè)殘疾皇子蛾绎,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,509評論 2 348

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