无法处理活动

时间:2015-03-15 20:27:36

标签: java android multithreading android-activity

底部来源

我正在使用一个名为“GameMaker:Studio”的程序,我正在为Android应用程序编写一个java扩展程序。我已经通过研究解决了其他一些问题,但现在我处在一个真正的障碍中。
我的问题是因为我实际上要创建我的GoogleApiClient实例并且有点工作,我无法访问其回调。

课程设置:

public class PlayerConnect extends Activity
implements GoogleApiClient.ConnectionCallbacks,GoogleApiClient.OnConnectionFailedListener,
RealTimeMessageReceivedListener,
RoomStatusUpdateListener, RoomUpdateListener, OnInvitationReceivedListener{

重要 导入

// YYg ** These imports are here to make my class more functional
import ${YYAndroidPackageName}.R;
import ${YYAndroidPackageName}.RunnerActivity;
import com.yoyogames.runner.RunnerJNILib;
// Including
com.google.android.gms.common. --- all the used ones
com.google.android.gms.games. -- all the used ones

正如您所看到的,它继承自类,然后实现Google的客户端类使用的接口。它导入所有正确的导入。

一旦我创建我的客户就像这样,

mGoogleApiClient = new GoogleApiClient.Builder(RunnerActivity.CurrentActivity)
    .addConnectionCallbacks(this)
    .addOnConnectionFailedListener(this)
    .addApi(Plus.API).addScope(Plus.SCOPE_PLUS_LOGIN)
    .addApi(Games.API).addScope(Games.SCOPE_GAMES)
    .build();

我可以使用它(略)。问题是虽然它是有效的,但活动属于RunnerActivity 而不是 我的PlayerConnect。这会导致问题,因为既然我的班级无法亲自处理我设置的回调,RunnerActivity会,并且因为它不理解而最终崩溃。除了崩溃之外,我无法让我的程序对连接或故障做出反应。

无论如何我可以解决这个问题吗?如果我尝试使用 this 作为客户端构建器中的上下文,则永远不会创建客户端。我认为它与我从未实际创建的活动有关,但我认为我无法做到这一点,因为我已经尝试过复制捆绑并分享意图/这样但是没有这样的工作。

我希望能够做什么以某种方式将客户端回调推迟到我的类的功能,因为这是我唯一可行的事情。无论如何我可以重定向到我的功能吗?或者类似的?

我已经阅读了一些关于线程的事情,可能会创建一个解决方法,但我还没有让它工作,只是崩溃。像viewhandler这样的东西?

RunnerActivity.ViewHandler.post( new Runnable() {
      public void run() {
        onCreate(RunnerActivity.CurrentActivity.getIntent().extras());
        onStart();
      }
    });


Java Source

0 个答案:

没有答案