Задать вопрос
Ответы пользователя по тегу Android
  • Изменение требований google к целевым страницам?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    У Гугла есть список сертифицированных рекламных сетей. Ахз есть ли в этом списке апдиал. Имхо письмо счастья прилетело из-за использования рекламного сдк. На 4пда народ обсуждал проблемы с сдк Яши. Там в конце концов пришли, что на самую свежую не ругается.
    Проверьте апдиал на сертифицированного, и если нет обновления , то убирите
    Ответ написан
    Комментировать
  • Каким образом у меня получается работать с UI элементами используя Dispatchers.IO?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    сахар/синтаксис языка прячет от вас внутреннюю кухню.

    Произвольный поток в андроиде напрямую не может менять ui на активити. Используют обмен из сообщениями через хелдлер или явно объявляют что из него потребуется взамодействие. Так же Dispatchers взял на себя роль экзекутора (причем очень крутого, где задачи выполнябтся в несколько потоков)

    lifecycleScope.launch(Dispatchers.IO) {
    вот эту часть можно считать объявлением анонимной функции
    }

    progressBarDownload.progress - а здесь у нас замыкание

    в общем от Вас язык спрятал кучу рутины
    Ответ написан
    2 комментария
  • Как обфуцировать SDK?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    consumer-rules.pro
    -keep class your.sdk.** { *; }

    ** - сохранять все классы глубже your.sdk
    {*;} - сохранять методы
    Ответ написан
    Комментировать
  • Разница в доходах AdMob на iOS и Android?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Не смотрю видео. Не монетизирую через AdMob. Не публикую в App Store.
    Просто анализирую статистику из разных источников.

    Попробуйте загуглить
    1) Ios vs Android доля рынка по странам
    2) Toп стран по покупкам в сторах
    3) На каждый год можно найти статьи сколько всего денежек потрачено в сторах

    Подключить здравый смысл. Андроид - все ищут бесплатные (с рекламой)
    Яблоко - программы в основном платные
    Ответ написан
    1 комментарий
  • Почему activity долго закрывается?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    На подобные вопросы ответить можете только Вы как автор программы.
    А помочь с поиском проблемных мест может стрикт моде у приложения
    if (BuildConfig.DEBUG) {
                StrictMode.enableDefaults();
                StrictMode.allowThreadDiskReads(); // 1
                StrictMode.allowThreadDiskWrites(); // 2
            }

    1 и 2 очень много сообщений без них. Тут начнет ругаться на сохранение и востановление стейта у активитей, чтение шаред преференс.

    Посмотрите в логах на что будет ругаться. Может вы чего на UI треде делаете при деструктизации
    Ответ написан
    Комментировать
  • Как исправить ошибку «exception occured while executing 'grant'» при использовании ADB?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Не совсем понимаю, что реально вы через это хотите сделать. В андроид многое дополнительно нельзя чисто юридически. Использование средств для людей с ограниченными возможностями в последней редакции ужесточили.
    Ответ написан
  • Почему андроид "подвешивает" VPN?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Это андроид. У него даже системные службы виснут. 24на7на365 тут нет как класса.
    Ответ написан
    2 комментария
  • Хочу заказать разработку приложения. Есть пару вопросов?

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

    1) Будет отлично работать на всех платформах ?
    Зависит от того, какие зависимости придется подключить.
    Есть такой ресурс pub.dev (репозиторий готовых модулей)
    Официальные библиотеки (там где только код на Dart) имеют версии под 5 платформ
    Но например простейший встроенный броузер в приложение уже сплошное разочарование.
    Поддерживается только IOS и Android. И доступные методы урезаны до общего совместимого функционала.
    В общем если платформо зависимая вещь, то дай бог чтобы была реализация под яблоко и робота.
    Совсем специфичные - в версиях под одну платформу.

    И еще момент библиотеки в двух релизах сейчас. С нулсафети и старые. Автор может не переписать или под новые требования пока глючит.

    4) Приложение подразумевает взаимодействие пользователей друг с другом.
    Вопрос два к Вам а штат модераторов готовы набрать ? Законы всех стран с требованиями к таким приложениям изучили ? Сочетания смайликов которые являются жутким оскорблением ?
    Ответ написан
    Комментировать
  • Как принимать данные по Bluetooth?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Жалко. Поэтому словами.
    Есть фоновая служба. В ней сиглетон тред сервера.
    В сервере
    // создаём серверный сокет, он будет прослушивать порт на наличие запросов
    serverSocket = bluetoothAdapter.listenUsingInsecureRfcommWithServiceRecord("RAWBT", SPP_UUID);

    // запускаем бесконечный цикл, внутри которого сокет будет слушать соединения и обрабатывать их
    // создаем клиентский сокет, метод accept() создаёт экземпляр Socket при новом подключении

    Далее в бесконечном цикле, пока верен флаг что работаем

    принять соединение, если количество открытых соединений не превысило лимит.
    стартует тред взаимодействия

    public abstract class Connection extends Thread {
    BluetoothSocket socket; // сокет, созданный при подключении пользователя
    final OnDocumentReceived mDelegate;
    }

    В конкретной реализации этого класса потребуются
    final ExecutorService executor = Executors.newSingleThreadExecutor();
    private DataOutputStream stream;
    private DataInputStream dataInputStream;

    Экзекутор для рассылки сообщений с прочитанными данными
    так как чтение идет из еще одного паралейного треда.

    В общем врядли ваши примеры были настолько сложными
    Я еще про часть самого окна терминала ничего не написал. А там тоже накрутить кода пришлось
    Ответ написан
    2 комментария
  • Можно ли писать андроид приложения на C#?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Java vs Kotlin - можно спорить, что лучше. Но это нативная разработка.
    Си шарп - кросплатформер.

    Поэтому выбор инструмента зависит от задачи. Серьезное приложение понятие большое.
    Я писал и пишу на яве. Но захотелось выйти за пределы одной платформы.
    Попробывал react native. Не понравилось. Пробую сейчас flutter (dart).
    К чему в результате хочу придти.
    Часть кода общая. Остальное в виде пакеджа и реализацией под конкретную платформу.
    Если еще осилю CPP , то это тоже будет почти общим с обертками над .so .dll
    Но учить до посинения.

    p.s. Сейчас попалось в статье разочаровавшегося ( по сути тот человек хотел сделать WebView приложение).
    Угу именна та часть, которую не реально обернуть для 5ти платформ (андроид иос макось винда линух)

    В каждом пакете Flutter может встретиться баг в коде Dart, или в коде Swift/Objective-C, или в коде Java/Kotlin. А то и в нескольких частях сразу. Его может сломать любое обновление Flutter, Dart, iOS или Android – а вместе с ним сломается и ваше приложение на одной или всех платформах. Если вы не владеет всеми тремя языками и всеми поддерживаемыми платформами, то, вероятно, не захотите искать и устранять проблемы самостоятельно.
    Ответ написан
    Комментировать
  • Как добавить пункт меню?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    https://github.com/YehiaAliYehia/Notes/blob/b4cc81...

    Студия исходники у Вас раскрасила как депрекайтед?
    Ответ написан
  • Как изменить название getPackageName?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    https://github.com/YehiaAliYehia/Notes/blob/b4cc81...

    https://github.com/YehiaAliYehia/Notes/blob/b4cc81...

    https://github.com/YehiaAliYehia/Notes/blob/b4cc81...

    Теория для понимания как протянулось название покаета для сборки

    https://docs.gradle.org/current/dsl/org.gradle.api...

    В строковый ресурс не стали городить цепочку и просто вбили еще раз
    может это не все. Глубже не копал
    Ответ написан
  • Бинд IP->MAC-адрес и проброс портов с Андроида на ПК?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Вашу задачу решают устройства по типу Hame 3G Wi-Fi Router. Клонов и аналогов много. Лучше поддерживающие OpenWRT. Цена у них от 10 долларов. Программу для андроида с желаемыми функциями нельзя публиковать.
    Даже если найдете, то работать надежно не будет. Андроид и функции сервера вещи не совместимые из-за архитектурных особенностей андроида.
    Ответ написан
    2 комментария
  • Почему не меняется иконка уведомления?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Отвечаю на вопрос "шо делоть"
    открываете
    https://developer.android.com/reference/androidx/c...
    жмете Ctrl(Cmd)+F
    печатаете Icon
    Если 7-я найдена подстрока не поможет, то не знаю

    зы аккуратнее с чужими иконками - акка разраба разрешено регистрировать 1 раз в жизни
    Ответ написан
    2 комментария
  • Может ли прошивка телефона андроид помочь от взлома,удаленного доступа к нему?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Обязательно качайте с сайта где "без регистрации и смс". Безопасность повыситься, если в ходе прошивки удастся получить кирпич. Никто теперь вас взломать не сможет.
    Вы хоть свою модель телефона написали. Или бай дефаулт считаете, что на все есть кастомные прошивки.
    Если уж такое желание возникло, то сперва выбирать, что хотите накатить, а потом уж покупать эту модель телефона.
    Ответ написан
  • Нехватка памяти при загрузке изображений из памяти устройства?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    FileChannel channel = escPosEmulator.randomAccessFile.getChannel();
    MappedByteBuffer map = channel.map(FileChannel.MapMode.READ_WRITE, buf.getRowBytes()* escPosEmulator.output_height , buf.getRowBytes()*height);
     buf.copyPixelsToBuffer(map);
     escPosEmulator.output_height += buf.getHeight();


    Есть у меня эмулятор. После того как он обработал команды и отрисовал буфер строки, я его сохраняю в файл.

    Когда обработка завершена
    if (escPosEmulator.output_height > 0) {
        Bitmap out = Bitmap.createBitmap(escPosEmulator.max_dots, escPosEmulator.output_height, Bitmap.Config.ARGB_8888);
        FileChannel channel = escPosEmulator.randomAccessFile.getChannel();
        MappedByteBuffer map = channel.map(FileChannel.MapMode.READ_WRITE, 0, out.getRowBytes() * out.getHeight());
        out.copyPixelsFromBuffer(map);
        channel.close();
                                       
     }


    получаю картинку обратно в память.
    В результате я работаю обычно с 32 пикселями в высоту.
    Суммарную высоту программно ограничил в 32 тысячи пикселей. А то потом штатные просмотровщики виснут.

    Это нативные функции java под андроидом. Поищите аналоги сишарпа для прямой работы с файлом и байтовым представлением битмапа .
    Ответ написан
    Комментировать
  • Как правильно, в android java, передать константу в другой класс?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    не надо так делать.
    прочитайте про .setOnClickListener
    в качестве параметра в него передается View
    Ответ написан
  • Как передавать id сессии к api на нативных мобильных приложениях?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Со стороны java и прочих ЯВУ работать с апи проще так
    на нужный урл отсылается структура данных (json,xml)
    в самой структуре есть поля для логина / тукена .
    в ответ структура с кодом исполнения (успех, код ошибки) и результат или поле с текстом ошибки.

    Так как данные ходят по https, то из трафика сложно вычленить логин и т.д.

    Со стороны PHP маленькая заморочка. Данные нужно доставать из голого потока (пусто в _POST, _GET), одна лишняя строка кода
    json_decode(file_get_contents('php://input'));
    Ответ написан
    Комментировать