我正在为我的免费Android游戏“forerunner”添加蓝牙功能。我在主要活动中嵌入的线程中正确设置了套接字。我为我的ConnectThread(扩展线程)创建了另一个java文件,它将在手机之间发送播放器的坐标。我看了一下Service,AysncTask和Handler。除了处理程序之外,我认为任何人都不会帮助我。
以下任何一项都可以实现这一目标。
如何在子活动中使用父活动(在嵌入式线程中创建)中连接的蓝牙套接字?
如果在子活动中未初始化数据,如何从ConnectThread向子活动发送数据?基本上如何从线程中调用子活动中的公共方法?
有没有办法将父活动中连接的套接字传递给子活动?
答案 0 :(得分:0)
将静态(类)变量放在父活动中或(更好)放在应用程序类中(为此创建自己的应用程序类,该类派生自Android Application类,并记住将其放在清单中的{ {1}})。将套接字分配给此静态变量。儿童活动可以从那里捡起来。因为它是静态的,当你的活动被破坏时它不会被垃圾收集器删除,所以确保你关闭它并在完成后将变量赋值为null。