Ответы пользователя по тегу Java
  • Почему медленно считываются данные с акселерометра (Java, Android Studio)?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    textView1.setText на каждый чих плохо.
    переделай чтобы обновлял не чаще 1го раза в 100мс
    Ответ написан
    Комментировать
  • Как программно проигрывать ноты гитары?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    https://source.android.com/devices/audio
    Узучите. Возможно Вы найдете то, что я пропустил.
    Я не вижу готового программного миди синтезатора в документации
    Ответ написан
    Комментировать
  • Как открыть ссылку intent://?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    ссылка для броузера
    intent:data_to_print#Intent;scheme=rawbt;package=ru.a402d.rawbtprinter;end;
    ссылка из андроид приложения
    rawbt:Hello,%20world!%0A%0A

    package позволяет отправить в маркет скачивать нужное приложение тех у кого его нет
    Ответ написан
    Комментировать
  • Ошибка on a null object reference в андроид студио, как исправить?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    https://stackoverflow.com/questions/52791208/fireb...

    в ответ прилетает ошибка или нормальный ответ.
    Если ошибка не нул, то обрабатываем ее.
    Ответ написан
    Комментировать
  • Почему не качается файл в Android с помощью DownloadManager?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    ... has leaked IntentReceiver ... Are you missing a call to unregisterReceiver()?

    Бродкаст рецейвер вешали ? А снять забыли !
    Ответ написан
  • Как сравнивать версии своего приложения?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    public final class BuildConfig {
    ...
      public static final int VERSION_CODE = 152;
      public static final String VERSION_NAME = "5.52.0";
    }

    Сравнивай в целых числах BuildConfig.VERSION_CODE
    Ответ написан
    Комментировать
  • Можно ли связать сайт с Android приложением?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    https://developer.android.com/guide/webapps/webview
    читаем про Binding JavaScript code to Android code

    WebViewClient shouldOverrideUrlLoading() это ловит переходы по ссылкам

    https://habr.com/ru/post/584780/ и прочее погуглите как делать покупки

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

    Ну ваш сайт на вордпрессе тоже придется подпилить.
    Ответ написан
    Комментировать
  • Как в приложении А отследить когда закрывается приложение B?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    не решаемо в текущих реалиях плея. Правила все ужесточаются. Приватность .... Дело идет к тому, что прилы будут сидеть каждая в своей песочнице и не будет иметь прав из нее высунуться. Уже в 12м андроиде, что бы просто поймать интент требуется заполнение специальной секции манифеста . чтобы просто проверить наличие определенной программы, тоже прописывай ее пакедж нейм в query

    Если основное назначение у приложения не связано с таким тайм менеджментом, то модерация ее на пропустит.

    Вот и выходит/ Если ваше приложение А - лайнчер назначенный по умолчанию (см. родительский контроль), то решение как бы есть. А если приложение просто установлено на телефоне, то шпионить нельзя.
    Ответ написан
    Комментировать
  • Что нужно для установки условий для запуска сторонних проложений?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Идешь в плей и смотришь "родительский контроль" . Выбираешь с самым худшим рейтингом. Идеально с 1 звездой.
    Почему так. Детки минусят реально работающие. Почитайте сами отзывы.

    Например набор разрешений у mcafee

    Development tools
    test access to protected storage
    Your personal information
    read your Web bookmarks and history, write web bookmarks and history
    Your location
    approximate (network-based) location, precise (GPS) location
    Network communication
    view network connections, view Wi-Fi connections, full network access, Google Play billing service, Google Play license check, receive data from Internet
    Storage
    modify or delete the contents of your USB storage
    Phone calls
    read phone status and identity
    System tools
    retrieve running apps, run at startup, draw over other apps, prevent phone from sleeping, toggle sync on and off
    Extra
    android.permission.ACCESS_BACKGROUND_LOCATION, android.permission.FOREGROUND_SERVICE, android.permission.QUERY_ALL_PACKAGES, android.permission.READ_APP_BADGE, android.permission.READ_PHONE_NUMBERS, com.anddoes.launcher.permission.UPDATE_COUNT, com.google.android.finsky.permission.BIND_GET_INSTALL_REFERRER_SERVICE, com.htc.launcher.permission.READ_SETTINGS, com.htc.launcher.permission.UPDATE_SHORTCUT, com.huawei.android.launcher.permission.CHANGE_BADGE, com.huawei.android.launcher.permission.READ_SETTINGS, com.huawei.android.launcher.permission.WRITE_SETTINGS, com.majeur.launcher.permission.UPDATE_BADGE, com.mcafee.safefamily.core.permission.USAGE, Can receive cloud messages, com.oppo.launcher.permission.READ_SETTINGS, com.oppo.launcher.permission.WRITE_SETTINGS, com.sec.android.provider.badge.permission.READ, com.sec.android.provider.badge.permission.WRITE, com.sonyericsson.home.permission.BROADCAST_BADGE, com.sonymobile.home.permission.PROVIDER_INSERT_BADGE, me.everything.badger.permission.BADGE_COUNT_READ, me.everything.badger.permission.BADGE_COUNT_WRITE
    Ответ написан
    1 комментарий
  • Как сделать, чтобы при скане qr-кода открывался сайт с предложением скачать приложение?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    QR код содержит просто ссылку.
    В манифесте приложения пропишите
    <intent-filter>
                    <action android:name="android.intent.action.VIEW" />
    
                    <category android:name="android.intent.category.BROWSABLE" />
                    <category android:name="android.intent.category.DEFAULT" />
    
                    <data
                        android:host="lknpd.nalog.ru"
                        android:pathPrefix="/api/v1/receipt"
                        android:scheme="https" />
                </intent-filter>


    Здесь вы указываете хост и начало урла. Приложение сканер кр кода обращается к операционной системе с вопросом какие программы могут открыть данную ссылку. В список вариантов будет добавлено и ваше.
    void handleIntent(Intent intent){
            String action = intent.getAction();
            if (action == null) {
                showMessage("Ошибка вызова. Нет действия в намерении");
                return;
            }
    
            Uri uri = null;
            if (action.equals(Intent.ACTION_VIEW)) {
                uri = intent.getData();
            }else if (action.equals(Intent.ACTION_SEND) || action.equals(Intent.ACTION_SENDTO)) {
                String stringText = intent.getStringExtra(Intent.EXTRA_TEXT);
                if (stringText == null) {
                    CharSequence textSequence = intent.getCharSequenceExtra(Intent.EXTRA_TEXT);
                    if (textSequence != null) {
                        stringText = textSequence.toString();
                    }
                }
                if (stringText != null) {
                    if (stringText.startsWith("http://") || stringText.startsWith("https://")) {
                        uri = Uri.parse(stringText);
                    }
                }
            }
            if(uri == null){
                showMessage("Ошибка вызова. Ссылка на чек не обнаружена");
                return;
            }
    //теперь самостоятельно разбираете строку урла, чтобы вытащить нужные аргументы для конкретного действия в приложении
            receiptId = ReceiptId.fromURI(uri);
            if(receiptId == null){
                showMessage("Неправильная ссылка на чек");
                return;
            }
    
            importReceipt();
        }


    На Вашем сайте урлы можно через htaccess переправить на заглушку с предложением скачать приложение или к обычной странице добавлять банер с предложением открыть в приложении.
    Ответ написан
    1 комментарий
  • Почему не запускается сервис приложения?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    добавить пермишен старт фореграунд.
    службы без нотификации прибиваются через несколько секунд.
    тоаст из фонового процесса приведет к крешу.

    найдите на гите пример работающего плеера.
    Ответ написан
    Комментировать
  • Как устранить ошибку с оплатой в Android приложении в Play Market?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Используй нативную библиотеку. Anjlab использовал долго. А не переписана она, так как от самого андроида третья версия уже удобная сама по себе.

    https://github.com/402d/TextToPrint/blob/e10d0619e...

    Пример инлайн покупки
    Ответ написан
    Комментировать
  • "Сохранить этот документ с расширением «.java» в конце имени невозможно. Требуется расширение «.rtf»." на macOS. Что делать?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Не получиться. Исходные тексты для любого языка - это файлы plain text.
    То есть текст без форматирования. Проблема в том, что TextEdit предлагает
    обогашенные форматы.
    614afb1657a3e391672413.png
    Во всех форматах (в каких можно сохранить) будет присутствовать мусор, который потом не даст коду работать.

    Не всем нужны специальные IDE, на случай поправить иногда файлик могу посоветовать CotEditor (16 мегабайт).
    Ответ написан
    Комментировать
  • Можно ли стать android-разработчиком без технического образования? Какие разделы высшей математики понадобятся в работе?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Вышка нужна редко. Матричные вычисления и всякие вещи выходящие за методы приблизительных вычислений потребуются только при обработке мультимедиа.
    Например задачи OCR https://habr.com/ru/post/332840/

    В 99% случаев больше пригодится навык решения "Занимательных задач" за школьный курс.
    Типа есть столб 10 метров. За день улитка подымается на 5 метров, за ночь сползает на 3.
    Вопрос когда она будет на вершине столба. Ответ 5 - не верен. Полезно для развития навыка написания правильных циклов.
    Ответ написан
    1 комментарий
  • Как в Android или на JS показывать модальное окно если нет интернет соединения?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    https://stackoverflow.com/questions/6362314/wifi-c...
    https://stackoverflow.com/questions/25678216/andro...
    И тому подобное. Не забывайте только что бывает еще проводной интернет
    Ответ написан
    Комментировать
  • Как решить проблему с "No view found for id"?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
  • Как положить в лист миллиард объектов?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    https://habr.com/ru/post/312078/
    почитайте это статью. Не надо комп ставить в неудобную позу. Лучше писать алгоритм так, чтобы он исходил из доступных ресурсов.
    Ответ написан
    Комментировать
  • Появляются несколько иконок при запуске приложения на реальном устройстве Android Studio,как решить данную ситуацию?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Intent.Main в манифесте у вас несколько раз. Оставьте его только у главной.
    Ответ написан
    1 комментарий
  • Как реализовать приложение для записи разговоров в Android 10?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    процитирую FAQ программы, которой пользуемся.

    Важные замечания по функции записи разговоров для Android смартфонов

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

    В зависимости от модели телефона и версии Android на нем, возможны следующие варианты:

    Разговоры записывается хорошо (отлично слышен голос обоих собеседников).
    Голос записывается только с микрофона, т.е. будет хорошо слышна речь сотрудника, а клиента - очень тихо. Если вам очень важно хорошо записать речь клиента, можно воспользоваться громкой связью и тогда весь разговор будет хорошо слышен.
    Голос не записывается совсем - крайне редкий случай, встречается на единичных моделях.
    Так же, запись разговора может работать иначе при использовании гарнитуры, даже если прекрасно работает без нее.

    На самом деле не все так страшно, т.к. функция записи работает на многих моделях телефонов и всегда можно найти модели телефонов с хорошим качеством записи.

    Работа записи в зависимости от версии Android
    Android 10: ситуация аналогичная с Android 9, но на некоторых моделях, где нет встроенной записи от производителя, может быть полностью не слышно записи, даже своего голоса (например на ряде моделей Samsung, Xioami).
    Подробнее об этом и настройке записи в Android 10 можно прочитать в отдельной подробной статье по Android 10

    Android 9: запись звонков обоих собеседников работает только на телефонах, где есть встроенная запись звонков от производителя, например телефоны Xioami, Huawei, Meizu, Oneplus, ряд моделей Lenovo, Asus, и д.р. (важно: не все модели указанных производителей имеют встроенную запись!). На остальных моделях запись идет с микрофона (будет не слышно или плохо слышно собеседника).
    Подробнее об этом и настройке записи в Android 9 можно прочитать в отдельной подробной статье по Android 9

    Android 6, 7, 8: запись работает практически на всех телефонах, попадаются единичные модели с проблемами в записи.

    Android 5.1: запись работает на многих телефонах, но процент моделей с хорошей записью ниже, чем на телефонах с Android 6, 7, 8, т.е. попадается больше моделей с ограничениями в записи.

    Android 2, 4, 5: в этой группе больше всего телефонов с проблемами в записи, но есть и немало телефонов, где все в порядке.

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

    Не слышно вторую сторону в записи или запись полностью не работает:
    LG Nexus всех серий; Alcatel 6039Y/6045Y(Idol 3); BQ-5037; TP-LINK Neffos Y5s; Xioimi: Mi9 Lite, Mi9 pro, Note 8, Note 8 pro, 8a, Mi A3; телефоны на Android 9, где нет встроенной записи от производителя. В том числе все модели Samsung (запись там можно активировать установкой другой прошивки телефона)

    Нестабильная регистрация звонков (могут пропадать часть записей):
    samsung SM-G318H, МТС smart start 3; Lenovo A5; смартфонамы на Android 8.1 Go (Nokia 1, Nokia 2, Huawei Y5 Lite, Samsung J2 core и д.р.) - иногда может быть решено специальными настройками (не всегда), лучше избегать эти модели.

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

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

    На данный момент проверено, что полнофункциональная запись разговоров доступна на следующих телефонах (обратите внимание, что при обновлении ряда моделей до Android 9 запись может перестать работать):

    Alcatel: 4013D, 4027D, 4009D, 4024D, 4030D, 4032D, 4033D, 4034D, 4049D, 5010D, 5038D
    ARC: Benefit M8, Benefit S401, Benefit S404
    Asus: ZenFone 2 Laser, ZenFone 5, ASUS ZenFone Go ‏ZB452KG, ZenFone Live ZB501KL GO
    Acer: Z200, Liquid E700
    DEXP: Ixion ML 4.7, Ixion ES135, BS250, T155
    Explay: Tornado, Fresh, Atom
    Haier: W701
    Fly: IQ4413, IQ436i, IQ441, FS506, FS406, FS451, FS407, FS408, FS458, FS459, FS507
    Samsung: Galaxy S3, S4, S4 Mini, S5 Mini, S7 Edge, S8, S9 Grand 2, Note 2, Note 3, A3, A5, A8 [A530F], G350E, Star Advance, Star Plus GT-S7262, J5, J7(SM-J710F), J8, GT-S5360, SM-G530H, SM-G531H, SM-G130E, SM-J320H, J1 (SM-J105/SM-J120)
    Lenovo: S820, S860, S650, S660, S60, P780, A316, A319, A328, A369, A399, A536, A2010, A1000, A6010, Vibe C2, Vibe B A2016, Lenovo A Plus
    Nokia: Nokia 2, Nokia 5
    HTC: Desire 310, Sensation XE
    LG: G2, D325, D335, L90, G4, G4c, G5 SE, K220, K350, LG V30
    DNS: s4507
    Highscreen: Zera F, Zera S, Thor, Boost 2 SE
    Huawei/Honor: Y320, Y3ii, Y3 2017, Y3 Lite (Y360-U82), Y511, Y5, Y6 Pro, Honor 6A, P9 lite, Y6 Prime (2018), Honor 6c pro, P Smart, все модели с Android 9 и оболочкой EMUI
    Homtom: HT16
    Philips: W6610, S337
    Sony: Xperia Z (C6602), Xperia z1 compact, Xperia z3 compact (D5803), Xperia XA1, Xperia XZ, Xperia XZ Premium
    Micromax: A79, D320, D303, Q301, Q402+
    Motorola: Moto C
    ZTE: V815W, V829, Blade 2, Blade A3, Blade AF3, Blade A5 PRO, Blade L5 Plus, Blade S6, Blade A465, BLADE A310, Blade A315
    Xiaomi: Redmi 3, Redmi 3S, Redmi Note 3, Redmi Note 4, Redmi Note 5A, Redmi 4X, Redmi 4A, Mi 4i, Mi4c, 5A, Mi A1 A2 Go (Только на Android 8), S2, Redmi 6, Redmi 6a, 7, 7a, Note 6, Note 7, Xiaomi Mi 8 Lite, Xiaomi MI 8, Xioami Mi 9, Xiaomi Mi 9 SE, Xioami Mi 9t (именно точно такие названия моделей, без всяких доп. обнозначений типа pro, и т.п.)
    Meizu: M3s, M5c, M3 Note, M5s, M5 Note, M6T, C9, C9 pro
    Vivo: Y11, Y91C (Важно: во всех телефонах Vivo запись работает только на телефонах для рынка России и на территории России!!!)
    Oppo: A5 (Важно: во всех телефонах Oppo запись работает только на телефонах для рынка России и на территории России!!!)
    Oukitel: k4000
    Oysters: Arctic350
    Doogee: X3, X5, X5 MAX PRO
    Digma: HIT Q401, Q500
    Prestigio: MultiPhone Wize R3 PSP3423
    Билайн: Smart3, Smart5
    МТС: Smart Sprint, Smart Start, Smart Race 4G
    Мегафон: Login 1, Логин+
    Tele2: Mini, Midi
    Ответ написан
    Комментировать
  • Почему возникает синтаксическая ошибка в строке context.startActivities(i)?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    я думаю вы хотели context.startActivity(i) сделать, а не то что написано сейчас в коде .
    Ответ написан
    Комментировать