Приложение неожиданно остановилось при запуске - в Eclipse нет ошибок компиляции - PullRequest
2 голосов
/ 04 августа 2011

Мое приложение для Android (уровень API 8+) скомпилировано без сообщений об ошибках в Eclipse.

Консоль говорит:

[2011-08-04 16:10:50 - PROJECT_NAME] Android Launch!
[2011-08-04 16:10:50 - PROJECT_NAME] adb is running normally.
[2011-08-04 16:10:50 - PROJECT_NAME] Performing PACKAGE_NAME.MainActivity activity launch
[2011-08-04 16:10:52 - PROJECT_NAME] Uploading PROJECT_NAME.apk onto device '80A354043048365763'
[2011-08-04 16:10:52 - PROJECT_NAME] Installing PROJECT_NAME.apk...
[2011-08-04 16:10:55 - PROJECT_NAME] Success!
[2011-08-04 16:10:55 - PROJECT_NAME] Starting activity PACKAGE_NAME.MainActivity on device DEVICE_ID
[2011-08-04 16:10:56 - PROJECT_NAME] ActivityManager: Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=PACKAGE_NAME/.MainActivity }

Это то, что всегда отображается там. Затем приложение запускается на моем Android-устройстве, подключенном через USB.

Раньше он работал нормально, пока в какой-то момент процесса разработки не появилось следующее сообщение:.

Sorry! The application Messages (process PACKAGE_NAME) has stopped unexpectedly. Please try again. Force close.

В фоновом режиме есть окно приложения - но без каких-либо элементов графического интерфейса: ни кнопок, ни текста. Просто название приложения вверху.

Я не знаю, почему появляется это сообщение. Я не могу больше тестировать свое приложение. И, как я уже сказал, в Eclipse нет ошибок.

Logcat говорит следующее:

08-04 16:35:27.666: INFO/ActivityManager(2365): Force stopping package PACKAGE_NAME uid=10077
08-04 16:35:27.676: INFO/ActivityManager(2365): Starting activity: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10000000 cmp=PACKAGE_NAME/.MainActivity }
08-04 16:35:27.726: WARN/Flex(2448): getString FLEX_OPERATOR_CODE OPEN
08-04 16:35:27.766: INFO/ActivityManager(2365): Start proc PACKAGE_NAME for activity PACKAGE_NAME/.MainActivity: pid=4262 uid=10077 gids={3003}
08-04 16:35:27.916: WARN/ActivityThread(4262): Application PACKAGE_NAME is waiting for the debugger on port 8100...
08-04 16:35:27.926: INFO/System.out(4262): Sending WAIT chunk
08-04 16:35:28.016: WARN/Flex(2365): getString FLEX_COUNTRY_CODE COM
08-04 16:35:28.016: WARN/Flex(2365): getString FLEX_OPERATOR_CODE OPEN
08-04 16:35:28.016: WARN/Flex(2365): getString FLEX_COUNTRY_CODE COM
08-04 16:35:28.016: WARN/Flex(2365): getString FLEX_OPERATOR_CODE OPEN
08-04 16:35:28.016: DEBUG/StatusBarPolicy(2365): [BRIGHTHY] 0. mDataNetType: 2
08-04 16:35:28.016: DEBUG/StatusBarPolicy(2365): [BRIGHTHY] curNetwork=26203 curHPLMN=26203
08-04 16:35:28.126: INFO/System.out(4262): Debugger has connected
08-04 16:35:28.136: INFO/System.out(4262): waiting for debugger to settle...
08-04 16:35:28.336: INFO/System.out(4262): waiting for debugger to settle...
08-04 16:35:28.536: INFO/System.out(4262): waiting for debugger to settle...
08-04 16:35:28.736: INFO/System.out(4262): waiting for debugger to settle...
08-04 16:35:28.936: INFO/System.out(4262): waiting for debugger to settle...
08-04 16:35:29.141: INFO/System.out(4262): waiting for debugger to settle...
08-04 16:35:29.336: INFO/System.out(4262): waiting for debugger to settle...
08-04 16:35:29.539: INFO/System.out(4262): waiting for debugger to settle...
08-04 16:35:29.739: INFO/System.out(4262): waiting for debugger to settle...
08-04 16:35:29.945: INFO/System.out(4262): waiting for debugger to settle...
08-04 16:35:30.146: INFO/System.out(4262): debugger has settled (1340)
08-04 16:35:31.016: WARN/Flex(2365): getString FLEX_COUNTRY_CODE COM
08-04 16:35:31.016: WARN/Flex(2365): getString FLEX_OPERATOR_CODE OPEN
08-04 16:35:31.016: WARN/Flex(2365): getString FLEX_COUNTRY_CODE COM
08-04 16:35:31.016: WARN/Flex(2365): getString FLEX_OPERATOR_CODE OPEN
08-04 16:35:31.026: DEBUG/StatusBarPolicy(2365): [BRIGHTHY] 0. mDataNetType: 2
08-04 16:35:31.026: DEBUG/StatusBarPolicy(2365): [BRIGHTHY] curNetwork=26203 curHPLMN=26203
08-04 16:35:34.016: WARN/Flex(2365): getString FLEX_COUNTRY_CODE COM
08-04 16:35:34.016: WARN/Flex(2365): getString FLEX_OPERATOR_CODE OPEN
08-04 16:35:34.016: WARN/Flex(2365): getString FLEX_COUNTRY_CODE COM
08-04 16:35:34.016: WARN/Flex(2365): getString FLEX_OPERATOR_CODE OPEN
08-04 16:35:34.026: DEBUG/StatusBarPolicy(2365): [BRIGHTHY] 0. mDataNetType: 2
08-04 16:35:34.026: DEBUG/StatusBarPolicy(2365): [BRIGHTHY] curNetwork=26203 curHPLMN=26203
08-04 16:35:37.016: WARN/Flex(2365): getString FLEX_COUNTRY_CODE COM
08-04 16:35:37.016: WARN/Flex(2365): getString FLEX_OPERATOR_CODE OPEN
08-04 16:35:37.016: WARN/Flex(2365): getString FLEX_COUNTRY_CODE COM
08-04 16:35:37.016: WARN/Flex(2365): getString FLEX_OPERATOR_CODE OPEN
08-04 16:35:37.026: DEBUG/StatusBarPolicy(2365): [BRIGHTHY] 0. mDataNetType: 2
08-04 16:35:37.026: DEBUG/StatusBarPolicy(2365): [BRIGHTHY] curNetwork=26203 curHPLMN=26203
08-04 16:35:37.697: WARN/ActivityManager(2365): Launch timeout has expired, giving up wake lock!
08-04 16:35:37.894: WARN/ActivityManager(2365): Activity idle timeout for HistoryRecord{451e5930 PACKAGE_NAME/.MainActivity}
08-04 16:35:40.016: WARN/Flex(2365): getString FLEX_COUNTRY_CODE COM
08-04 16:35:40.016: WARN/Flex(2365): getString FLEX_OPERATOR_CODE OPEN
08-04 16:35:40.016: WARN/Flex(2365): getString FLEX_COUNTRY_CODE COM
08-04 16:35:40.016: WARN/Flex(2365): getString FLEX_OPERATOR_CODE OPEN
08-04 16:35:40.026: DEBUG/StatusBarPolicy(2365): [BRIGHTHY] 0. mDataNetType: 2
08-04 16:35:40.026: DEBUG/StatusBarPolicy(2365): [BRIGHTHY] curNetwork=26203 curHPLMN=26203
08-04 16:35:43.017: WARN/Flex(2365): getString FLEX_COUNTRY_CODE COM
08-04 16:35:43.017: WARN/Flex(2365): getString FLEX_OPERATOR_CODE OPEN
08-04 16:35:43.017: WARN/Flex(2365): getString FLEX_COUNTRY_CODE COM
08-04 16:35:43.017: WARN/Flex(2365): getString FLEX_OPERATOR_CODE OPEN
08-04 16:35:43.026: DEBUG/StatusBarPolicy(2365): [BRIGHTHY] 0. mDataNetType: 2
08-04 16:35:43.026: DEBUG/StatusBarPolicy(2365): [BRIGHTHY] curNetwork=26203 curHPLMN=26203

Я надеюсь, что кто-нибудь может мне помочь ... :) Я почти в отчаянии. Заранее большое спасибо!

Редактировать № 1:

Когда я запускаю приложение в режиме отладки Eclipse, сообщение об ошибке не появляется. Окно приложения появляется, но без каких-либо элементов графического интерфейса. И я должен закрыть окно, используя кнопку HOME. Кнопка BACK не работает. И в настройках приложения я могу выбрать «Force Stop». Так есть ли проблемы с темами, может быть? Может приложение застряло?

Редактировать # 2:

Кажется, это не проблема Eclipse или проблема телефона, так как я все еще могу создать приложение "Hello World". Он даже работает на телефоне.

Редактировать # 3:

Моя основная деятельность начинается следующим образом:

public class MainActivity extends ListActivity {

Когда я изменяю это на ...

public class MainActivity extends Activity {

... и закомментируйте следующую строку, приложение отображается без каких-либо сообщений об ошибках:

setListAdapter(this.m_adapter);

Редактировать # 4:

Думаю, я снова могу вспомнить, что я изменил до того, как проблема возникла впервые: я реализовал код учебника в ListViews , который работал нормально. Но затем я изменил идентификатор списка (см. Tutorial: main.xml) с «android: list» на «resultList». Так что это, вероятно, было причиной.

Когда я изменяю его обратно сейчас, возникает ошибка в initiateSearch (), где он говорит thread.notifyAll ();

Когда я закомментирую эту строку, все работает без каких-либо ошибок, но приложение, разумеется, делает не то, что должно,

1 Ответ

4 голосов
/ 04 августа 2011

Поговорив с Марко, выясняется, что ошибка была связана с именованием идентификатора элемента List в xml.

http://developer.android.com/reference/android/app/ListActivity.html - "... Чтобы сделать это самостоятельнопредставление ДОЛЖНО содержать объект ListView с идентификатором '@android: id / list' ... "*


Иногда Eclipse - это немного мусора !!

Вещи, которые я бы попробовал по порядку:

  1. Чистые проекты
  2. Перезапустите Eclipse
  3. Полностью удалите приложение и данные и кэш из своей трубки
  4. На вашем телефоне зайдите в свойНастройки-> Приложения-> Разработка и отключение, затем снова включите Отладку USB
  5. Перезагрузите телефон
  6. Восстановите рабочее пространство Eclipse

Дайте мне знать, если какой-либо из нихпомощь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...