Статьи, которые добавил aNNiMON:

Приложение удалено из Google Play. Issue: Violation of Usage of Android Advertising ID policy and section 4.8 of the Developer Distribution Agreement

Android  google, google play, privacy. policy

Вам приходит письмо с таким содержанием:
Notification from Google Play about APPNAME
Hi developers at COMPANYNAME,

After review, APPNAME, com.companyname.appname, has been removed from Google Play due to a policy violation. This app won’t be available to users until you submit a compliant update.

Issue: Violation of Usage of Android Advertising ID policy and section 4.8 of the Developer Distribution Agreement

Google Play requires developers to provide a valid privacy policy when the app requests or handles sensitive user or device information. We’ve identified that your app collects and transmits the Android advertising identifier, which is subject to a privacy policy requirement. If your app collects the Android advertising ID, you must provide

Продолжить

Рейтинг:  8  (За: 8 | Против: 0)
Добавлено: 22.09.2018 от aNNiMON

Комментарии (7)

Как писать код так, чтобы он рос в высоту, а не в ширину

Совершенный код  style guide, стиль кода, java

Каждый раз, когда мы добавляем в код новый if или for, приходится увеличивать отступ тела условия или цикла. Чем больше вложенных циклов и условий, тем шире становится код и начинаются трудности при его чтении. В этой небольшой заметке я покажу несколько приёмов благодаря которым можно избежать роста отступов, чтобы код был понятнее и чтобы в нём никогда не появлялась горизонтальная прокрутка.
2018-09-11_12-29-14.png
Продолжить

Рейтинг:  15  (За: 15 | Против: 0)
Добавлено: 11.09.2018 от aNNiMON

Комментарии (36)

Открываем YouTube ролики в медиаплеере прямо из браузера

Linux  url protocol, browser, desktop

Задача следующая. Есть удобный видеоплеер, который нам очень нравится: mpv, vlc, ffplay или любой другой. При открытии YouTube ролика хотелось бы иметь возможность воспроизвести видео в любимом плеере. Копировать ссылку, запускать плеер и открывать эту ссылку в нём не хочется, долго. Хочется нажать кнопку в браузере и чтобы сразу открывался плеер с нужной ссылкой.

2018-08-04_11-33-23.png
Продолжить

Рейтинг:  8  (За: 8 | Против: 0)
Добавлено: 4.08.2018 от aNNiMON

Комментарии (7)

Пример использования функционального программирования во избежание дублирования кода

Java  функциональное программирование, лямбды, конфиг

Допустим, перед нами стоит задача загрузить конфиг приложения. Есть внутренний конфиг, который хранится в файле app.properties внутри jar-файла, и есть внешний — хранится в пользовательской директории ~/.config/app.conf.
Приложение при запуске читает внешний конфиг. Если какого-то параметра в нём нет, будет браться значение из внутреннего. Если внешнего конфига вообще нет — читается внутренний.

Для чтения внутреннего конфига используется класс ResourceBundle и его метод getString(String key), для внешнего — Properties
Продолжить

Рейтинг:  7  (За: 8 | Против: 1)
Добавлено: 17.04.2018 от aNNiMON

Комментарии (2)

java.util.concurrent ScheduledThreadPoolExecutor как замена классу Timer

Java  timer, concurrency

Класс Timer существует в Java уже очень давно и многие по привычке продолжают использовать его по сей день. Однако, у него есть некоторые неприятные особенности и ограничения. Об этом, а также о классе ScheduledThreadPoolExecutor, который служит заменой классу Timer я и расскажу.
Продолжить

Рейтинг:  6  (За: 6 | Против: 0)
Добавлено: 14.03.2018 от aNNiMON

Комментарии (4)
Всего: 77
<< 1 2 3 4 5 6 ... 16 >>
Категории

Мы в соцсетях

vk tw tg yt