我正在制作一个android应用程序。应用程序中有一项活动,触发时会生成一个稀疏阵列并填充数据。现在这个过程需要花费1分钟时间,这非常长。所以我想在应用程序启动时进行一次sparsearray,并在应用程序的整个生命周期内将sparsearray保存在RAM中。而且无论何时触发活动,它都应该访问RAM中的稀疏阵列而不是创建一个新的阵列,从而节省时间和处理能力。这可以做到,如果是的话,怎么样?对不起,如果这个问题是愚蠢的,我是新来的android。谢谢! *编辑:这是什么使功能sparsearray样子: //函数访问sparsearray决策功能如何在应用程序启动时制作(并保存在RAM中)sparsearray? (android)
public String[] process(){
InputStream is = context.getAssets().open("feedtitlesandaddresses.txt");
InputStreamReader iz=new InputStreamReader(is);
BufferedReader br = new BufferedReader(iz);
String line = null;
while((line=br.readLine())!=null) {
readLine(line);
}}
//sparsearray making function
private void readLine(String line) {
//some string processing(omitted here)
int num1 = Integer.parseInt(firstNumber);
//int num2 = Integer.parseInt(secondNumber);
if(sparseArray.get(num1) == null) {
sparseArray.put(num1, new SparseArray<String>());
}
temporarySparseArray = sparseArray.get(num1);
for(int w=0;w<size;w++){
temporarySparseArray.put(w, array1[w]);
}
sparseArray.put(num1, temporarySparseArray);
temporarySparseArray = null;
}
请问你能提供一些代码吗?如果你的AVD只有一些MHz,它会很慢。 – staaar 2013-03-20 06:51:45
@staaar我怎样才能知道我的AVD有多少MHz? – 2013-03-20 06:52:59
@staaar哪部分代码? – 2013-03-20 06:53:07