【发布时间】:2011-10-30 15:05:06
【问题描述】:
我有一个方法需要在活动开始时运行。 我已经尝试将它放在 OnCreate 中,但如果活动有一段时间没有被触及,onCreate 会被调用两次(就是这种情况,我正在检查在线更新......所以这需要一些时间)
这就是为什么我不能将更新方法放在 onCreate 中
有什么想法吗?
谢谢你, 罗恩
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.options);
checkUpdate();
}
private void checkUpdate(){
Runnable runnable = new Runnable() {
public void run() {
try
{
// create a web request to check if i have the latest update
HttpClient client = new DefaultHttpClient();
.
.
.
.
.
};
new Thread(runnable).start();
【问题讨论】:
-
您的活动是否仍在执行并且再次调用 onCreate?除非您旋转设备,否则我认为这是不可能的?
-
设备没有转动,可能是因为屏幕变暗了?但我没有触摸它,并且再次调用了 onCreate 方法。
-
查看活动的基本代码可能会有所帮助。可能您应该按照建议将更新检查放入 AsyncTask 中。
标签: android methods android-activity oncreate