Get started with Twitter Kit in 5 steps.
Manage your entire toolset without ever having to leave your favorite coding environment. We will deobfuscate code by uploading mapping files, provision an account for you, and walk you through your first example. See it in action.
- Java
- Add Twitter to your project
- Configure Layout
- Configure Code
- Configure Proguard
- Launch your app!
-
-
1 of 5
Add Twitter to your project
-
2 of 5
Configure Layout
-
3 of 5
Configure Code
-
4 of 5
Configure Proguard
-
5 of 5
Launch your app!
-
Fabric will will make the following changes
build.gradle (4 additions)
buildscript { repositories { maven { url 'https://maven.fabric.io/public' } } dependencies { classpath 'io.fabric.tools:gradle:1.+' } }apply plugin: 'com.android.application'apply plugin: 'io.fabric' repositories { maven { url 'https://maven.fabric.io/public' } }android { compileSdkVersion 22 buildToolsVersion "22.0.1" defaultConfig { applicationId "fabric.twitter.com.twitterkit" minSdkVersion 15 targetSdkVersion 22 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:22.2.0'compile('com.twitter.sdk.android:twitter:1.6.0@aar') { transitive = true; }}AndroidManifest.xml (2 additions)
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="fabric.twitter.com.twitterkit" > <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name=".MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity>
<meta-data android:name="io.fabric.ApiKey" android:value="${fabricApiKey}" /> </application><uses-permission android:name="android.permission.INTERNET" /></manifest>MainActivity.java (3 additions)
package fabric.twitter.com.twitterkit; import android.support.v7.app.ActionBarActivity; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem;
import com.twitter.sdk.android.Twitter; import com.twitter.sdk.android.core.TwitterAuthConfig; import io.fabric.sdk.android.Fabric;public class MainActivity extends ActionBarActivity {// Note: Your consumer key and secret should be obfuscated in your source code before shipping. private static final String TWITTER_KEY = "fakeTwitterKey"; private static final String TWITTER_SECRET = "fakeTwitterSecret";@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);TwitterAuthConfig authConfig = new TwitterAuthConfig(TWITTER_KEY, TWITTER_SECRET); Fabric.with(this, new Twitter(authConfig));setContentView(R.layout.activity_main); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.menu_main, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); //noinspection SimplifiableIfStatement if (id == R.id.action_settings) { return true; } return super.onOptionsItemSelected(item); } } -
Add the highlighted code to the Activity or Fragment where you want to use this feature
View XML (Login with Twitter) (1 additions)
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".SampleActivity">
<com.twitter.sdk.android.core.identity.TwitterLoginButton android:id="@+id/twitter_login_button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true"/></RelativeLayout>View XML (Embed Tweets) (1 additions)
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".SampleActivity">
<com.twitter.sdk.android.tweetui.TweetView xmlns:twittersdk="http://schemas.android.com/apk/res-auto" android:id="@+id/photo_default_tweet" android:layout_width="match_parent" android:layout_height="wrap_content" twittersdk:tw__tweet_id="20"/></RelativeLayout> -
Add the highlighted code to the Activity or Fragment where you want to use this feature
View Class (1 additions)
package com.example; import android.os.Bundle; import android.app.Activity; import android.content.Intent;
import com.twitter.sdk.android.core.Callback; import com.twitter.sdk.android.core.Result; import com.twitter.sdk.android.core.TwitterException; import com.twitter.sdk.android.core.TwitterSession; import com.twitter.sdk.android.core.identity.TwitterLoginButton;public class SampleActivity extends Activity {private TwitterLoginButton loginButton;@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_sample);loginButton = (TwitterLoginButton) findViewById(R.id.twitter_login_button); loginButton.setCallback(new Callback<TwitterSession>() { @Override public void success(Result<TwitterSession> result) { // Do something with result, which provides a TwitterSession for making API calls } @Override public void failure(TwitterException exception) { // Do something on failure } });}@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); loginButton.onActivityResult(requestCode, resultCode, data); }@Override protected void onResume() { super.onResume(); } @Override protected void onDestroy() { super.onDestroy(); } } -
If you use Proguard, add the following lines to your configuration. Otherwise, you can safely skip this step
Proguard Configuration (1 additions)
-include ../proguard-com.twitter.sdk.android.twitter.txt -
Please build and run your application. Once launched we will verify Twitter is configured for your app
-
Have an iOS version of your app?
We have you covered.
Visit the Twitter Kit iOS SDK version.