問題:
1.剛開始把protobuf的文件夾直接從其他項目里(unity2021)里復制到unity(2020)版本,當時報錯protobuf.dll的依賴項system.memory版本不對。
2.沒有使用原來的protobuf文件了。使用vs2019的NuGet管理包來下載Google.Protobuf ,仍然報錯找不到Google
3.找到Google后,報錯說該platform存在多個Assembly。
解決方案:
1.解決第一個問題是從vs里直接安裝protobuf。
2.第二個問題是,NuGet會把文件安裝在package目錄下,unity搜不到這個包。要放在Assert\Plugins目錄下。
最好是先把符合該項目.NE版本的dll和xml文件都拿到,再從NuGet里把protobuf卸載。內(nèi)容如圖:
存放位置如圖:在使用到protobuf文件的前面加上類似代碼:
#region 程序集 Google.Protobuf, Version=3.21.12.0, Culture=neutral, PublicKeyToken=a7d26565bac4d604
// C:\gitclone\old_break_HMI3.0_SE\Assets\Plugins\google\netstandard2.0\Google.Protobuf.dll
#endregion
3.解決第三個問題,原因是該編譯器有多個項目。NuGet把其他項目中也安裝了protobuf,可以在文件夾搜索一下,把重復的刪除即可。文章來源:http://www.zghlxwxcb.cn/news/detail-795479.html
Tips:注意與項目的.NET對應。
Building Setting-Player Setting-Other Settings-Configuration文章來源地址http://www.zghlxwxcb.cn/news/detail-795479.html
到了這里,關(guān)于Unity導入google.protobuf失敗,無法找到google命名空間的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!