我正在处理一个与Android Unity3D项目有关的问题,需要将一些东西发布到Facebook上。基本上,应用程序运行在我无法控制的Activity上。Facebook单点登录要求我提供一个Activity来显示它的内容。
现在的问题是,来自Unity活动的触发器(通过JNI从本机代码中)要发布到Facebook。这基本上是我的纯Java对象作为连接器,是从Unity在本机代码中创建的,我可以调用它的方法。我还可以访问当前Activity的引用。但仍然无法对其进行任何操作。
我总是得到:
现在的问题是,来自Unity活动的触发器(通过JNI从本机代码中)要发布到Facebook。这基本上是我的纯Java对象作为连接器,是从Unity在本机代码中创建的,我可以调用它的方法。我还可以访问当前Activity的引用。但仍然无法对其进行任何操作。
我总是得到:
AndroidRuntime(12845): java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()
我尝试将当前活动引用作为要绑定到Facebook授权(authorize())的活动,但是出现了错误。 我尝试切换到我的自己的活动,想在其中启动Facebook。 结果仍然是相同的错误。 我尝试了以下方法:
Intent intent = new Intent(UnityPlayer.currentActivity.getApplicationContext(), MyActivity.class);
UnityPlayer.currentActivity.startActivity(intent);
还有一些类似的事情,但无法切换活动。
我该如何解决这个问题?
谢谢。