gpt4 book ai didi

java - 如何快速制作我的 Android 应用程序

转载 作者:太空宇宙 更新时间:2023-11-03 12:47:57 24 4
gpt4 key购买 nike

在我的 android 应用程序中,我在一个类中使用了 5 个 API,在 onCreate 中一个一个地调用它们,但这使我的应用程序变慢了,如何优化我的代码以使其更快。

我的代码是这样的。

    @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

API1();
API2();
API3();
API4();
API5();
}

// all the Apis are call in onCreate

public void API1() {
FetchData fetch = new FetchData(this);
fetch.response = new FetchListener() {
@Override
public void fetchFinish(String output) {
try {
JSONObject jobjOUT = new JSONObject(output);

JSONArray jsarray = jobjOUT.getJSONArray("details");

for (int i = 0; i < jsarray.length(); i++) {
JSONObject obj = jsarray.getJSONObject(i);
String a = obj.getString("abc");
}

} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
};
try {
fetch.execute("http://example.com/api/something.php?param=xyz");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}
public void API2() {
// same code here
}
public void API3() {
// same code here
}
public void API4() {
// same code here
}
public void API5() {
// same code here
}

}

我的问题是我可以同时调用所有 API 而不是一个一个地调用它们吗?请给我一些建议来优化我的代码。谢谢你

最佳答案

尝试使用线程池执行器引用thisthis学习和理解。通过使用线程池执行器,您可以同时运行多个任务,或者我们可以说并行。

private void startAsyncTaskInParallel(MyAsyncTask task) {
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB)
task.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
else
task.execute();
}

关于java - 如何快速制作我的 Android 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38538602/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com