Unity接入微信登录,因为官方只提供了原生的接入。没有Unity的。
第一步:首先安卓创建一个空工程:
第二步:包名一定得和Unity上的一致
第三步:修改AndroidManifest文件
第四步:修改MainActivity类
修改类MainActivity:
package com.guolian.yuanqi;
1
import android.app.Activity;
2
import android.content.Context;
3
import android.widget.Toast;
4
import org.json.JSONException;
5
import org.json.JSONObject;
6
import java.lang.reflect.InvocationTargetException;
7
import java.lang.reflect.Method;
8
public class MainActivity{
9
private static Activity unityActivity;
10
protected static Context mContext;
11
private static Activity m_Activity=null;
12
private static String m_platformObject="PlatformObject";
13
private static String m_MethodName="OnMessage";
14
private static String m_MethodNameCode="OnMessageCode";
15
public static String TAG="MainActivity";
16
public final static int PLATFORM_MSG_WXLOGINCALLBACK = 2;//微信登录回调
17
public void Init(){
18
m_Activity=getActivity();
19
TencentWX.Init(getActivity());//注册
20
}
21
//android发送消息到unity
22
public static void SendPlatformMessageToUnity(int iMsgId, String strParam){
23
String jsonStr=GetJson(iMsgId,strParam);
24
SendUnityMessage(m_platformObject,m_MethodName,jsonStr);
25
}
26
public static String GetJson(int iMsgId, String strParam){
27
try{
28
JSONObject object = new JSONObject();
29
object.put("iMsgId",iMsgId);
30
object.put("strParam",strParam);
31
return object.toString();
32
}
33
catch (JSONException e){
34
return "";
35
}
36
}
37
public static void SendStringPlatformToUnity(String str){
38
SendUnityMessage(m_platformObject,m_MethodNameCode,str);
39
}
40
public static void SendUnityMessage(String m_platformObject, String func,String
value){
41
CallUnity(m_platformObject, func, value);
42
}
43
public Activity CurrentActivity() {
44
return getActivity();
45
}
46
/**
47
* Android调用Unity的方法
48
*
49
* @param gameObjectName 调用的GameObject的名称
50
- 1
- 2
前往页