Эксперименты в Google Play

Относительно недавно в Google Play появилась возможность проводить эксперименты со страницей приложения.
У меня была проблема — падали активные установки у приложения KM Widgets and Watch faces.
Я решил провести эксперимент с иконкой приложения. В итоге, оказалось, что иконка сгенерированная в Android Studio с видом часов и циферблатом «Яичница» дает в два раза больше загрузок.
В результате я получил рост активных установок, после долгого падения.
2015-10-19_15-39-14

Не все пользователи знают, как добавлять виджеты в Android

Именно к такому выводу я пришел.

Лично я столкнулся с этой проблемой сначала на виджетах «KM Пластилиновые виджеты«, когда начал получать письма и плохие рейтинги с общей для всех фразой: «Не могу их установить».

Недавно проблема проявилась в виджетах КМ Рождественские виджеты, которые сильно просели в рейтинге и причина была аналогичная — пользователи не знают как добавить виджеты.

Конечно, многие пользователи умеют пользоваться виджетами в Android,  но и достаточно небольшое количество юзеров могут изрядно подпортить рейтинг Вашему приложению.

Выход из ситуации

Для своих виджетов я стал добавлять специальную активность, в которой описано, что виджет корректно установлен, и если пользователь желает его добавить, то нужно изучить определенные инструкции.

Как добавить виджеты в Android

Сразу хочу заметить, что решения типа сделать скриншоты не позволят Вам из-за фрагментации лаунчеров абсолютно для всех объяснить  как добавлять виджеты.

В коде манифеста можно добавить активность следующим образом:
<activity <android:name="com.mikhaylov.kolesov.plasticinechristmaswidgets.KMLauncherActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.INFO" />
</intent-filter>
</activity>

В этом случае пользователь после загрузки в Google Play видит не кнопку «Удалить», а кнопку «Открыть». По данной кнопке открывается созданная активность. Дополнительно создается ярлык на рабочем столе, что позволяет пользователю найти и его и не считать, что виджет не установлен, а по клику он поймет, что эта операция отличается от обычных приложений.

Как отслеживать отрицательные рейтинги вашего приложения

Оповещения об отрицательном рейтингеОповещения об отрицательном рейтингеКогда Вы выпускаете свои приложения, очень важно отслеживать отрицательные рейтинги, так как они позволяют оперативно выявить какие-либо проблемы. Особенно проблема обостряется, когда у Вас много приложений.

Ключевым моментом, на мой взгляд, является необходимость оперативно реагировать на отрицательные отзывы.

Сейчас для этих целей я использую сервис Appnique.com.  Кроме SEO для «сторов» и различной аналитики, сервис мне дает две полезные функции:

  1. Уведомления об изменениях в приложениях, обозначенных как конкуренты: версия, описание в «сторе» и т.п.;
  2. Уведомления об отрицательных оценках по Вашим приложениям.

Собственно, вторая функция и позволяет получать уведомления на e-mail в случае отрицательных оценок. Выглядит эта информация вот так:Оповещения об отрицательном рейтинге В данном конкретном случае пользователь написал о том, что у него не работают виджеты на его Huawei 4.4 (Y530 (hwY530-U00)). Есть повод проверить на данном устройстве, о том, как можно это делать, я уже писал в своем посте ранее, или можно уточнить у пользователя детали.

Сервис платный, и в бесплатном варианте он позволяет отслеживать только одно приложение.

КАК МЫ ДЕЛАЕМ ЖИВЫЕ ОБОИ ДЛЯ ANDROID ИЗ ПЛАСТИЛИНА

Доброго времени суток! Мы хотим поделиться небольшим рассказом о том, как мы делаем оригинальные Живые обои для Android, созданные из пластилина.Plasticine_beach_1024x500

http://kolesov-mikhaylov.ru/2014/06/11/how-we-do-it/

Лайфхак: Как бесплатно тестировать приложения для Android на 20+ девайсах

На прошедшей Уральской конференции веб-разработчиков UWDC 2014 во время моего доклада был вопрос о том, как мы тестируем приложения для Android на большом количестве девайсов. Этот лайфхак был придуман мной от того, что у меня не было средств, чтобы держать у себя «Зоопарк» Android-устройств. Была потребность тестировать приложения на 20+ девайсах и ставить рейтинг+обзор для продвижения в ТОП-новых приложений. Сразу оговорюсь, что я предварительно у себя тестирую приложения на 4х своих устройствах, после чего я публикую их в Google Play и приступаю к нижеописанному лайфхаку. Итак, рассказываю. В нашем (любом крупном) городе есть 20+ салонов сотовой связи, в которых можно найти как минимум 20+ различных Android-девайсов. Работники салонов сотовой связи обычно заняты своими «делами», поэтому делаем следующие шаги:

  1. Чтобы уже совсем не наглеть — лучше тестить в салоне на одном, двух девайсах;
  2. Берете с собой что-то, что может быть точкой доступа (у меня эту роль играет iPad). Это нужно, потому что не всегда вы сможете в салоне поймать Wi-Fi;
  3. Вы в салоне. Выбираем девайс. Открываем Google Play;
  4. Жмем «создать Аккаунт», выбираем логин и пароль. Особенность в том, что заходить в почтовый ящик затем нет никакой необходимости, и тем более вводить повторно пароль;
  5. Google Play попросит вас ввести CAPTCHA, секретный вопрос и ответ.
  6. В конце процесса спокойно качаем ваше приложение, тестим, ставим рейтинг. Как бонус — посетители этого салона при просмотре данного девайса будут видеть ваше приложение;
  7. Если есть баги, смотрим версию ОС, девайс и ищем у друзей, для отладки;
  8. Выбираем следующий девайс.

 

Живые обои для Android. Как создать. Тонкости. Продвижение

Презентация доклада по моему хобби на UWDC 2014.

Фрагментация Android на примере фрагментного шейдера.

Меня уже не удивляют различные варианты обработки различных визуальных эффектов устройствами на Android. В последний раз я столкнулся вот с таким примером, при работе над очередными живыми обоями.

Я использую фрагментный шейдер, чтобы сделать ночь в обоях. Для этого я умножаю текстуру на вектор 0.5 0.5 0.5 , что позволяет затемнить всю сцену. Обычно, и это корректно, я использую такой фрагментный шейдер:

precision mediump float;
uniform sampler2D u_texture;
varying vec3 v_vertex;
varying vec2 v_texcoord;
varying vec2 v_texcoordAlpha;
void main() {
 vec4 one=texture2D(u_texture, v_texcoord);
 vec4 two=vec4(0.5, 0.5, 0.5, 1.0);
 one.a=texture2D(u_texture, v_texcoordAlpha).r;
 gl_FragColor = one * two;
}

В данном коде, по мимио обработки текстуры в атласе, отвечающей за альфа канал, я произвожу умножение на вектор

vec4 two=vec4(0.5, 0.5, 0.5, 1.0);

Данный код работает на всех устройствах корректно.

Если переписать шейдер :

precision mediump float;
uniform sampler2D u_texture;
varying vec3 v_vertex;
varying vec2 v_texcoord;
varying vec2 v_texcoordAlpha;
void main() {
 vec4 one=texture2D(u_texture, v_texcoord);
 one.a=texture2D(u_texture, v_texcoordAlpha).r;
 one.r=one.r * 0.5;
 one.g=one.g * 0.5;
 one.b=one.b * 0.5;
 gl_FragColor = one;
}

По сути, работая с каждой компонентой R, G  или B в отдельности

one.r=one.r * 0.5;
one.g=one.g * 0.5;
one.b=one.b * 0.5;

мы получаем рабочую сцену на Google Nexus 5 и абсолютно нерабочую сцену на других устройствах типа Samsung Galaxy S3 или Galaxy Tab.