Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在处理活动时遇到问题_Java_Android_Multithreading_Android Activity - Fatal编程技术网

Java 在处理活动时遇到问题

Java 在处理活动时遇到问题,java,android,multithreading,android-activity,Java,Android,Multithreading,Android Activity,底部的震源 我正在使用一个名为“GameMaker:Studio”的程序,目前正在为Android应用程序编写java扩展。我通过研究解决了其他一些问题,但现在我正处在一个真正的路障上 我的问题是,现在我实际上已经有了要创建的GoogleAppClient实例和类似的工作,我无法访问它的回调 课程设置: public class PlayerConnect extends Activity implements GoogleApiClient.ConnectionCallbacks,Google

底部的震源

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

课程设置:

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();
我可以用它(稍微)。问题是,尽管它是功能性的,但该活动属于
RunneActivity
而不是我的类
PlayerConnect
。这会导致问题,因为现在我的类无法亲自处理我设置的回调,
RunnerActivity
将出现问题,并最终崩溃,因为它无法理解。除了崩溃,我不能让我的程序对连接或故障做出反应

我能解决这个问题吗?如果我尝试在客户机生成器中使用this作为上下文,则永远不会创建客户机。我认为这与我从未真正创建过的活动有关,但我认为我对此无能为力,因为我已经尝试过复制捆绑包和共享意图/诸如此类的东西,但没有任何类似的效果

我希望能够做的是以某种方式将客户机回调延迟到我的类的函数,因为这是我要完成的唯一可行的事情。我是否可以重定向到我的函数?还是类似的

我读过一些关于线程的文章,这些文章可能可以创建一个解决方案,但我还没有让它工作,只是崩溃了。类似于viewhandler的东西

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


您试图阻止
活动
调用
onCreate
onStart
?@JaredBurrows感谢您的回复,我非常感谢。我试图做的是使我在GoogleAppClient中设置的处理程序中使用的回调
addConnectionCallbacks(this).addOnConnectionFailedListener(this)
与我的类一起工作,
PlayerConnect
,它扩展了activity,而不是
RunneActivity.CurrentActivity
。发布你的
activity
,你真的实现了这些接口吗?我的活动是在类设置下的post中,发生的是我没有访问权限的活动
runneActivity.CurrentActivity
接管你必须发布所有代码。很难理解你想做什么。