Ответы пользователя по тегу Android
  • Стоит ли пользоваться приложениями-кошельками?

    @vikarti
    Зависит что за приложение конечно но в общем случае ответ - нет.
    Если телефон на Samsung поддерживает Samsung Pay (не все поддерживают ) и карта тоже поддерживается (зависит от банка и типа visa/mc, если не поддерживается - скажет )- Samsung Pay конечно. Намного удобнее. Бонусом будет оплата через MST (если аппарат держит) - на терминала которые не умеют NFC. Если на аппарате рут - забыть (потому что Knox наверняка трипнут).
    Samsung Pay еще и дополнительную безопасность дает за счет генерации временного номера.. Один из недостатков - если делать возврат (в смысле отмену операции) - то нужно делать его именно на телефон, потому что номер карты который считал магазин - другой. (Те же проблемы что с Apple Pay собственно).

    Другие варианты (вот тут только NFC уже а не MST):
    • Приложение Яндекс.Денег - умеет выпускать виртуальную карту, которую и использует для платежей. Деньги снимаются либо с баланса привязанной настоящей карты либо с баланса Яндекс.Кошелька (если там не 0), кстати безопасный способ если очень сильно беспокоится - больше чем есть на балансе Яндекса - не украдут если карта не привязана
    • Приложение конкретного банка, если он это поддерживает (например Тиньков поддерживае а Альфа-банк - нет), разумеется если есть карта этого банка

    С рутом - да, будут сопротивляться и говорят что или NFC-оплата или рут но обычно можно подавить это сопротивление.
    Ответ написан
    1 комментарий
  • Какие книги по разработке под Android сейчас актуальны?

    @vikarti
    возможно кому то покажется странным но - The Busy Coder's Guide to Android Development от Mark L. Murphy https://wares.commonsware.com/app/books смотрели? обновляемый огромная книга по большинству разделов разработки под андроид. модель распространения - подписка за 45 баксов в год (сами файлы - в PDF/Mobi/EPUB)
    Ответ написан
    Комментировать
  • Как организовать streaming музыки?

    @vikarti
    SubSonic или Plex
    во втором случае еще и видео будет, тоже со стримингом.
    недостаток...приложения для смартфонов в первом случае не все опенсорсные а во втором вообще только сервер частично опенсорсный. да и заплатить они вежливо но попросят чтобы можно было пользоваться мобильными приложениями.

    Еще возможный вариант, возможно не в тему но... продать душу гуглу, а затем запустить через wine google music uploader и использовать google music в режиме без подписки

    Если на сервер можно поставить гипервизор и устраивает возможно не 100% легальное решение то можно попробовать туда взгромоздить xpenology xpenology.com/forum - это слегка модифицированная прошивка от NAS'ов Synology, а с ней уже использовать родные приложения от Synology (DS Audio ту же)
    Ответ написан
    Комментировать
  • Какой выбрать смартфон?

    @vikarti
    из тех что перечислены - Zenfone 2 (заодно можно обойтись без карты памяти если взять модель с 64 Gb бортовой памяти) только надо помнить что по сути это 3 близких аппарата (отличие в дисплее, процессоре, объеме RAM, обьеме встроенное флеш-памяти)
    Ответ написан
    Комментировать
  • Есть ли аналог fake gps не использующий функцию в dev menu фиктивные местоположения?

    @vikarti
    например в https://play.google.com/store/apps/details?id=de.a... (платная + потребуется активировать ее xposed-модуль) этот функционал прямо заявлен
    также есть https://github.com/hilarycheng/xposed-gps старый
    правда приложение может например решить что если не приходит NMEA-поток то кто-то шутки шутит но эмуляция этого у GPS Fake Location Toolkit тоже заявлена...
    Ответ написан
    Комментировать
  • Android. Как сделать постоянный фоновый процесс?

    @vikarti
    "у вас нет потребности в этом"
    а если таки потребность у пользователя есть (и сервис что то предоставляет пользователю - музыкальный плеер например) то в дополнение к START_STICKY то нужно сделать его foreground service

    Foreground Services

    If you have a service that will run for a substantial period of time, there is a risk that your process will still be terminated. That could be triggered by the user, or it could be the OS’s own decision, based on the age of your process.

    Generally speaking, this is a good thing for the user, because too many developers “leak” services, causing them to run unnecessarily, without adding value to the user, and tying up system RAM as a result.

    But, what about services that are delivering value to the user for a long period? For example, what about a music player, where, in theory, the service is delivering value until the user presses some sort of “stop” button somewhere to turn off the music?

    For those sorts of situations, you can flag a service as being a “foreground service”.

    Isn’t “Foreground Service” an Oxymoron?

    You might be forgiven for thinking that “foreground” and “service” are not designed to go together.

    Partly, that is because we have overloaded the term “foreground”.

    A foreground service is not one that somehow takes over the screen. A foreground service is one that runs with foreground priority. That means:

    It will be treated similarly to the app that is in the UI foreground, from the standpoint of determining processes eligible for termination
    It will be classified as foreground from a CPU standpoint, rather than being relegated to the standard background process group
    The former is what many developers want: a service (and process) that will not go away.

    The latter is what many users fear: a service (and process) that is capable of stealing chunks of CPU time away from the game, video, or whatever else is truly in the foreground from a UI standpoint.

    Services themselves, while useful, are best when used sparingly, only running when they are actively delivering value to the user. “This goes double” for foreground services.

    Putting Your Service in the Foreground

    Putting a service into the foreground is a matter of calling startForeground(). This method takes two parameters, the same two parameters that you would pass to notify() of NotificationManager:

    A prepared Notification
    A unique ID for that Notification
    Android will then display the Notification. So long as the Notification is visible, your app’s process will be given foreground priority.

    You undo this by calling stopForeground(). stopForeground() takes a boolean parameter, indicating if the Notification should be removed (true) or not (false). Typically, you will pass true, so the Notification only clutters up the screen while you need it.

    The Notifications/Foreground sample project is a clone of the Notifications/DownloadNotify sample that opened this chapter, adding in the use of startForeground() and stopForeground().

    Towards the top of onHandleIntent(), we call startForeground(), to really ensure that our process will remain intact long enough to complete the requested download:

    startForeground(FOREGROUND_ID,
    buildForegroundNotification(filename));
    This, in turn, uses a buildForegroundNotification() method to build the Notification that will be displayed while the service is categorized as being in the foreground:

    private Notification buildForegroundNotification(String filename) {
    NotificationCompat.Builder b=new NotificationCompat.Builder(this);

    b.setOngoing(true);

    b.setContentTitle(getString(R.string.downloading))
    .setContentText(filename)
    .setSmallIcon(android.R.drawable.stat_sys_download)
    .setTicker(getString(R.string.downloading));

    return(b.build());
    }
    Note that we use setOngoing(true), to indicate that this is an “ongoing” operation. This precludes the user from removing the Notification manually, as doing that would drop our process out of foreground priority.

    Towards the end of onHandleIntent(), we call stopForeground(), before calling raiseNotification():

    stopForeground(true);
    raiseNotification(i, output, null);
    There is a similar stopForeground() call in the catch block that raises the failure Notification in case of an I/O error.

    In both cases, we pass true to stopForeground() to remove the Notification. From the user’s perspective, we could just as easily have passed false, as the Notification used with startForeground() will also be removed once our service is destroyed, which will happen shortly after onHandleIntent() ends.
    Ответ написан
  • Как сделать сложный ListView в android?

    @vikarti
    прочитать главу "Advanced ListViews" из https://commonsware.com/Android/ - там подробное описание того о чем swba пишет будет
    Ответ написан
    Комментировать
  • У кого есть опыт чтения на нескольких устройствах?

    @vikarti
    AlReader - есть синхронизация позиции но книги надо руками синхронизировать тем же Dropsync. про синхронизацию цитат и так далее...видимо забыть

    если скорректировать часть поставленных условий...сложно, если их немного скорректировать (советуют же НЕ соответствующий условиям про FB2 iBooks) то например:

    Bookmate (игнорируя подписку)...но книжки надо загружать им и только в FB2/EPUB и загрузка. ОЧЕНЬ плохо отрабатывает мало мальски сложное форматирование.

    Marvin for iOS - работает _только_ на iOS, синхронизируется вообще все что только можно + есть очень хорошие плагины для Calibre но:книги надо загружать на каждый девайс отдельно, поддерживается только EPUB, всякие списки последних прочитанных - не синхронизируются. Красивый, очень

    Moon+ Reader: только Андроид, синхронизация позиции/цитат/etc - через Dropbox/Google Drive. Не синхронизируется список последних прочитанных.

    Mantano(теперь это Bookari Reader): только Андроид (iOS-версия не умеет облако), только EPUB/PDF, для работы синхронизации таки нужна подписка на их облачный сервис) (часть редакций поддерживают Dropbox для импорта книг но не для все синхронизационных функций). Если этот сервис лежит - синхронизации нет. А это...бывает. Также с некоторыми epub из странных источников (и я не флибусту имею ввиду) могут быть проблемы от некорректного рендеринга до падения, обычно более менее быстро фиксят. Вообще такое впечатление что оно не совсем на художественную литературу ориентировано. Очень хорошо сделана работа с библиотекой, с информацией о книгах, с цитатами. Есть поддержка e-ink дисплеев.
    Недостатки: на действительно больших базах (тысячи книг, десятки тысяч заметок)...будут лаги. 1 Gb оперативное памяти - абсолютное требование (даже если поставите на устройство где их нет не через Play - работать - не будет). Подписка.

    Pocketbook Reader (приложения для iOS/Android) (+ облако частично поддерживается в новейших e-Ink читалках Pocketbook). Бесплатно если вам хватает объема облака и вы их железки не покупаете.

    Bookfusion - читалки под iOS и Андроид а также веб клиент. Подписка. Плагин для загрузки из Calibre.

    я последнее время использую Bookari и Bookfusion (а вот так - вместе)
    Ответ написан
    Комментировать
  • Как эффективно обезопасить себя от утечки личных данных при потере Android-смартфона?

    @vikarti
    посмотреть в сторону preyproject.com ?
    (не требует рута, защищено от удаления пользователем не знающим отдельного пароля (прописывается как device admin), умеет активироваться по SMS)
    Ответ написан
    Комментировать