Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Анд_Рей
4 / 4 / 0
Регистрация: 27.12.2009
Сообщений: 157
#1

Подключена флешка или нет - Программирование Android

08.12.2014, 04:38. Просмотров 435. Ответов 4
Метки нет (Все метки)

Используя файловую систему или API как можно узнать подключена ли флешка к телефону или нет.. .
Заранее спасибо!

пробывал такие способы(не работают)
1)
Java
1
2
3
4
5
6
if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){
            textView.setText("yes");
        }
        else if (!Environment.getExternalStorageState().equals(Environment.MEDIA_CHECKING)){
            textView.setText("not");
        }
2)
Java
1
2
3
4
5
File file = new File("/storage/usb0/");
if(file.exists())
{
 
}
Добавлено через 6 минут
Так же пробывал
3)
Java
1
2
3
4
5
File file = new File("/storage/UsbDriveA/");
if(file.exists())
{
 
}
тоже не сработало
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.12.2014, 04:38     Подключена флешка или нет
Посмотрите здесь:

В сети или нет - Программирование Android
Нужно, чтобы при условии, что пользователь находится в сети приложение периодически выполняло определенные действия. В каком направлении...

Существует файл или нет - Программирование Android
При подключении флешки появляется новая директория storage/UsbDriveA проверяя существование этой директории я пытаюсь узнать подключена...

Отправляем уведомление с подтверждением да или нет - Программирование Android
Привет! Есть кнопка на сайте при нажатии нужно выслать на мое приложение оповещение да или нет при нажатии на выбор отправлять на...

Notification. Узнать, висит ли уведомление или нет - Программирование Android
При щелчке по уведомлению оно исчезает (хотел бы, чтобы не исчезало, но уже устал бороться). Можно ли как-то определить, висит ли...

Как проверить включен bluetooth или нет? - Программирование Android
Как проверить включен bluetooth или нет? Если да то одно действие а если нет то другое.

Узнать используется (записывается) файл или нет - Программирование Android
В приложении 1н broadcast receiver записывает файл, 2й broadcast receiver загружает на сервер, ресиверы друг с другом не общаются. Но...

Нужно сохранить пользователя(он зашел или нет) - Программирование Android
дело в том что есть авторизация, человек логиниться в одном активити, если успешно то идет на другое, а когда нажимаешь назад, то снова...

Как вернуть результат в активити включил юзер gps или нет? - Программирование Android
Как вернуть результат в активити включил юзер gps или нет?

Как проверить пустое SharedPreferences или нет при загрузке активити? - Программирование Android
У меня вот такая задача при первой загрузке приложения ничего. В строку ввода я ввожу разные фразы и сохраняю в preferences. При следующей...

Как узнать, что флешка подключена? - CMD/BAT
Подскажите пожалуйста, можно ли такое реализовать, и если да то как. Запушен бат файл и как только подключается флешка определяется ее...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
CoolMind
418 / 401 / 65
Регистрация: 06.10.2012
Сообщений: 1,727
08.12.2014, 16:59     Подключена флешка или нет #2
Анд_Рей, как же раздражают эти словечки из албанского под названием "пробывал". Просто ужас!
Встречный вопрос: а что не сработало? Какие сообщения? Была ли действительно подключена внешняя карта памяти? Насколько я знаю, современные устройства часть своей внутренней памяти используют как внешнюю и без подключения micro-SD, как раз собираюсь подробнее изучить сегодня. Ещё зависит от версии Андроида.

Добавлено через 5 часов 2 минуты
Вот сравнительно подробная презентация по внешним хранилищам: http://www.eecis.udel.edu/~bohacek/M...rectories.pptx. Хоть немного становится ясно в этом бардаке Гугловской спецификации.

Добавлено через 2 часа 22 минуты
Нашёл ещё один зачётный сайтик: http://101apps.co.za/articles/using-...ing-files.html
dmitre
10 / 10 / 3
Регистрация: 02.11.2013
Сообщений: 53
08.12.2014, 21:23     Подключена флешка или нет #3
...
Анд_Рей
4 / 4 / 0
Регистрация: 27.12.2009
Сообщений: 157
09.12.2014, 03:47  [ТС]     Подключена флешка или нет #4
Пытаюсь поймать событие (ну или хотя-бы проверить) подключение флешки через microusb кабель.

Вот так выглядит мой манифест
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?xml version="1.0" encoding="utf-8"?>
<manifest
    xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.test"
    android:versionCode="1"
    android:versionName="1.0" >
 
    <uses-sdk android:minSdkVersion="14" android:targetSdkVersion="19" />
    
    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme">
        <activity
            android:name=".MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
</manifest>
Вот так выглядит мой BroadcastReceiver:

Java
1
2
3
4
5
6
7
8
public class DetactUSB extends BroadcastReceiver
{
    @Override
    public void onReceive(Context context, Intent intent)
    {
        Toast.makeText(context, intent.getAction(), Toast.LENGTH_LONG).show();
    }
}
Вот такими способами я пытаюсь его запустить в главном активити:
1)
Java
1
2
3
4
5
6
7
8
9
10
protected void onCreate(Bundle savedInstanceState)
{
     super.onCreate(savedInstanceState);
     setContentView(R.layout.activity_main);
 
     IntentFilter filter = new IntentFilter();
     filter.addAction("android.intent.action.UMS_CONNECTED");
     filter.addAction("android.intent.action.UMS_DISCONNECTED");
     registerReceiver(new DetactUSB(), filter);
 }
2)
Java
1
2
3
4
5
6
7
8
9
10
protected void onCreate(Bundle savedInstanceState)
{
     super.onCreate(savedInstanceState);
     setContentView(R.layout.activity_main);
 
     IntentFilter filter = new IntentFilter();
     filter.addAction("android.intent.action.ACTION_UMS_CONNECTED");
     filter.addAction("android.intent.action.ACTION_UMS_DISCONNECTED");
     registerReceiver(new DetactUSB(), filter);
 }
Ни в обдном из этих двух способов не выводится ни одно сообщение - ни при подключении флешки,ни при ее отключении
Подскажите,пожалуйста,что тут не так?
Спасибо!

Добавлено через 16 минут
Так-же,при подключении флешки у меня появляется папка /storage/UsbDriveA, при отключении она исчезает.
Вот так я пытался проверить:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
private void CheckPath()
{
    TextView tv = (TextView) findViewById(R.id.textView1);
    File file = new File("/storage/UsbDriveA");
    if(file.exists() && file.isDirectory())
    {
         tv.setText("Connected");
    }
    else
    {
         tv.setText("Not connected");
    }
}
Всегда Connected! - Тоже не годится
CoolMind
418 / 401 / 65
Регистрация: 06.10.2012
Сообщений: 1,727
09.12.2014, 09:45     Подключена флешка или нет #5
Анд_Рей, ещё не прочитал весь текст, но сразу вижу, что в манифесте не хватает права на запись на карту памяти.

Добавлено через 6 минут
(Предыдущее сообщение некорректно)
Анд_Рей, я не разбираюсь в этой теме, но, возможно, вам не хватает некоторых разрешений: http://stackoverflow.com/questions/1...-does-not-work.
Также увидел другой метод для проверки подключения: http://stackoverflow.com/questions/5...lugged-in?lq=1.
Yandex
Объявления
09.12.2014, 09:45     Подключена флешка или нет
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru