Unity 设置
Unity 脚本 与VS互通消息
public static V_Main Instance;
private void Start()
{
if (Instance == null)
{
Instance = this;
//注册接收消息的处理函数
InterOp.Init(Fun_OnReceiveNativeMessage);
InvokeRepeating("OnCallShowBanner", 10 , 120);
}
}
private void OnCallShowBanner()
{
F_SendUWP_TestOtherThread(5,"Banner");
}
private string Fun_OnReceiveNativeMessage(int messageID, string message)
{
string retV = null;
//做一些处理。
retV = "U3D return:" + message.GetHashCode().ToString();
ActionHelper.Instance.QueueOnU3DThread((obj) =>
{
if (messageID==1|| messageID == 2|| messageID == 3)
{
foreach (var item in DataGenerateManager<RechargTableGenerate>.GetAllData())
{
if (item.Value.m_ProductID1 == message)
{
messageID = item.Value.m_ServiceType;
}
}
GameManager.Instance.CurRechargeItem.BuySuccessBack(messageID);
GameManager.Instance.RechargeContext = retV;
}
}, null);
return retV;
}
/// <summary>
/// 发送信息
/// </summary>
/// <param name="type">Recharge表ServiceType字段</param>
/// <param name="CIMark">商品对应的商品标识</param>
public void F_SendUWP_TestOtherThread(int type,string CIMark)
{
ActionHelper.Instance.QueueOnOtherThread((obj) =>
{
string retV = InterOp.SendMessageToNative(type, CIMark);
}, null);
}
VS安装配置
Unity导成UWP后 变成C++ .h是头文件 .cpp是方法属性等等
VS2015 安装
把这几个文件导入项目中 在添加引用 MiracleGames.winmd
打包
用 Windows APP Cert Kit 以管理员身份运行检验
查看是否合格