Posted at

UnityでgRPCアプリ(iOS, Android)をビルドできるようになった

More than 1 year has passed since last update.


はじめに

2018年8月からUnity用のExperimentalパッケージが出て

Unityを介してスマフォのgRPCのアプリがビルドできるようになりました。

https://github.com/grpc/grpc/tree/master/src/csharp/experimental#unity

MagicOnionではビルドの実績があったようですが、

素のgRPC C#パッケージはUnityに入れても

Editor上では動作しますが、iOS/Androidにビルドができませんでした。

(ビルドできても正しく動作しませんでした)


導入


  • こちらのデイリービルドより、最新のBuid IDリンクを押下

    DailyBuilds.png


  • grpc_unity_package.x.xx.x-dev.zip を押下

    grpc_unity_package_link.png


  • zipファイルを解答して、Unityプロジェクトへ入れる



  • Unityプロジェクトを.NET4.5対応にする


    • Edit > ProjectSettings > Player > Other Settings

    • Scripting Runtime Version を ".NET 4.x Equevalent"に設定




ビルド


Android

そのままでビルド可能です


iOS

エクスポートしたXcodeプロジェクトで下記の設定が必要です。



  • Enable BitcodeをNOに設定


    • Build Settings > Enable Bitcode




  • zlibライブラリを追加する


    • Build Phases > Link Binary With Libraries > "+"を押下

    • "libz"で検索

    • 最新のlibz.1.2.xx.tbdを追加



add_libz.png

これでビルドがされます。

こちらでビルドしたところ、問題なくスマフォでgRPC通信を行っておりました。

まだ、Experimentalステータスですが、早く正式版になることを期待します。