David
Jetpack Compose передает привет
Mike
Jetpack Compose передает привет
ммм, это тот, где текст на кнопке выделяется?)
Igor
Подскажите пожалуйста (в идеале – скрином) как предоставить права на аккаунт в https://play.google.com/apps/publish на ответы на отзывы? Вроде как все нужные галки проставили, но ответы все еще только для чтения
Andrew
Коллеги, я правильно понимаю, что если Environment.isExternalStorageEmulated == true для getExternalFilesDir, то два приложения не смогут работать с одним файлом в данной директории?
Dmitry
Коллеги, я правильно понимаю, что если Environment.isExternalStorageEmulated == true для getExternalFilesDir, то два приложения не смогут работать с одним файлом в данной директории?
странно, а почему такой вывод? эмуляция экстернал стораджа - повсеместная практика. это не должно влиять на доступ кмк.
Andrew
Что это означает? If a shared storage device is emulated (as determined by Environment#isExternalStorageEmulated(File)), it's contents are backed by a private user data partition, which means there is little benefit to storing data here instead of the private directories returned by getFilesDir(), etc.
Andrew
https://developer.android.com/reference/android/content/Context#getExternalFilesDir(java.lang.String)
Andrew
У меня два приложения, одно сохраняет данные в файл, второе вычитывает. И вот второе приложение не видит файл, я предположил что из-за того, что Environment.isExternalStorageEmulated == true. Это так или нет?
Dmitry
а, понял. ну да, это приватное хранилище и есть
Dmitry
а то, что "little benefit" - значит, что физически файлы будут лежать там же, как если бы ты брал getFilesDir
Anonymous
Ребята, можете мне помочь. У меня есть к примеру активити и там я ввожу данные: к примеру длину, ширину высоту, и в результате, мне нужно, чтобы в другом активити или в фрагменте (это не важно где) создалась 3D модель куба. Подскажите, как и снова же как мне создать ту самую 3D модель, которая могла бы изменяться от ввода данных (длины, высоты, ширины). Какую библиотеку посоветуете, желательно обойтись без unity. Просто мне нужен совет, в "какую сторону плыть".
Dmitry
У меня два приложения, одно сохраняет данные в файл, второе вычитывает. И вот второе приложение не видит файл, я предположил что из-за того, что Environment.isExternalStorageEmulated == true. Это так или нет?
нет. эмуляция - значит экстернал хранилище - это просто раздел во внутреннем хранилище, а не отдельная физическая карта памяти
Dmitry
в любом случае - эти файлы приватны для приложения
Andrew
а, понял. ну да, это приватное хранилище и есть
А как мне поддержать работу с одним файлом для двух приложений тогда?! Environment.getExternalStorageDirectory() уже deprecated
Dmitry
самый правильный путь - контент провайдер
Dmitry
https://developer.android.com/training/secure-file-sharing
Dmitry
это подойдёт, если ты сам пишешь оба приложения
Dmitry
хотя shared user id уже задепрекейтили в апи 29 https://developer.android.com/guide/topics/manifest/manifest-element#uid
Dmitry
так что только контент/файл провайдер
Andrew
самый правильный путь - контент провайдер
Согласен, но это частный случай. Ну и встает вопрос, как уберечь данные при удалении приложения?!
Andrew
Раньше можно было положить в Environment.getExternalStorageDirectory()
Andrew
А сейчас?
Dmitry
и раньше нельзя было. ты путаешь приватное хранилище и публичное
Dmitry
https://developer.android.com/training/data-storage
Dmitry
можно положить файлы в паблик директории. они останутся после удаления.
Dmitry
но их смогу читать ВСЕ аппы, не только два твоих
Dmitry
контент провайдер - ты сам решаешь кто читает файлы. файлы пропадут после удаления. паблик сторадж - все могут читать твои файлы. они останутся после удаления.
Dmitry
экстернал != паблик
Almaz
Блин, какого то черта сохранение и восстановление состояния после убийства процесса через adb shell срабатывает один раз из трех в среднем(( Банально в savedInstanceState null приходит. Бекстек соответственно восстанавливается так же.
в настройках разработчика есть пункт "лимит фоновых процессов - без фоновых процессов". Если включить то при сворачивании/выключении подсветки процесс приложения будет убиваться. Восстановление бекстека через нее надо тестить
Dmitry
рисовать 3Д будет именно он?
Roman
странно, что не упомянут OpenGl
Я с 3д на голом андроид сдк не работал, честно говоря
Anonymous
Могу ошибаться, но SurfaceView как раз для работы с 3D графикой. Передаешь аргументы при создании следующей активити через Bundle, а на той уже рисуешь куб
Мне не нужно его рисовать, мне нужно, чтобы я ввёл параметры, и куб сам бы отрисовывался, в виде 3D модели
Dmitry
OpenGL + GLSurfaceView
Andrew
экстернал != паблик
Насколько я понимаю, разница как раз в Environment.isExternalStorageEmulated
Roman
Мне не нужно его рисовать, мне нужно, чтобы я ввёл параметры, и куб сам бы отрисовывался, в виде 3D модели
Сомневаюсь, что это так будет с голым сдк. На Unity можно - берешь из стандартных ассетов модель куба готовую и размер ей задаешь переданными параметрами, это да
Dmitry
Насколько я понимаю, разница как раз в Environment.isExternalStorageEmulated
нет. ещё раз - эмуляция экстернал стораджа означает, что в устройстве нет отдельной карточки памяти (помнишь, раньше microSD карту всатвляли)? эмуляция значит, что эта карта памяти эмулирована в виде отдельного раздела на том же самом internal storage. то есть при эмулированном экстернале - не важно где хранить файлы в том смысле, что память будет забиваться на однои м том же диске.
Dmitry
публичность и непубличность файлов зависит только от того в какой директории ты их хранишь, а не в каком разделе (экстернал или интернал)
Kirill
Привет, подскажите. Хочу в Google Play Console добавить закрытое тестирование со скачиванием по ссылке только для конкретных людей. Но чтобы создать это тестирование мне нужно заполнить "Базовые настройки" (тут же реклама, цена, возрастные ограничения и т.д)?
Kirill
Andrew
Как это понимать?
Андрей
В смысле у меня есть наработки
Roman
Ага
О как, прикольно
Андрей
И меши отрисовывал
Dmitry
от эмуляции это не зависит
Roman
В смысле у меня есть наработки
Аа, в этом плане. Я-то думал, из коробки будут)
Andrew
а где про эмуляцию то?
Yes, if files are in a directory within external storage. И If a shared storage device is emulated (as determined by Environment#isExternalStorageEmulated(File)), it's contents are backed by a private user data partition, which means there is little benefit to storing data here instead of the private directories returned by getFilesDir(), etc.
Andrew
Я думаю это одного поля ягоды
Dmitry
прочитай вот тут https://developer.android.com/reference/android/content/Context#getExternalFilesDir(java.lang.String)
Andrew
Я от туда и копирую инфу
Andrew
If a shared storage device is emulated (as determined by Environment#isExternalStorageEmulated(File)), it's contents are backed by a private user data partition, which means there is little benefit to storing data here instead of the private directories returned by getFilesDir(), etc.
Dmitry
к публичности это не имеет отношения
Andrew
Это говорит о том, что getExternalFilesDir() будет работать по разному в зависимости от Environment#isExternalStorageEmulated. Если false то доступ к одному файлу будут иметь разные приложения.
Andrew
Т.е. external dir станет паблик
Andrew
@upovalov ok, спасибо за инфу
Dmitry
в самом начале пишут: Returns the absolute path to the directory on the primary shared/external storage device where the application can place persistent files it owns. These files are internal to the applications, and not typically visible to the user as media. независимо от эмуляции
Solt
ребят, извеняюсь за возможно глупый вопрос, только изучаю mpv, смотрел проекты на гитХабе, но тоже что то не понял, подскажите пожалуйста в какую сторону смотреть. мне надо передать значение из MainRepository (где есть ретрофит, то есть мне надо получить ответ ретрофита по сути), и передат это в MainPresenter, и уже соответвеено оттуда в MainActitiviti (то есть во View). пытался как то сделать новый интерфейс, но чет не то
Solt
Solt
Solt
Dmitry
@upovalov ok, спасибо за инфу
также на пример обрати внимание: createExternalStoragePrivateFile. хоть одно упоминание того, что там могут быть публичные файлы есть?
Dmitry
для публичных - публичные директории: https://developer.android.com/reference/android/os/Environment#getExternalStoragePublicDirectory(java.lang.String)
Astar
Можно как то убрать значки из NavigationBottomView и оставить только текст?
Данил
Нет, пока не нашел решение проблемы, перелопатил все что только попадалось