Если вы используете response-native> = 60.0, тогда нет необходимости использовать react-native link react-native-imei
. Он будет автоматически связан.
Поскольку этот пакет считывает состояние телефона, вы должны добавить <uses-permission android:name="android.permission.READ_PHONE_STATE" />
в android/app/src/main/AndroidManifest.xml
этот файл.
На устройствах до SDK версии 23, разрешения автоматически предоставляется, если они появляются в манифесте. В противном случае вы должны следовать этой процедуре.
import { PermissionsAndroid } from 'react-native';
try {
const granted = await PermissionsAndroid.request(
PermissionsAndroid.PERMISSIONS.READ_PHONE_STATE,
{
title: "Phone State's Permission",
message: "This app needs access to your phone's state",
buttonNeutral: "Ask Me Later",
buttonNegative: "Cancel",
buttonPositive: "OK"
}
);
if (granted === PermissionsAndroid.RESULTS.GRANTED) {
console.log("You can read phone's state");
IMEI.getImei().then(imeiList => {
console.log("imeiList"); // prints ["AABBBBBBCCCCCCD"]
console.log(imeiList); // prints ["AABBBBBBCCCCCCD"]
});
} else {
console.log("Permission denied");
}
} catch (err) {
console.warn(err);
}
Надеюсь, это поможет вам.