Ответ 1
Вам нужно будет отключить контекст, даже для класса ContentResolver
нужен действительный контекст для создания экземпляра.
Самый простой способ - это аргумент метода:
public void test(Context context) throws Exception {
Uri uri = SuspiciousActivityTable.CONTENT_URI;
context.getContentResolver().update(uri, values2, where,new String[]{"Null"});
}
И для вызова: (предполагая, что экземпляр класса, содержащего test
и ваше имя активности - MyActivity
<- Замените имя Activity
вы вызываете test()
)
try{
sendInformationInstanceVariable.test (MyActivity.this);
}
catch (Exception e)
{
e.printStackTrace();
}
MyActivity.this
можно сократить до this
если вы не вызываете test()
изнутри анонимного внутреннего класса.
Кроме того, если ваш класс действительно не имеет достаточной причины для создания экземпляра, подумайте о том, чтобы сделать test()
static
методом, например:
public static void test(Context context) throws Exception {
Uri uri = SuspiciousActivityTable.CONTENT_URI;
context.getContentResolver().update(uri, values2, where,new String[]{"Null"});
}
Затем из вашей Activity
вы вызываете этот метод без необходимости экземпляра:
try{
sendInformation.test (MyActivity.this);
}
catch (Exception e)
{
e.printStackTrace();
}
Наконец, бросание Exception
- плохая практика, не делайте это без уважительной причины, и если у вас есть веская причина, будьте как можно более конкретными.