xingya771 2010-10-16 15:06
浏览 445
已采纳

Activity被系统回收后打开的线程会不会一起被关闭回收?

现在是这样一个问题,整个程序就一个Activity,它接受GPS信息,第一次获取到位置的时候启动一个后台线程,该线程是包含UDP服务端和客户端,start之后除非调用自定义的方法exit()否则不会退出。而这个exit方法是在Activity的onDestroy()里面调用的。但是目前发现这样的一个问题,就是,按了home键之后,程序执行了onStop()方法,然后点击程序图标此时会执行onCreate()方法,而不是理想中的onStart()方法。这样再获取到位置之后就会报错,我想应该是Activity被系统回收导致重新create了一个,但是后台线程没有退出,导致端口冲突。
而且最郁闷的是按home键的行为并不是每次都一样的,一般开机第一次肯定会是按了home,再点就是onCreate(),以后随机……
用的机器是摩托的mt710,在模拟器上没有这样的问题,在华为U8220上也有类似问题。
现在我想解决这个问题,请问有没有好的办法呢?

  • 写回答

1条回答 默认 最新

  • xxxxxxxxxxxxxxxxx 2010-10-18 13:19
    关注

    android:icon="@drawable/icon"
    android:label="@string/app_name"
    android:theme="@android:style/Theme.NoTitleBar"
    android:debuggable="false"
    android:taskAffinity="android.task.xxxx">
    android:launchMode="singleTask"
    android:taskAffinity="android.task.xxxx"
    android:configChanges="orientation|keyboardHidden|navigation">





    上述是设置SingleTask的Activity,以及屏幕倒置(软件盘打)时不用重启动Activity.

    期望这个能帮助你。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 unity第一人称射击小游戏,有demo,在原脚本的基础上进行修改以达到要求
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?
  • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line