Вот мой полный код реакции-native-twitter-signin, который работает на iOS и android обоих: верхняя часть класса, который я назвал ниже код:
const { RNTwitterSignIn } = NativeModules
const Constants = {
//Dev Parse keys
TWITTER_COMSUMER_KEY: "************************",
TWITTER_CONSUMER_SECRET: "********************************************************"
}
Это мой кнопка просмотра файла:
<TouchableOpacity onPress={() => this.twitterSignIn()}>
<Image style={styles.socialBtn} source={require('../images/twitter.png')}/>
</TouchableOpacity>
Я вызываю функцию twitterSignIn здесь:
twitterSignIn = () => {
const fcmSocialToken = this.state.tokenFcm;
RNTwitterSignIn.init(Constants.TWITTER_COMSUMER_KEY, Constants.TWITTER_CONSUMER_SECRET)
RNTwitterSignIn.logIn()
.then(loginData => {
const { authToken, authTokenSecret } = loginData
if (authToken && authTokenSecret) {
// You can use this data here and move next
}
})
.catch(error => {
console.log(error)
}
)
}
Для iOS вам необходимо обновить info.plist:
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>twitterkit-YCZNs*********</string>
<string>fb**********</string>
</array>
</dict>
<dict>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>CFBundleURLSchemes</key>
<array>
<string>com.googleusercontent.apps.************</string>
</array>
</dict>
</array>
Пожалуйста, дайте мне знать, если возникнет проблема.