デバイスを対象とするプロジェクトで、MarcGravellのprotobuf-net C#
プロトコルバッファ実装を使用しようとしています。Unity3D
iOS
を使用して、プロトコルバッファファイルからC#
ファイル(と呼びましょう)を作成することができました。MyFile.cs
MyFile.proto
protogen
ファイルをインポートするとprotobuf-net.dll
(Unityフォルダー内のdllを使用しています)、以前にシリアル化されたファイルを正常に逆シリアル化できます(Pythonコードからシリアル化を実行しており、すべて正常に動作します)。
MyType myType;
using (var file = File.OpenRead("Assets/MyTypeBin"))
{
myType = ProtoBuf.Serializer.Deserialize<MyType>(file) ;
}
上記の解決策はシミュレーターでは正常に機能しますが、iOS
デバイス(es.ipad)をターゲットにすると失敗します。
からに切り替えようとしunity/protobuf-net.dll
ましCoreOnly/ios/protobuf-net.dll
たが、最後の1つではコンパイルに失敗します。Deserialize
メソッドは、コアdll内で宣言されていないようです。
エラーCS0117:逆シリアル化
ProtoBuf.Serializer' does not contain a definition for
'
この記事を読みましたが、かなり時代遅れのようです。これは、の古い実装を指しprotobuf-net
ます。その間に何かが変わったことを願っています。
私の質問は:
からデバイスをターゲット
protobuf-net r602
にして使用することは可能ですか?iOS
Unity3D
シリアル化/逆シリアル化するモデルクラスのライブラリdll(アセンブリ)を作成する
リンクされたブログ投稿で提案されているように?プロジェクト内で
C#
生成されたファイルを直接インポートするなど、より高速なワークフローが必要ですprotogen
Unity3D
はいの場合、どのように?どちら
dll
を参照する必要がありますか?iOS
上記のスニペットをデバイスで再び機能させるための手順はどれですか?