twitter_auth_v2 1.0.3 copy "twitter_auth_v2: ^1.0.3" to clipboard
twitter_auth_v2: ^1.0.3 copied to clipboard

Package for twitter authentication.

twitter_auth_v2 #

pub package likes popularity pub points

Flutter package for twitter authentication. twitter_auth_v2

Twitter Configuration #

  • Create twitter app documentation
  • Add callback url
    app://example
    

Android Configuration #

Add intent as follows:

    <intent-filter>
      <action android:name="android.intent.action.VIEW" />
      <category android:name="android.intent.category.DEFAULT" />
      <category android:name="android.intent.category.BROWSABLE" />
      <!-- Accept redirect url like "app://example" -->
      <data android:scheme="app"
            android:host="example" />
    </intent-filter>

IOS Configuration #

Change Info.plist as follows

<key>CFBundleURLTypes</key>
<array>
  <dict>
    <key>CFBundleTypeRole</key>
    <string>Editor</string>
    <key>CFBundleURLName</key>
    <string></string>
    <key>CFBundleURLSchemes</key>
    <array>
      <string>app</string>
    </array>
  </dict>
</array>

Usage #

To use this plugin, add twitter_auth_v2 as a dependency in your pubspec.yaml file.

void _authentication() async {
    final TwitterAuthClient client = TwitterAuthClient(
        callbackUrlScheme: '[CALLBACK_SCHEME]',
        clientId: '[CLIENT_ID]',
        clientSecret: '[CLIENT_SECRET]',
        navigatorKey: navigatorKey,
        loader: const Center(
          child: CircularProgressIndicator(),
        ),
        redirectUri: '[REDIRECT_URI]');
    TwitterAuthResult? data = await client.login(scopes: TwitterScope.values);
    if (data == null) return;
    setState(() {
      _token = data.accessToken;
      _refreshToken = data.refreshToken;
      _expireIn = data.expiresIn.toString();
    });
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            Text(
              'Access Token: $_token',
            ),
            Text(
              'Refresh Token: $_refreshToken',
            ),
            Text(
              'Expire In: $_expireIn',
            ),
            ElevatedButton(
                onPressed: _authentication, child: const Text('Authentication'))
          ],
        ),
      ),
    );
  }

Licence #

MIT

Contributions of any kind are welcome!

2
likes
110
pub points
9%
popularity

Publisher

unverified uploader

Package for twitter authentication.

Homepage
Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (LICENSE)

Dependencies

crypto, flutter, http, webview_flutter

More

Packages that depend on twitter_auth_v2