75. 2023-08-27周总结

  1. Unity接H5 SDK
  2. Verdaccio包找不到问题
  3. 打包问题
  4. 谷歌登录接入问题
  5. 特效放UIParticle中不显示问题

1. Unity接H5 SDK

H5 SDK一版提供的是js代码,所以需要研究Unity中C#调用JavaScrip代码,JavaScript调用Unity的流程,具体可以参考这个文档

H5 SDK一般需要自己设置src标签去下载和初始化,可以用下面的方式提供js接口来由Unity发起初始化H5 SDK,这样就不需要修改index.html去插入代码了

1
2
3
4
5
6
7
8
9
10
11
12
13
mergeInto(LibraryManager.library, {

Init: function () {
var url = "https://cdn.askb48.com/sdk/iwan/AK48.js";
var sdk = document.createElement("script");
sdk.src = url + "?ts=" + new Date().getTime();
sdk.onload = function (ev) {
console.log("sdk onload");
};
document.body.appendChild(sdk);
},
});

另外js要调用Unity的话一定要拿到UnityInstance,unityInstance的初始化代码会自动生成到index.html中,所以这一块一定得需要修改index.html,把unityInstance赋值给全局变量。

还有个问题就是unityInstance.SendMessage第三个参数只能是字符串,所以无参或者单个参数,所以如果是多个参数则需要把参数通过JSON.stringify转成json字符串,C#解析json字符串来获取多个参数。

2. Verdaccio包找不到问题

利用nginx的proxy机制将域名转发给verdaccio,发现里面的包都不见了,需要重新add-user。但是直接ip访问verdaccio是不需要的。

找了好一会资料发现都不太对,最终修改verdaccio配置(AppData\Roaming\verdaccio\config.yaml),将publish: $authenticated改成publish: $all后可以直接拿到里面的包

3. 打包问题

打包遇到error: resource android:attr/lStar not found.,将target sdk版本从30升级到31后修复

4. 谷歌登录接入问题

谷歌登录接入的时候一直报Sign Error,暂时不知道什么原因

5. 特效放UIParticle中不显示问题

  1. 检查是否用了CustomData,UIParticle不支持CustomData
  2. 检查UI摄像机改成正交