Здрасти всем, помогите решить проблему...Есть виджет-список. Нажимая на какой либо пункт списка открывается активити, в нем редактируется содержимое пункта списка. Сначала все вроде работает, но через какое то время виджет перестает работать.Нажимая на пункты списка выходит ошибка Java.Lang.NullPointerExceptionIntent {...}.
Виджет может перестать работать через 5 минут, 15 минут, или даже через час, нет определенного времени.
Может кто-то уже сталкивался с подобными проблемами.
Проблема с Виджетом
Проблема с Виджетом
Серега
Re: Проблема с Виджетом
Там еще пишется номер строчки, где возникла ошибка.
Семь раз отмерь - поставь студию.
Эклипс не студия, ошибка вылетит - не исправишь.
Скажи мне кто твой друг, и оба поставили студию.
Студия - свет, а эклипс - тьма.
Эклипс не студия, ошибка вылетит - не исправишь.
Скажи мне кто твой друг, и оба поставили студию.
Студия - свет, а эклипс - тьма.
Re: Проблема с Виджетом
@Override
public void onReceive(@NonNull Context context, @NonNull Intent intent)
{
try {
super.onReceive(context, intent);
if (intent.getAction().equalsIgnoreCase(ACTION_ON_CLICK))
{
int itemPos = intent.getIntExtra(ITEM_POSITION, -1);
if (itemPos != -1)
{//через какое то время в следующих 6 строчках появляется ошибка
intent = new Intent(context, ItemChanging.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtra(ItemChanging.CURRENT_TEXT_IN_ITEM, MyFactory.data.get(itemPos));
intent.putExtra(ItemChanging.POSITION, itemPos);
context.startActivity(intent);
}
else if (intent.getAction().equalsIgnoreCase(SETTINGS_CLICK))
{
intent = new Intent(context, Settings.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent);
}
}
catch (Exception e)
{
message = Toast.makeText(context, "OnReceive ERROR: " + e.toString() + intent.toString(), Toast.LENGTH_LONG);
message.setGravity(Gravity.BOTTOM, 0, 500);
message.show();
}
}
public void onReceive(@NonNull Context context, @NonNull Intent intent)
{
try {
super.onReceive(context, intent);
if (intent.getAction().equalsIgnoreCase(ACTION_ON_CLICK))
{
int itemPos = intent.getIntExtra(ITEM_POSITION, -1);
if (itemPos != -1)
{//через какое то время в следующих 6 строчках появляется ошибка
intent = new Intent(context, ItemChanging.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtra(ItemChanging.CURRENT_TEXT_IN_ITEM, MyFactory.data.get(itemPos));
intent.putExtra(ItemChanging.POSITION, itemPos);
context.startActivity(intent);
}
else if (intent.getAction().equalsIgnoreCase(SETTINGS_CLICK))
{
intent = new Intent(context, Settings.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent);
}
}
catch (Exception e)
{
message = Toast.makeText(context, "OnReceive ERROR: " + e.toString() + intent.toString(), Toast.LENGTH_LONG);
message.setGravity(Gravity.BOTTOM, 0, 500);
message.show();
}
}
Серега
Re: Проблема с Виджетом
Думаю проблема где-то здесь: MyFactory.data.get(itemPos). По поводу 6 строчек, в логах выводится номер конкретной строки с указанием конкретной ошибки.
Семь раз отмерь - поставь студию.
Эклипс не студия, ошибка вылетит - не исправишь.
Скажи мне кто твой друг, и оба поставили студию.
Студия - свет, а эклипс - тьма.
Эклипс не студия, ошибка вылетит - не исправишь.
Скажи мне кто твой друг, и оба поставили студию.
Студия - свет, а эклипс - тьма.