我正在尝试在应用程序启动时从Web服务器加载数据(获取一个JSONArray)。到目前为止,我只能使用以下命令从主活动中获取数组:
if (DEVELOPER_MODE) {
StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder()
.detectDiskReads()
.detectDiskWrites()
.detectNetwork()
.penaltyLog()
.build());<br>
}
jsonArray = JsonParser.getJSONFromURL("cities2.php");
这让我得到了当前类中的所有城市(或者其他需要的数据),但这不是一种干净的方法。我的问题是,如何从我的 SplashScreen Activity 中获取城市数据并在需要数据的 Activity 中使用它。我的目标是在 SplashScreen(大约4500行文本,约50KB数据)期间从 web 服务器加载所有数据,并在不同的 Activities 中使用它们。
所以,我目前的主要问题是如何将我在 SplashScreen 中加载的数据从 web 服务器传递到“最终” Activity(即 SplashScreen -> MainActivity -> SetFilterActivity -> ShowDataActivity(这里需要数据))。
我在这里阅读过:Android SplashScreen, 这里:How to make a splash screen (screen visible when app starts)? 这里:http://www.androidpeople.com/android-loading-welcome-splash-spash-screen-example 以及这里:http://www.41post.com/4588/programming/android-coding-a-loading-screen-part-1 以及其他来源。
我还尝试编写一个扩展 Application 的单独类,在其中“存储”数据(获取器和设置器),但某种方式它不像我想要的那样工作。
有人能指导我如何用适当的方法完成这项工作吗?
谢谢你的帮助。
PS:我可以在每个屏幕上轻松加载需要的数据,但我想在一个点上加载它,并在程序中随时随地使用它。