0

我想在 ServiceTestCase 中获得共享首选项:

SharedPreferences preferences = context.getSharedPreferences("preferences_name", Context.MODE_PRIVATE);

并做这样的事情:

int value = preferences.getInt("key", 0);
preferences.edit().putInt("key", ++value).commit();
int newValue = preferences.getInt("key", 0);
assertTrue(value != newValue);

但是,这不起作用。测试根本失败。

我尝试过不同的上下文:

getContext();

getSystemContext();

并且

getContext().createPackageContext(this.getClass().getPackage().getName(), Context.CONTEXT_IGNORE_SECURITY);

最后

getSystemContext().createPackageContext(this.getClass().getPackage().getName(), Context.CONTEXT_IGNORE_SECURITY);

难道我做错了什么?

或者可能无法在 ServiceTestCase 中获取自定义共享首选项文件?

在活动测试课上实现这一点怎么样?

4

0 回答 0