2011-12-07 33 views

回答

4

onCreate(Bundle savedInstanceState)如果savedInstanceStatenull那么它是该活动的第一个/干净的开始。所以,你可以做这样的事情:

onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    if (savedInstanceState == null) { 
     // call HTTP request 
    } 

    ... the rest of onCreate() 
} 
+0

谢谢,这似乎工作! – Dan

0

OnCreate()可能不是一个糟糕的地方,如果您可以确保它始终在活动启动时执行,或者您已准备好检查是否已经完成因为其他答案也建议)。您可以在SharedPreferences中为此设置一个标志,因为此标志在应用程序完全关闭并重新启动后仍然存在。

话虽如此:你仍然需要把http请求放在后台线程中,如果你想让你的应用程序在Honeycomb或冰淇淋三明治上可用的话,那么当这些系统有任何网络访问UI线程。

+0

谢谢,这是有用的信息! – Dan