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

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

Войти
Регистрация
Восстановить пароль
 
Норанд
4 / 4 / 0
Регистрация: 10.01.2015
Сообщений: 10
Завершенные тесты: 1
#1

Реализация ассоциации приложенияс текстовым файлом .txt - Программирование Android

07.02.2016, 22:27. Просмотров 256. Ответов 0

Добрый день. Есть у меня такая задача: необходимо реализовать ассоциацию приложения текстовым файлом .txt. Когда пользователь при просмотре файлов на Android устройстве нажимает на текстовый файл, выпадает окно в выбором приложений для его открытия и наше приложение должно быть среди них. В приложение передается интент с данными, которые затем считываются в переменную и выводятся на экран.
Я пытался реализовать это с помощью интент-фильтров и обработки входящих интентов, но видимо я где-то что-то упустил или недопонял - наше приложение в списке приложений на выбор не возникает.

Моя реализация:

Файл манифеста
XML
1
2
3
4
5
6
7
8
9
10
11
12
 <activity android:name=".Activity.MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
 
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.SEND" />
                <category android:name="android.intent.category.DEFAULT" />
                <data android:mimeType="text/plain" />
            </intent-filter>
 </activity>
Альтернативный фильтр (безрезультатно):
XML
1
2
3
4
5
   <intent-filter>
                <action android:name="android.intent.action.PICK" />
                <category android:name="android.intent.category.DEFAULT" />
                <data android:mimeType="text/plain" />
            </intent-filter>

Код в обработчике MainActivity

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
    @Override
    protected void onCreate(Bundle savedInstanceState)
    { 
          
       super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        mTextFileView = (TextView)findViewById(R.id.textFileView);
 
 
        Intent intent = getIntent();
        String action = intent.getAction();
        String type = intent.getType();
 
        if (Intent.ACTION_SEND.equals(action) && type != null) {
            if ("text/plain".equals(type)) {
                 handleSendText(intent); // Handle text being sent
            }
        }
    }
    void handleSendText(Intent intent) {
        String sharedText = intent.getStringExtra(Intent.EXTRA_TEXT);
        if (sharedText != null) {
            // Update UI to reflect text being shared
            mTextFileView.setText(sharedText);
        }
    }
Помогите, пожалуйста, как решить эту задачу. Или где об этом можно прочесть.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.02.2016, 22:27     Реализация ассоциации приложенияс текстовым файлом .txt
Посмотрите здесь:
Android Работа с файлом
Сделать ввод текстовым файлом Input.txt, а вывод output.txt Pascal ABC
Visual Basic Можно ли программно поработать с файлом PageMaker'a, как с текстовым файлом?
C++ Qt GUI Работа с текстовым файлом, лог файлом не мешая системе
Работа с текстовым файлом VBS
Работа с текстовым файлом C++
C# .NET 3.x Операции с текстовым файлом
Работа с текстовым файлом C++ Builder
C++ Работа с текстовым файлом
Delphi Работа с текстовым файлом
C++ Builder Работа с текстовым файлом
C# работа с текстовым файлом?

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

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

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