gpt4 book ai didi

java - 将 SharedPreferences 传递给 doInBackground()

转载 作者:行者123 更新时间:2023-12-01 18:55:50 24 4
gpt4 key购买 nike

我试图将 SharedPreferences 首选项作为参数传递给 AsyncTask 中的 doInBackground 函数。我已经将一个字符串(url)传递给它,所以我需要将首选项也作为字符串传递。我可以简单地使用 prefs.toString() 将其转换为字符串吗?

这是我设置首选项的地方:

if (prefs.getBoolean("firstrun", true)) {
prefString = prefs.toString();
prefs.edit().putBoolean("firstrun", false).commit();
}

最佳答案

你不能也不应该。您可以轻松地读取 doInBackground() 内部的首选项,而无需向该方法传递任何内容,只需使用 PreferenceManager :

public class DownloadFiles extends AsyncTask<URL, Void, Void> {

Context ctx;

DownloadFiles(Context ctx) {
this.ctx = ctx;
}

@Override
public void doInBackground(URL... urls) {
// ...
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(ctx);
// ...
}
}

关于java - 将 SharedPreferences 传递给 doInBackground(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14053518/

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