Урок 12. Логи и всплывающие сообщения

Обсуждение уроков
igor
Сообщения: 4
Зарегистрирован: 21 фев 2013, 13:12

Re: Урок 12. Логи и всплывающие сообщения

Сообщение igor » 07 мар 2013, 10:22

damager82 писал(а):Конструктор Time со строкой на вход ждет, что ему вручат timezone: http://developer.android.com/reference/ ... ng.String)
А вы пытаетесь туда время положить. Используйте пустой конструктор, а время ставьте методом set - http://developer.android.com/reference/ ... #set(long). На вход пойдет System.currentTimeMillis().
Так, думаю, заработает. Правда, не знаю, как он воспримет часы: 12 или 24.

Есть еще вариант:
Calendar clnd = Calendar.getInstance();
int hour = clnd.get(Calendar.HOUR_OF_DAY);

актуализировать календарь - clnd.setTimeInMillis(System.currentTimeMillis());

Код: Выделить всё

public static int hourNow() {		
Calendar calendar = Calendar.getInstance();
return calendar.get(Calendar.HOUR_OF_DAY);
Гораздо проще и гибче для работы со временем программно.

Digetix
Сообщения: 117
Зарегистрирован: 12 окт 2012, 15:31

Re: Урок 12. Логи и всплывающие сообщения

Сообщение Digetix » 19 мар 2013, 17:50

Добрый день. Спасибо за урок. Но я что-то не понял как читать логи. Как отследить или узнать в чём ошибка, когда приложение вылетает на реальном устройстве? На многих форумах, если задать вопрос, то просят показать логи, какие это имеется в виду? По каким фильтрам можно отследить

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Урок 12. Логи и всплывающие сообщения

Сообщение rezak90 » 19 мар 2013, 17:51

шнур в телефон одним концом, другим в эклипс))) потом в эклипсе смотрим логкат и там все логи
R.id.team
Политика на форуме запрещена

Digetix
Сообщения: 117
Зарегистрирован: 12 окт 2012, 15:31

Re: Урок 12. Логи и всплывающие сообщения

Сообщение Digetix » 19 мар 2013, 18:13

rezak90 писал(а):шнур в телефон одним концом, другим в эклипс)))
Ну это понятно :) я так и делаю. Просто не умею читать лог и понять из-за чего оно вылетело. Не могли бы вы вставить
скриншот ошибки лога и написать какая ошибка в коде :)

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Урок 12. Логи и всплывающие сообщения

Сообщение rezak90 » 19 мар 2013, 18:22

так вы киньте лог и я вам скажу что за ошибка
R.id.team
Политика на форуме запрещена

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Урок 12. Логи и всплывающие сообщения

Сообщение Foenix » 19 мар 2013, 19:42

Digetix писал(а):
rezak90 писал(а):шнур в телефон одним концом, другим в эклипс)))
Ну это понятно :) я так и делаю. Просто не умею читать лог и понять из-за чего оно вылетело. Не могли бы вы вставить
скриншот ошибки лога и написать какая ошибка в коде :)
Логи ошибок отображаются красным цветом шрифта.
ВОт первый попавшийся лог

Код: Выделить всё

>>>>>>>>>>>>java.lang.RuntimeException: Unable to start activity ComponentInfo{com.asdasd.dfgdfgdfgd/com.asdasd.dfgdfgdfgd.SplashScreenActivity}: android.view.InflateException: Binary XML file line #19: Error inflating class android.widget.ImageView
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1659)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1675)
at android.app.ActivityThread.access$1500(ActivityThread.java:121)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:943)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:130)
at android.app.ActivityThread.main(ActivityThread.java:3701)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:866)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:624)
at dalvik.system.NativeStart.main(Native Method)
>>>>>>>>>>>>>>>>Caused by: android.view.InflateException: Binary XML file line #19: Error inflating class android.widget.ImageView
>>>>>>>>>>>>>>>>at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
at android.view.LayoutInflater.createView(LayoutInflater.java:518)
at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:568)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:623)
at android.view.LayoutInflater.inflate(LayoutInflater.java:408)
at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
at android.view.LayoutInflater.inflate(LayoutInflater.java:276)
at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:227)
Первая строка
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.asdasd.dfgdfgdfgd/com.asdasd.dfgdfgdfgd.SplashScreenActivity}: android.view.InflateException: Binary XML file line #19: Error inflating class android.widget.ImageView
это сама ошибка.
Ищите далее строку
Caused by, там еще раз это будет написано.
А следом за ней обычно идут конструкции AT
Например, в данном логе одна всего строка - там уже идут ваши адреса, в прогрмме. Щелкай на строку два раза и перенесешься в код, вызвавший ошибку.
at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)

Если строчек несколько, то это тогда, когда ошибка внутри стека. т.е. одна процедура вызывает на определеенной строке другую, та еще одну та еще одну и там оишбка. Все эти строчки будут в логе. Щелкая по ним попадаешь каждый раз внутрь очередной процедуры, откуда пошла ошибка.
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Digetix
Сообщения: 117
Зарегистрирован: 12 окт 2012, 15:31

Re: Урок 12. Логи и всплывающие сообщения

Сообщение Digetix » 19 мар 2013, 20:57

Olivka писал(а): Первая строка
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.asdasd.dfgdfgdfgd/com.asdasd.dfgdfgdfgd.SplashScreenActivity}: android.view.InflateException: Binary XML file line #19: Error inflating class android.widget.ImageView
это сама ошибка.
Ищите далее строку
Caused by, там еще раз это будет написано.
А следом за ней обычно идут конструкции AT
Например, в данном логе одна всего строка - там уже идут ваши адреса, в прогрмме. Щелкай на строку два раза и перенесешься в код, вызвавший ошибку.
at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
Если строчек несколько, то это тогда, когда ошибка внутри стека. т.е. одна процедура вызывает на определеенной строке другую, та еще одну та еще одну и там оишбка. Все эти строчки будут в логе. Щелкая по ним попадаешь каждый раз внутрь очередной процедуры, откуда пошла ошибка.
Спасибо за разъяснение. А какие у вас фильтры стоят? Или как настроить лог, чтоб показывал всё ошибки?
rezak90 писал(а):так вы киньте лог и я вам скажу что за ошибка
У меня его пока нет. Я всё тестировал на реальном устройстве. Это наверное не правильно, но я что-то новое добавил, сразу проверяю на реальном устройстве, если вылетает, значит в новом коде ошибка :)

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Урок 12. Логи и всплывающие сообщения

Сообщение Foenix » 19 мар 2013, 21:25

Какие еще фильтры, это лог из интернета я взяла.
rezak90 писал(а):так вы киньте лог и я вам скажу что за ошибка
У меня его пока нет. Я всё тестировал на реальном устройстве. Это наверное не правильно, но я что-то новое добавил, сразу проверяю на реальном устройстве, если вылетает, значит в новом коде ошибка :)[/quote]
ну ваще круто.........
у меня устройства нету, но я что-то догадываюсь, если его подключить, то эклипс все ошибки покажет :mrgreen:
А так вы долго будете программированию учиться, до пенсии.
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Digetix
Сообщения: 117
Зарегистрирован: 12 окт 2012, 15:31

Re: Урок 12. Логи и всплывающие сообщения

Сообщение Digetix » 19 мар 2013, 21:41

А как вы без устройства делаете программу? Вы наверное опытный программист, а у меня это типа хобби :)

И ещё вопросик: если б вам потребовалось сделать приложение с картами Google Maps v.2, то как бы вы его тестировали? Ведь для этой версии карт требуется Сервисы Google Play, которые насколько мне известно не поддерживает эмулятор.

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Урок 12. Логи и всплывающие сообщения

Сообщение Foenix » 19 мар 2013, 23:36

Если бы, да ка бы))
насколько я знаю, эмулятор может эмулировать положение владельца планшета в пространстве :-D
даже фото-видео камеру эмулирует. Это вопрос удобства, не сравнимый с тем, что вы пишете программу, не используя средств отладки.
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Урок 12. Логи и всплывающие сообщения

Сообщение rezak90 » 19 мар 2013, 23:40

я вас удивлю (а может и нет) но дебажить можно и по wi-fi =)
R.id.team
Политика на форуме запрещена

Digetix
Сообщения: 117
Зарегистрирован: 12 окт 2012, 15:31

Re: Урок 12. Логи и всплывающие сообщения

Сообщение Digetix » 20 мар 2013, 11:30

Olivka писал(а): насколько я знаю, эмулятор может эмулировать положение владельца планшета в пространстве :-D
даже фото-видео камеру эмулирует.
Положение может, а сервисы Гугла нет :)
rezak90 писал(а):я вас удивлю (а может и нет) но дебажить можно и по wi-fi =)
Это как?

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Урок 12. Логи и всплывающие сообщения

Сообщение rezak90 » 20 мар 2013, 12:04

Это как?
там есть мануал http://stackoverflow.com/questions/2604 ... b-over-tcp
R.id.team
Политика на форуме запрещена

=bor=
Сообщения: 267
Зарегистрирован: 21 мар 2013, 12:26

Re: Урок 12. Логи и всплывающие сообщения

Сообщение =bor= » 21 мар 2013, 12:54

Здравствуйте!
В логе обнаружил непонятные строки, не могли бы Вы подсказать, что это за ресурс, к которому идёт обращение? И при чём здесь громкость?
Код из примера урока, ничего от себя не добавлял.
Я вот про это: "com.svox.pico" и "start scanning volume".

А вот кусок лога:

Код: Выделить всё

03-21 09:10:27.946: D/myLogs(367): присваиваем обработчик кнопкам
03-21 09:10:28.606: I/ActivityManager(72): Displayed com.example.logandmess/.MainActivity: +3s156ms
03-21 09:10:29.056: I/ARMAssembler(72): generated scanline__00000177:03515104_00001002_00000000 [ 87 ipp] (110 ins) at [0x472b9848:0x472b9a00] in 759652 ns
03-21 09:10:32.677: W/ActivityManager(72): Timeout of broadcast BroadcastRecord{4069ca08 android.intent.action.SCREEN_ON} - receiver=android.os.BinderProxy@40551108, started 10075ms ago
03-21 09:10:32.677: W/ActivityManager(72): Receiver during timeout: BroadcastFilter{40551068 ReceiverList{40582e98 132 com.android.phone/1001 remote:40551108}}
03-21 09:10:32.889: W/ActivityManager(72): finishReceiver called but active receiver is different
03-21 09:10:33.176: I/ActivityManager(72): [b]Start proc com.svox.pico for broadcast com.svox.pico[/b]/.VoiceDataInstallerReceiver: pid=377 uid=10009 gids={}
03-21 09:10:33.466: D/dalvikvm(33): GC_EXPLICIT freed 10K, 53% free 2538K/5379K, external 2730K/3266K, paused 270ms
03-21 09:10:33.776: D/dalvikvm(33): GC_EXPLICIT freed <1K, 53% free 2538K/5379K, external 2730K/3266K, paused 316ms
03-21 09:10:33.966: I/ActivityThread(377): [b]Pub com.svox.pico.providers.SettingsProvider: com.svox.pico.providers.SettingsProvider[/b]
03-21 09:10:34.126: D/dalvikvm(33): GC_EXPLICIT freed <1K, 53% free 2538K/5379K, external 2730K/3266K, paused 332ms
03-21 09:10:34.160: D/MediaScannerService(217): [b]start scanning volume external[/b]
03-21 09:10:34.356: V/MediaProvider(217): /mnt/sdcard volume ID: 252588816
03-21 09:10:34.596: V/MediaProvider(217): Attached volume: external
03-21 09:10:34.706: D/MediaScanner(217):  prescan time: 94ms
03-21 09:10:34.706: D/MediaScanner(217):     scan time: 6ms
03-21 09:10:34.726: D/MediaScanner(217): postscan time: 0ms
03-21 09:10:34.726: D/MediaScanner(217):    total time: 100ms
03-21 09:10:34.756: D/MediaScannerService(217): done scanning volume external
03-21 09:10:39.265: D/dalvikvm(154): GC_EXPLICIT freed 94K, 51% free 2918K/5895K, external 8339K/9193K, paused 100ms
03-21 09:10:41.735: D/dalvikvm(219): GC_EXTERNAL_ALLOC freed 63K, 54% free 2607K/5639K, external 3133K/3266K, paused 75ms
03-21 09:10:42.116: I/StatusBarManagerService(72): registerStatusBar bar=com.android.internal.statusbar.IStatusBar$Stub$Proxy@4078de98
03-21 09:10:42.206: D/VoldCmdListener(29): share status ums
03-21 09:10:42.236: D/StorageNotification(219): Startup with UMS connection false (media state mounted)
03-21 09:10:42.266: I/StorageNotification(219): UMS connection changed to false (media state mounted)
03-21 09:10:47.216: D/myLogs(367): по id определяем кнопку, вызвавшую этот обработчик
Спасибо!

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Урок 12. Логи и всплывающие сообщения

Сообщение Foenix » 21 мар 2013, 15:44

Volume имхо это "том"
это эмулятор что-то делает, если не мешает работе программы - пусть делает, у него полно всяких глюков))
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

snowkam
Сообщения: 162
Зарегистрирован: 21 мар 2013, 11:22

Re: Урок 12. Логи и всплывающие сообщения

Сообщение snowkam » 21 мар 2013, 16:10

Добрый день!
На строке
Toast.makeText(this, "", Toast.LENGTH_SHORT);
возникает ошибка
The method makeText(Context, CharSequence, int) in the type Toast is not applicable for the arguments (new View.OnLongClickListener(){}, String, int)

как исправить пример чтобы Toast отработал в примере.

Код: Выделить всё

public class MainActivity extends Activity {	
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		
		
		
		findViewById(R.id.btnOk).setOnLongClickListener(new OnLongClickListener() {			
			@Override
			public boolean onLongClick(View v) {
				Toast.makeText(this, "", Toast.LENGTH_SHORT);
				//mess();
				return false;
			}
		});
	}

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		// Inflate the menu; this adds items to the action bar if it is present.
		getMenuInflater().inflate(R.menu.main, menu);
		return true;
	}
	public void mess(){
		Toast.makeText(this, "click LONG", Toast.LENGTH_LONG).show();
	}

}
Как я понимаю что ошибка возникает из за this тут его использовать нельзя. Тогда как получить context класса MainActivity?

Простите за каламбур просто программированием всего 20 дней

snowkam
Сообщения: 162
Зарегистрирован: 21 мар 2013, 11:22

Re: Урок 12. Логи и всплывающие сообщения

Сообщение snowkam » 21 мар 2013, 16:22

тыр пыр прошу прощение все узрел метод getApplicationContext()

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Урок 12. Логи и всплывающие сообщения

Сообщение rezak90 » 21 мар 2013, 16:34

snowkam писал(а):тыр пыр прошу прощение все узрел метод getApplicationContext()
или же MainActivity.this
R.id.team
Политика на форуме запрещена

=bor=
Сообщения: 267
Зарегистрирован: 21 мар 2013, 12:26

Re: Урок 12. Логи и всплывающие сообщения

Сообщение =bor= » 21 мар 2013, 16:56

Olivka писал(а):Volume имхо это "том"
это эмулятор что-то делает, если не мешает работе программы - пусть делает, у него полно всяких глюков))
Да, я отправил сообщение, а потом тоже догадался, что здесь volume - том. Возможно, SDкард примонтировал, она в эмуляторе этого девайса прописана.

Но вопрос насчёт

Код: Выделить всё

8.03-21 09:10:33.176: I/ActivityManager(72): Start proc com.svox.pico for broadcast com.svox.pico/.VoiceDataInstallerReceiver: pid=377 uid=10009 gids={}
остаётся открытым.
Зачем он распознавание речи инстоллит?
Кто ему разрешил? :)

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Урок 12. Логи и всплывающие сообщения

Сообщение Foenix » 21 мар 2013, 18:49

rezak90 писал(а):
Это как?
там есть мануал http://stackoverflow.com/questions/2604 ... b-over-tcp
Вчерась мне дали устройство, сегодня сделала все, но без замученного мануала, а просто скачала программку wifi adb, там одна кнопочка - бац, и можно с эклипса отлаживать - ляпота!
С доступом в sqlserver пришлось повозиться, но это потому что я почти ничего в этом не понимаю, но все получилось однако за 20 минут, летает, круть!))
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Ответить