我现在有一些不太明白的事情。
我的主活动类创建了一个服务,该服务创建了一个等待TCP连接的新线程。一旦连接进来,它将启动一个新的活动:
Intent dialogIntent = new Intent(getBaseContext(), VoIPCall.class);
dialogIntent.putExtra("inetAddress", clientSocket.getInetAddress());
dialogIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
getApplication().startActivity(dialogIntent);
接着,该类的onCreate()
方法会被运行。它将创建两个线程:一个记录并发送数据,另一个接收并播放数据。这些线程都有一个无限循环。
由于某种原因,我注意到最后一个类的onCreate()
再次被调用,导致我的程序崩溃。我不明白为什么会再次调用它,因为只有这两个线程在运行,没有用户交互。文档上说:“当活动首次创建时调用”。活动已经在运行,我也没有尝试创建它。
请问有人能够解释一下这个行为吗?