顯示具有 xcode 標籤的文章。 顯示所有文章
顯示具有 xcode 標籤的文章。 顯示所有文章

2012年10月4日 星期四

iOS6 Game Center authenticate 強迫以直式顯示登入劃面,橫式Game app 解決方法

把手邊的Game app從iOS5要升級到iOS6 並支援iPhone5,
在Game Center SDK上的升級問題還不少,
首先遇到的是登入Game Center的畫面改為全螢幕且強迫為(Portrait)直式的登入Dialog,

原本是只有支援(Landscape)橫式的Game App,一執行到check authenticateLocalUser 就當掉,
以下是解決的方法

在AppDelegate裡加入以下function
isGCAuthd要自己先在AppDelegate中定義為BOOL
其中isGCAuthd是用來判斷是否執行完成登入動作(不論是否登入),這個function的用意是在未完成登入時讓程式允許直式顯示,當完成登入後不允許(Portrait)直式顯示。

接下來就是要讓執行完登入後將isGCAuthd設為YES,如下程式片段:
利用authenticateWithCompletionHandler的callback function來將appDelegate.isGCAuthd 設為 YES;

以上修改即可讓程式順利執行。

--
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
請叫我 喬巴船長  ><"
「保持專業」與「發覺創意」最重要
只要人們繼續追求自由的答案 這一切的一切將永不停止
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

解決 XCode Error "Could not change executable permissions on the application."

在做完Simulator測試後要,正打算進行Device測試,然後就可以快樂的submit到ITC審查

但是確出現了以下的訊息:

天呀! 這是什麼erro呀,要從何下手呢!!
看來只能從Device log下手查看在device install時出了什麼問題,找到了在chmod時發生錯誤,應該是找不到目錄或檔案


此時我回想了一下,目前版本的Source是重新建立的,並不是沿用舊Source,雖然Bundle ID一樣,但Project Name不同,
而在Device上還保有舊版的app,所以可能是因些讓xcode 找不到正確的app進行chmod指令。

因此我先做個實驗,先不修改Project Name,我先在Device上把舊版的app刪除後重新安裝新版app,果然沒有問題,可以正常安裝執行。

為了確保舊版的使用者在更新後能正常使用,我再重新由App Store上安裝舊版的app,然後再回到新版本的Source上,把Project Name 修改成與舊版本Source本相同,
再透過xcode安裝新版app,這次可以順利執行了。

所以有此可以瞭解app的安裝目錄編碼與Project Name有相當大的關連。