Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
484 / 397 / 68
Регистрация: 14.02.2014
Сообщений: 1,930

Не срабатывает событие onNewIntent на чтение метки NFC

12.01.2017, 10:04. Показов 1181. Ответов 1

Студворк — интернет-сервис помощи студентам
Доброго времени суток.
Пытаюсь по мунуалам читать NFC метку. Запускаюсь на устройстве на 6 андройде. NFC адаптер включен.
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
private NfcAdapter adapter;
private Tag myTag;
 
@Override
protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        if (!ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.NFC))
            ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.NFC}, 1);
        if (!ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.BIND_NFC_SERVICE))
            ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.BIND_NFC_SERVICE}, 1);   
        client = new GoogleApiClient.Builder(this).addApi(AppIndex.API).build();
        adapter = NfcAdapter.getDefaultAdapter(this);
        if (adapter == null) {
            log.setText("Bad adapter");
            finish();
        }
        readFromIntent(getIntent());
        IntentFilter tagDetected = new IntentFilter(NfcAdapter.ACTION_TAG_DISCOVERED);
        tagDetected.addCategory(Intent.CATEGORY_DEFAULT);
    }
 
 @Override
    protected void onNewIntent(Intent intent) {
        setIntent(intent);
        readFromIntent(intent);
        if(NfcAdapter.ACTION_TAG_DISCOVERED.equals(intent.getAction())){
            myTag = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);
        }
    }
 
    private void readFromIntent(Intent intent) {
        String action = intent.getAction();
        if (NfcAdapter.ACTION_TAG_DISCOVERED.equals(action)
                || NfcAdapter.ACTION_TECH_DISCOVERED.equals(action)
                || NfcAdapter.ACTION_NDEF_DISCOVERED.equals(action)) {
            Parcelable[] rawMsgs = intent.getParcelableArrayExtra(NfcAdapter.EXTRA_NDEF_MESSAGES);
           /* полезные действия */
        }
    }
Файл манифеста:
XML
1
2
3
4
5
6
7
8
9
10
11
<uses-permission android:name="android.permission.NFC" />
<uses-feature android:name="android.hardware.nfc" android:required="true" />
 
<intent-filter>
        <action android:name="android.nfc.action.NDEF_DISCOVERED" />
        <category android:name="android.intent.category.DEFAULT" />
        <data android:mimeType="text/plain" />
</intent-filter>
<meta-data
        android:name="android.nfc.action.TECH_DISCOVERED"
        android:resource="@xml/nfc_tech_filter" />
При контакте с NFC устройством ничего не происходит, даже не срабатывает точка останова в onNewIntent.

Такое ощущение, что что-то я пропустил, но не могу найти различия между моим кодом и кодом в статьях "на тему".

Добавлено через 17 часов 29 минут
Рискну поднять тему, ибо очень надо, а ответа не нашёл.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
12.01.2017, 10:04
Ответы с готовыми решениями:

Телефон в качестве NFC метки
Можно ли сделать телефон Nfc меткой? И если можно, то как это реализовать?

Как узнать, что приложение было запущено при помощи NFC метки?
Добрый день, у меня такой вопрос. Как узнать что приложение было запущено при помощи NFC метки?

Не срабатывает событие
почему не срабатывает событие?

1
0 / 0 / 0
Регистрация: 25.07.2018
Сообщений: 11
02.02.2022, 23:35
Привет! Тебе нужно считать именно ID метки?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
02.02.2022, 23:35
Помогаю со студенческими работами здесь

Не срабатывает событие
Приложил прогу GameForm.cs / метод SockerListener_MessegeRecievedEvent : byte check = this.game.WinCheck(); ...

Не срабатывает событие
Доброго времени суток, имется такой код &lt;DockPanel MouseLeftButtonDown=&quot;StacPanel_MouseLeftButtonDown&quot;&gt; ...

Не срабатывает событие
Доброго времени суток уважаемые! Вводная информация: MySQL v.5.1.70 (поддержка событий заявления с v.5.1) Работаю в программе:...

Не срабатывает событие
Спрошу уж в этой теме, так как вопрос похожий. Теперь я хочу обработать событие нажатия клавишей мыши по шапке ListView, например, по...

Не срабатывает событие
Здравствуйте! Помогите разобраться. Создал с помощью конструктора форму с вкладками. И к вкладке создал событие &quot;Click&quot;. Но...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru