Ответы пользователя по тегу Android Studio
  • Почему перебои в приложении?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Режим телепата сегодня хромает.
    Интуиция подсказывает, что вы пытаетесь сделать splach заставку.
    Но вот на том, что вы написали в коде она пасует.
    Надеюсь Вы читали про официальное апи https://developer.android.com/develop/ui/views/lau...

    Ну и очень интересно, что вы прописали в xmlках (манифесте, стиле и теме)
    А то может ошибка не в коде, а в метаданных.

    В общем по коду ошибке можно только сказать, что в теме пока не разобрались. И например стиль от диалогового окна навесили на полноэкранную активити.

    Или пытаетесь программно сменить тему/лайоут в неподходящем методе.
    Ответ написан
  • Как считать данные с файла который расположен во внешнем хранилище анроид java?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Сейчас проще самому скачать файл с сети, чем пройти модерацию с нужными пермишинами
    <uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE"
            tools:ignore="ScopedStorage" />
        <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" android:maxSdkVersion="30"/>
        <application
    ...
            android:requestLegacyExternalStorage="true"
    Ответ написан
    Комментировать
  • Как получить полный доступ к файловой системе андроид?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Что придумать для таргет SDK выше 31 я не знаю. В андроидах до 11 и 12(в режиме совместимости) работал такой подход :
    <uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE" />
        <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    
        <application
    ....
            android:requestLegacyExternalStorage="true"
    ...
    >


    соответственно с динамическим получением пермишенов

    файлы и попдпапки получал через штатный File.listFiles()
    Ответ написан
  • Ошибка Task :app:mergeDebugNativeDebugMetadata NO-SOURCE, Task :app:checkDebugAarMetadata FAILED. Как исправить?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    По дубликатам классов могу подсказать. Лечиться добавлением implement platform.

    Мне этот способ подошёл при апгрейде до 34 апи.
    https://stackoverflow.com/questions/75263047/dupli...

    Попробуй сперва снизить таргет и компиле до 33 или 32.

    На счёт нет исходных кодов, в настройках проверь какие сдк студия скачала.
    Ответ написан
    Комментировать
  • Почему не открываются ссылки в android studio?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Самому это надо делать.
    Вешается свой контроллер.
    Если ссылка подходит под условие, то собираешь интернет для запуска телеграмма.
    Ответ написан
    Комментировать
  • Почему у меня в WebView (Android Studio) не открывается сайт, а печатается на белом экране?

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

    Теперь подробнее.
    Сплеш активити (ваш лоад) - открывающий произвольный сайт .
    Плей очень не любит приложения суть которых сводиться к .lnk файлу
    смотрим строку

    binding.webView.loadUrl("$domen/?packageid=$packageName&usserid=$uuid&getz=Europe/Moscow&getr=utm_source=google-play&utm_medium=organic")

    офигительные уши какой-то рекламной сети сомнительного качества

    В выходные дни ловили банерные сети на сливе мобильного трафа на платные финиши.
    Если

    val database = Firebase.database("https://test-apk-1-fa3be-default-rtdb.firebaseio.com")

    это не поднятый вами инстан, то вероятнее левак лезет от них.
    Если на целевом сайте, есть подключение js со сторонних сайтов, то под подозрением они.

    Вы ниразу не проверили пришедшие данные на валидность.
    у вас там и нул может проскочить, и что станно домен должен начинаться с https:// и вы заклыдваетесь , что слеша в конце не будет и т.д.

    Далее . Работать на основном потоке с внешними вещами не есть гуд, так как можно словить ANR. А так время холодного/горячего запуска будет велико.
    Ответ написан
    Комментировать
  • В чём проблема работы данного кода?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Жмем Ctrl+4 и читаем ошибку. Постепенно осваиваем работу с логкат, запуск в отладочном режиме (паучок)
    учимся находить сообщение об ошибках в логкат.

    Пример вида экрана после аккорда (ctrl/Cmd + 4)
    6422070f5a35d002328668.png

    На моем примере ошибка закончилось место . Что-то надо стереть или пересоздать виртуалку с большим местом, а не по минимуму
    Ответ написан
    Комментировать
  • Можно ли реализовать vpn в приложении на android studio?

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

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Хранить проекты нужно в репозиториях.
    Для максимального быстродействия все должно быть на ссд.
    Когда проект не требуется, удаляете с ssd.

    Свой HDD можете использовать в дополнение к внешнему хостингу в режиме зеркала.
    В общем ваш HDD винт для архивов.
    Ответ написан
    Комментировать
  • Как выяснить причину ошибки "database disk image is malformed" в android?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988

    Скопировал эту БД в ассеты, весьма успешно подключился к ней, считал и отобразил на экране.

    В реальности вы использовали prepolation (заполнение начальных данных), а не подключились к базе.
    Вы же откуда копировали куски кода. Так вот там перенос данных в созданную на телефоне базу данных.

    После этого добавил пару полей, изменил названия и добавил чуть больше данных.

    Это действие должно сопровождаться повышением номера информационной схемы и написанием миграции с обной версии в новую.

    На стадии разработки можно пропускать этот шаг. Но тогда будут ошибки целостности. Главное коректно между релизами, чтобы работало - пользователи не должны терять свои данные.

    А Вам как разработчику тогда потребуется полностью удалять приложение с телефона и ставить на чистую повторно. В конце отладки поставить предыдущий релиз и проверить, что миграция отработала правильно (ну а до первого (еще не опубликованного) имхо лишнее).
    З.ы. еще эмулятор может грузиться с записанного снапшота, где сохранилось состояние с установленной прошлой версией.
    Ответ написан
  • Как прикрепить и отправить файл через SMTP в android приложении?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Вам нужно именно через smtp и самостоятельно приложением ?
    Открытых релеев почти не осталось. А если найдете, то они в спам листах.

    Если нужно выслать файл, то самый простой способ сделать это через намерение
    "Поделиться" . Почта и все мессенджеры умеют обрабатывать
    https://developer.android.com/training/sharing/send
    Минус способа в том, что отпользователя будет требоваться сделать еще несколько кликов в других приложениях.

    Если очень хочется автоматом, то подымайте свой smtp и реализуйте отсылку. Но это оверхед.
    проще поднять на своем серваке апи
    Ответ написан
    Комментировать
  • Ошибка при передачи данных из активности в фрагмент DrawerLayout?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Сейчас есть отличный
    https://developer.android.com/guide/navigation/nav...

    А по старинке, когда мне нужно было ручками добавлять фрагмент с предустановленным аргументом, я сделал так

    fragment = TxtFragment.newInstanceWithUri(uri);
    fragmentManager.beginTransaction().replace(R.id.flContent, fragment).commit();

    Написал свой статический инстанс гет с параметром
    static public TxtFragment newInstanceWithUri(Parcelable param1) {
            TxtFragment fragment = new TxtFragment();
            fragment.parcelable = param1;
            return fragment;
        }
    Ответ написан
    Комментировать
  • В режиме дизайна для лайота не хватает памяти для отрисовки канвы. Где подкрутить аналогично манифесту?

    402d
    @402d Автор вопроса
    начинал с бейсика на УКНЦ в 1988
    <com.airbnb.lottie.LottieAnimationView
    ....
    app:lottie_renderMode="software"
    ....
    />

    после этого Chipmunk согласился рендерить активити с лотие анимацией во весь экран на макаир с м1
    Ответ написан
    Комментировать
  • Как получить разрешение на запись файлов в android?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    А зачем Вам доступ ко всей файловой системе ?
    По коду как я понимаю Вам нужно временный файл создать !
    Не пишу на GO . Поэтому поясню как там это работает.
    Есть абстрактный класс Context (активити и еще 50+ его реализуют). В нем метод getCacheDir()
    И есть java.io.File.createTempFile() где 3-м аргументом указываешь эту временную папку
    Ни какие читаемые пути и имена файлов тут не нужны. Работаешь с java.io.File и Stream
    Ответ написан
  • Приложение с возможностью считывания заготовленных qr кодов. Как это можно реализовать?

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

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

    Можно интегрировать в свое приложение sdk для распознования QR
    Ну и реализовать проигрывание музыкального файла, через фоновую службу.
    Ответ написан
  • Как исправить ошибку в Android Studio?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    По моему у Вас ошибка чуть раньше, которую Вы не замечаете.
    Между создаю новый проект и заходом в редактирование лайоута.
    Gradle отработал без ошибок ?
    Тут может ругаться на версию java. Заходишь в настройки и меняешь ее с 1_8 на нужной для градле
    Ответ написан
  • Нужно решить проблему, установила приложение андройд студио, при нажатии кнопки запуска (плей) выходит ошибка, как решить?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    поставить виртуальное устройство ( No devices v) - Device manager - Create
    или подключить usb кабелем телефон , предварительно включив Режим разработчика на нем
    Свойства системы - О устройстве - Версия (7 тапов)

    Если на телефоне Андроид 11 и выше - то можно по WiFi (беспроводная отладка)

    В сети все легко гуглиться
    Ответ написан
  • Flutter/Java NFC Card Emulation. Мне необходимо эмулировать карточку без информации в блоках, но с точным uid?

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

    Самое смешное клон rfid домофона (карты) 200 рублей с доставкой
    Ответ написан
  • Не запускается приложение почему?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    андроид 13 ? 12 ?
    манифест у приложения смотри.
    Основная точка входа
    <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
                    <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>

    вот это должно быть у одной ! активити и прописан android:exported="true"
    Ответ написан
    1 комментарий
  • Webview как получить ссылку pdf?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    shouldOverrideUrlLoading переопределить в наследнике WebViewClient
    Ответ написан
    Комментировать