TrackChecker https://forum.trackchecker.ru/ |
|
Интеграция с com.sec.badge https://forum.trackchecker.ru/viewtopic.php?f=23&t=2131 |
Page 1 of 1 |
Author: | micklesbox [ Thu Jun 23, 2016 1:41 pm ] |
Post subject: | Интеграция с com.sec.badge |
Здравствуйте! Обращаюсь к разработчику. В программе реализована интеграция с TeslaUnread API. Собственно, прошу реализовать интеграцию с com.sec.badge. Помимо того, что и TeslaUnread сама может пользоваться com.sec.badge, еще этим сервисом пользуются и производители, например, Samsung, HTC, Sony... Правда, судя по коду, вижу, что что-то есть, однако, очень странно себя ведет. У меня Самсунг и я пользуюсь Nova Launcher (c TeslaUnread). Соответственно, Nova бэйдж выводит. Однако, когда я замораживаю Nova Launcher и перехожу на ТачВиз от Самсунга, бэйджа у программы, к сожалению, нет. Сам я так же являюсь разработчиком под андроид и написал программку, которая выводит кол-во непрочитанных для сервиса com.sec.badge. Ваша программа там присутствует, однако, сколько бы не было непросмотренных событий в программе, в сервисе com.sec.badge присутствует "0". Возможно, это так реализовано, что при наличии Nova сервис com.sec.badge отключен в Вашей программе, в таком случае прошу рассмотреть возможность главенства сервиса com.sec.badge над TeslaUnread либо какую-то их совместную адекватную работу). В настоящее время занимаюсь модификацией модуля Allways On Display для Samsung S7. Сделал вывод всевозможных счетчиков и хотелось бы, что бы и Ваша программа там отображалась. Однако, учитывая вышесказанное, она появляется в настройках AOD, но не выводится, так как имеет в счетчике com.sec.badge постоянный ноль.((( |
Author: | MetalFan [ Fri Jun 24, 2016 10:42 am ] |
Post subject: | Re: Интеграция с com.sec.badge |
Доброго времени суток. Для работы с бейджами используется сторонний компонент... Надо глянуть, может были какие обновления. |
Author: | micklesbox [ Tue Jun 28, 2016 1:43 pm ] |
Post subject: | Re: Интеграция с com.sec.badge |
MetalFan, доброго времени суток..))) Прошу прощения, я покопался в коде программы в части этого "стороннего компонента"... Очень странно там сделано так, что, если стоит один из лончеров, типа Nova, или ADW, или подобный со своими бэйджами, то интент на com.sec.badge не подается... Я понимаю, это сделано для исключения повторов и неправильных выводов, но, на сколько мне известно, у основных лончеров есть от этого защита. В общем, я добавил дополнительную отсылку интента. У меня в системе стоит Nova и родной Тачвиз от Самсунга. Теперь показывают оба правильно, если переключаться. Если интересно, то я сделал сл.: в классе "b.a.a.c" добавил функию: Code: public static void sendBadge(Context paramContext, int paramInt) { ComponentName paramComponentName = paramContext.getPackageManager().getLaunchIntentForPackage(paramContext.getPackageName()).getComponent(); Intent localIntent = new Intent("android.intent.action.BADGE_COUNT_UPDATE"); localIntent.putExtra("badge_count", paramInt); localIntent.putExtra("badge_count_package_name", paramComponentName.getPackageName()); localIntent.putExtra("badge_count_class_name", paramComponentName.getClassName()); paramContext.sendBroadcast(localIntent); } ну и сам вызов этой функции добавил в самое начало функции a, которая с двумя аргументами: Code: public static boolean a(Context paramContext, int paramInt)
{ sendBadge(paramContext, paramInt); ... |
Page 1 of 1 | All times are UTC + 3 hours |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |