

UnityでビルドしたiOSアプリ内でGPGのユーザー認証を行うとクラッシュしてしまいます。  
iOSでもクラッシュせずに認証する方法はありますか？

Xcodeのスレッド表示

[code]

    libsystem_kernel.dylib`__pthread_kill:
    0x32390df4:  mov    r12, #0x148
    0x32390df8:  svc    #0x80
    0x32390dfc:  blo    0x32390e14                ; __pthread_kill + 32
    0x32390e00:  ldr    r12, [pc, #4]             ; __pthread_kill + 24
    0x32390e04:  ldr    r12, [pc, r12]
    0x32390e08:  b      0x32390e10                ; __pthread_kill + 28
    0x32390e0c:  subeq  r4, r8, #0x80000001
    0x32390e10:  bx     r12
    0x32390e14:  bx     lr
    
[/code]

使用バージョン

[code]

    Unity 3D 4.6.3f1
      Google Play Games Plugin for Unity v0.9.11
    
    Xcode 6.1.1
      GooglePlayGames SDK v3.1.1
      GoogleMobileAds SDK v7.0.0
      Google Plus SDK v1.7.1
      Google Play Games C++ SDK v1.3
    
[/code]

なお、Androidでは問題なく認証しており、リーダーボード使用や実績解除も行うことが出来ております。


CC BY-SA 3.0
2015-03-03T17:05:58.733
7395
2015-03-06T04:15:53.550
8650
question
ios xcode unity3d google-play-service
GooglePlayGameServicesを使ったiOSアプリでユーザー認証をするとクラッシュする


自己解決しましたので、簡単ですが解決方法を記載いたします。

  * GooglePlayGames.framework を削除（GooglePlayGames.bundleは削除しない）

  * [Build Setting] → [Other Linker Flag] に -ObjC を追加

  * [Build Setting] → [Apple LLVM 6.0 - Language - Modules] Enable Modules (C and Objective-C) PROJECT/TARGETSの両方をYesに変更

  * [Info] → [URL Types] 何もなければ + をクリックして追加。"Identifier"と"URL Schemes"にはGoogleDeveloperConsoleのリンク済みアプリにあるBundle IDを入れる。両方とも同じもので良い。

これらの作業を終えてからビルドが通りました。


CC BY-SA 3.0
2015-03-06T04:15:53.550
7528
2015-03-06T04:15:53.550
8650
7395
answer