powered by simpleCommunicator - 2.0.40     © 2025 Programmizd 02
Форумы / Android [игнор отключен] [закрыт для гостей] / Файловая система на Андроиде - где почитать.
16 сообщений из 16, страница 1 из 1
Файловая система на Андроиде - где почитать.
    #38493066
M234
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Конкретно интересует локальная папка приложения куда можно файлы писать/читать.
...
Рейтинг: 0 / 0
Файловая система на Андроиде - где почитать.
    #38493075
Фотография Джибс
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
для своих файлов можно юзать assets папку
developer.android.com/reference/android/content/res/AssetManager.html

для других каких то, чтение/записи файлов - sd cart.
как получить путь гаглиться за 1 минуту.

только в манифесте не забывает прописать разрешение на чтение карт.
...
Рейтинг: 0 / 0
Файловая система на Андроиде - где почитать.
    #38493079
M234
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Джибсдля своих файлов можно юзать assets папку
developer.android.com/reference/android/content/res/AssetManager.html

для других каких то, чтение/записи файлов - sd cart.
как получить путь гаглиться за 1 минуту.

только в манифесте не забывает прописать разрешение на чтение карт.

Не не, не про Assets речь.
Есть аналог Виндового каталога ?

Код: c#
1.
2.
// Get the local folder.
    StorageFolder local = Windows.Storage.ApplicationData.Current.LocalFolder;
...
Рейтинг: 0 / 0
Файловая система на Андроиде - где почитать.
    #38493085
M234
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну и это ссылку на доку дайте всё ж если не жалко.
...
Рейтинг: 0 / 0
Файловая система на Андроиде - где почитать.
    #38493652
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Фокус, покус!

И первая же ссылка... Не лень ожидать ответы на форуме? :)

Код: java
1.
2.
3.
4.
PackageManager m = getPackageManager();
String s = getPackageName();
PackageInfo p = m.getPackageInfo(s, 0);
s = p.applicationInfo.dataDir;



Код: java
1.
2.
3.
4.
5.
6.
7.
8.
PackageManager m = getPackageManager();
String s = getPackageName();
try {
    PackageInfo p = m.getPackageInfo(s, 0);
    s = p.applicationInfo.dataDir;
} catch (NameNotFoundException e) {
    Log.w("yourtag", "Error Package name not found ", e);
}



Код: java
1.
String appPath = App.getApp().getApplicationContext().getFilesDir().getAbsolutePath();



Код: java
1.
2.
3.
4.
public String getDataDir(Context context) throws Exception 
{
    return context.getPackageManager().getPackageInfo(getPackageName(), 0).applicationInfo.dataDir;
}



Код: java
1.
2.
3.
4.
public String getAnyDataDir(Context context, String packageName) throws Exception 
{
    return context.getPackageManager().getPackageInfo(packageName, 0).applicationInfo.dataDir;
}



Код: java
1.
getApplicationInfo().dataDir
...
Рейтинг: 0 / 0
Файловая система на Андроиде - где почитать.
    #38494150
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и ни один не ткнул в букварь
...
Рейтинг: 0 / 0
Файловая система на Андроиде - где почитать.
    #38494858
Фотография Джибс
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
M234Ну и это ссылку на доку дайте всё ж если не жалко.

а зачем тебе ?
путь куда поставилась сама прога ?

да он бесполезен по сути, туда под рутом только можно залезть
...
Рейтинг: 0 / 0
Файловая система на Андроиде - где почитать.
    #38496318
M234
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wadman Фокус, покус!

И первая же ссылка... Не лень ожидать ответы на форуме? :)


Лень. Поэтому я сам уже всё нашёл и сделал.
Но всё равно спасибо.
...
Рейтинг: 0 / 0
Файловая система на Андроиде - где почитать.
    #38496319
M234
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ДжибсM234Ну и это ссылку на доку дайте всё ж если не жалко.

а зачем тебе ?
путь куда поставилась сама прога ?

да он бесполезен по сути, туда под рутом только можно залезть

Да не, мне путь к "files" нужен был что б туда файлы писать/читать.
Да и не Java мне нужна а C#. ;) Да да и не надо кидаться в меня чем попало ;)

Вот так работает.
Код: c#
1.
2.
string localPath = System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal);
var localFolder = new DirectoryInfo (localPath);
...
Рейтинг: 0 / 0
Файловая система на Андроиде - где почитать.
    #38496321
M234
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chpashaи ни один не ткнул в букварь

Да, спасибо, посмотрел конечно и это.
Но как выяснилось, они и System.IO неплохо к Андроиду прикрутили. Основное работает. Папки, файлы, потоки и даже с async/await.
Создал класс для работы с файловой системой в рамках локальной папки. Вроде работает.
...
Рейтинг: 0 / 0
Файловая система на Андроиде - где почитать.
    #38499647
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
M234Но как выяснилось, они и System.IO неплохо к Андроиду прикрутили. Основное работает. Папки, файлы, потоки и даже с async/await.Это Вы так тонко Xamarin тут рекламируете?
...
Рейтинг: 0 / 0
Файловая система на Андроиде - где почитать.
    #38502871
M234
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAM234Но как выяснилось, они и System.IO неплохо к Андроиду прикрутили. Основное работает. Папки, файлы, потоки и даже с async/await.Это Вы так тонко Xamarin тут рекламируете?

Ага ;)
Сейчас вот MvvmCross рекламировать начну:

А не знает ли кто как бы так изловчиться что б Event из одной ViewModel в другую ViewModel послать?
...
Рейтинг: 0 / 0
Файловая система на Андроиде - где почитать.
    #38502938
M234
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
M234skyANAпропущено...
Это Вы так тонко Xamarin тут рекламируете?

Ага ;)
Сейчас вот MvvmCross рекламировать начну:

А не знает ли кто как бы так изловчиться что б Event из одной ViewModel в другую ViewModel послать?

А, ну разобрался я.
Сделал как тут написано и всё заработало.
http://social.msdn.microsoft.com/Forums/vstudio/en-US/fed8ac80-5f77-4f3c-8cfe-909af8e31c32/mvvm-how-to-pass-data-between-viewmodels

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
delegate void OnNewData(MyClass Data);
public static event OnNewData NotifyDataReady;

if(NotifyDataReady!=null){

   NotifyDataReady(MyData);
}


//all the other classes register
MainClass.OnNewData += Listner;

public void Listener(Myclass Data){
  MyLocalCopy = Data;
}
...
Рейтинг: 0 / 0
Файловая система на Андроиде - где почитать.
    #38518685
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
M234Конкретно интересует локальная папка приложения куда можно файлы писать/читать.

В книге "Google Android создание приложений для смарфонов и планшетных ПК 2013" (OZON.RU) довольно хорошо и понятно описано, даны все константы.
Книга совсем копейки, если можно так сказать.
...
Рейтинг: 0 / 0
Файловая система на Андроиде - где почитать.
    #38518687
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
забыл дописать, автор Андрей Голощапов
ISBN 978-5-9775-0880-3
http://www.ozon.ru/context/detail/id/19139644/
всего лишь 400 рублей
...
Рейтинг: 0 / 0
Файловая система на Андроиде - где почитать.
    #38518691
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Стандартные директории Android
В библиотеке Android в пакете android.os есть класс Environment. С его помощью мож-
но работать с директориями файловой системы Android.
Все методы для работы с директориями из класса Environment возвращают тип File.
Класс File определен в пакете java.io.File. В языке Java этот тип определяет не только
файл, но и директорию. Если требуется узнать, является ли возвращаемый объект фай-
лом или директорией, используются методы isFile() или isDirectory() класса File.
Класс Environment предоставляет набор методов для чтения стандартных директорий
файловой системы Android:
getDataDirectory() — возвращает директорию для хранения данных;
getDownloadCacheDirectory() — возвращает директорию для хранения загружаемых
внешних файлов и кэша;
getRootDirectory() — возвращает корневую директорию файловой системы Android;
getExternalStorageDirectory() — возвращает корневую директорию внешней карты
памяти мобильного устройства.
Можно сохранять все файлы в корневой директории карты памяти, однако хорошим
тоном является создание подкаталогов для хранения файлов определенного типа —
музыки, видео, фотографий и т. д. Эти директории лучше называть стандартными име-
нами, определенными в качестве строковых констант в классе Environment, чтобы
с ними могли работать приложения, созданные разными разработчиками программного
обеспечения.
Метод getExternalStoragePublicDirectory() определяет путь к стандартным директори-
ям на карте памяти для размещения файлов конкретного типа (медиа, графика и др.).
В качестве параметра этому методу передается одна из строковых констант из класса
Environment, определяющих конкретную стандартную директорию:
DIRECTORY_ALARMS — директория для файлов звуковых оповещений;
DIRECTORY_DCIM — директория для видео и фотографий, записанных со встроенной
камеры;
DIRECTORY_DOWNLOADS — директория для файлов, загружаемых пользователем теле-
фона;
DIRECTORY_MOVIES — директория для размещения видеофайлов;
DIRECTORY_MUSIC — директория для размещения музыки;
308 Часть III. Ресурсы, графика и обработка данных
DIRECTORY_NOTIFICATIONS — директория для звуковых файлов, которые используются
в уведомлениях (например, входящий SMS, низкий уровень заряда батареи телефона
и др.);
DIRECTORY_PICTURES — директория для размещения графических файлов;
DIRECTORY_PODCASTS — директория для размещения подкастов, т. е. регулярно обнов-
ляемого с помощью RSS списка файлов;
DIRECTORY_RINGTONES — директория для звуковых файлов, используемых при получе-
нии входящего звонка.
Для изучения файловой системы и директорий создадим приложение, которое выведет
нам информацию о файловой системе мобильного устройства. Для этого создайте в IDE
Eclipse новый проект Android и заполните соответствующие поля в диалоговом окне
New Android Project:
Project name — Android Environment;
Application name — Android Environment;
Package name — com.samples.os.environment;
Create Activity — EnvironmentActivity.
ПРИМЕЧАНИЕ
Полный код приложения находится в каталоге Ch16_AndroidEnvironment.
Код файла разметки очень простой и содержит элемент TextView для вывода результа-
тов работы программы.
В классе EnvironmentActivity главного окна приложения мы используем вызовы мето-
дов класса Environment для отображения директорий и путей к ним. Код класса
EnvironmentActivity представлен в листинге 16.1.

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
package com.samples.os.environment;
import android.app.Activity;
import android.os.Bundle;
import android.os.Environment;
import android.widget.TextView;
public class EnvironmentActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TextView text = (TextView)findViewById(R.id.text);
text.append(
"Root:\t" + Environment.getRootDirectory() +
"\nDownload Cache Dir:\t" +
Environment.getDownloadCacheDirectory() +
Глава 16. Файловая система и карта памяти 309
"\nExternal Storage State:\t" +
Environment.getExternalStorageState() +
"\nData Directory:\t" + Environment.getDataDirectory() +
"\nisExternal Storage Removable:\t" +
Environment.isExternalStorageRemovable() +
"\nExternal Storage Dir:\t" +
Environment.getExternalStorageDirectory() +
"\n\nExternal Storage Public Directory:\t" +
"\n\tAlarms:\t" + Environment.getExternalStoragePublicDirectory(
Environment.DIRECTORY_ALARMS) +
"\n\tDCIM:\t" + Environment.getExternalStoragePublicDirectory(
Environment.DIRECTORY_DCIM) +
"\n\tDownloads:\t" + Environment.getExternalStoragePublicDirectory(
Environment.DIRECTORY_DOWNLOADS) +
"\n\tMovies:\t" + Environment.getExternalStoragePublicDirectory(
Environment.DIRECTORY_MOVIES) +
"\n\tMusic:\t" + Environment.getExternalStoragePublicDirectory(
Environment.DIRECTORY_MUSIC) +
"\n\tNotification:\t" +
Environment.getExternalStoragePublicDirectory(
Environment.DIRECTORY_NOTIFICATIONS) +
"\n\tPictures:\t" + Environment.getExternalStoragePublicDirectory(
Environment.DIRECTORY_PICTURES) +
"\n\tPodcasts:\t" + Environment.getExternalStoragePublicDirectory(
Environment.DIRECTORY_PODCASTS) +
"\n\tRingtones:\t" + Environment.getExternalStoragePublicDirectory(
Environment.DIRECTORY_RINGTONES));
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / Android [игнор отключен] [закрыт для гостей] / Файловая система на Андроиде - где почитать.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]