Meet react-native-tweet
React Native Tweet is the most up to date Twitter Module using Twitter Kit 3
NOTE: THIS DOES NOT USE FABRIC!
Currently only ios, android coming soon
- Install
react-native
first
npm i react-native -g
yarn add react-native-tweet
mkdir Example
cd Example
yarn install #(or with npm)
npm start
or clone the repo and play with the example project
$ git clone https://github.com/garrettmac/react-native-tweet
# $ cd react-native-tweet/Example //not available yet
$ yarn install
$ react-native link react-native-tweet
$ npm start
- install the latest
https://dev.twitter.com/twitterkit/ios/installation
- Drag All four to your project
TwitterCore.framework TwitterKit.framework TwitterKitResources.bundle TwitterShareExtensionUIResources.bundle
(Also see this repos screen shots for more details on setting up)
- add this to your
.plist
in your ios/EXAMPLE.plist
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>twitterkit-<consumerKey></string>
</array>
</dict>
</array>
<key>LSApplicationQueriesSchemes</key>
<array>
<string>twitter</string>
<string>twitterauth</string>
</array>
- edit your AppDelegate
in your ios/AppDelegate.m
#import <TwitterKit/TwitterKit.h>
...
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
...
[[Twitter sharedInstance] startWithConsumerKey:@"XXXXXXXXX" consumerSecret:@"XXXXXXXXX"];
...
- In your
index.js
, use:
import RNTweet from "react-native-tweet"
........
Methods | Params | Description |
---|---|---|
login |
N/A | Login User |
logout |
N/A | Logout User |
compose |
{setText,setURL,setVideo,setImage} | Compose Tweet |
user |
N/A | Get User |
retweet |
tweet id |
Retweet |
api |
{endpoint,q} | Api User |
Usage
You only need to call it once and it can be added anywhere but it's better before your AppRegister
function.
RNTwitter.init({consumerSecret:"",consumerKey:""})
Usage
You only need to call it once and it can be added anywhere but it's better before your AppRegister
function.
RNTwitter.hideAlerts()
RNTwitter.login()
.then(user=>console.log(user))
.catch(console.warn)//optional
RNTwitter.compose({
setText:"YOUR TEXT"
setURL:"YOUR URL"
// setVideo:"YOUR VIDEO" //coming soon
setImage:"YOUR IMAGE"
})
.then(console.log)
.catch(console.warn)//optional
RNTwitter.logout()
.then(console.log)
.catch(console.warn)//optional
RNTwitter.user()
.then(console.log)
.catch(console.warn)//optional
RNTwitter.retweet(tweetId)
.then(console.log)
.catch(console.warn)//optional
RNTwitter.api({
endpoint: 'search/tweets.json',
q: encodeURI(`${q}`),
count
})
.then(tweets=>{
console.log(tweets)
})
.catch(console.warn)//optional