Мой NF C на IOS не работал, все настройки Xcode хорошие - PullRequest
0 голосов
/ 28 января 2020

Проблема с моим приложением NF C только на IOS. При нажатии кнопки она активирует NF C, например, enter image description here

Настройки NF C в info.plist и считывателе тегов NF C (все Настройки Xcode) в порядке. Приложение работает на Android, поэтому я думаю, что в коде нет проблем, но я не вижу изменения других настроек в XCode, но оно не может прочитать NF C. Но Apple Pay появляются иногда (например, 50% времени)

Есть мой код NF CIOS:

import React from 'react';
import {View, StyleSheet, TouchableOpacity} from 'react-native';
import NfcManager from 'react-native-nfc-manager';

import Typography from './Typography';
import theme from '../utils/theme';
import readTag from '../utils/read-tags';

export default class NfcIOs extends React.PureComponent {
  state = {
    show: true,
  };

  componentDidMount = async () => {
    try {
      await NfcManager.start();
      this.setState({show: true});
    } catch (error) {
    }
  };

  componentWillUnmount = () => {
    NfcManager.unregisterTagEvent();
    NfcManager.stop();
  };

  handleScanPress = () => {
    NfcManager.registerTagEvent(
        this.handleTagDetected,
        'Balayez la partie supérieure du lecteur',
        true,
    );
  };

  handleTagDetected = (tag) => {
    const {onNfcRead, navigation, onNfcInitialized} = this.props;
    try {
      if (onNfcRead) {
        onNfcRead();
      }
      readTag({tag, navigation});

      onNfcInitialized && onNfcInitialized();
    } catch (err) {
      onNfcInitialized && onNfcInitialized();
    }
  };

  render() {
    const {show} = this.state;

    return show ? (
        <View style={style.container}>
          <TouchableOpacity style={style.button} onPress={this.handleScanPress}>
            <Typography style={style.text}>Badgez avec votre iPhone</Typography>
          </TouchableOpacity>
        </View>
    ) : null;
  }
}
...