• This repository has been archived on 22/Jan/2023
  • Stars
    star
    1,192
  • Rank 39,244 (Top 0.8 %)
  • Language
    Java
  • Created over 8 years ago
  • Updated almost 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

The most powerful and beautiful Twitter client available.

Annoucement: As of January 13th, 2023, Twitter has decided that an app recreating the original experience violates their Terms of Service. You may still be able to build and use Talon through your own Twitter developer account, but development will no longer continue for the product unless their stance changes in the future.

Talon for Twitter

promo

This is the complete version of the Twitter client that I created for Android. It is 100% open source, the only thing that you will have to do plug in is your own API keys.

I am lucky enough to say that, as a paid app, Talon has perched itself at the top of the top paid social apps list since it's release in 2014. It has amassed 100,000+ downloads while holding a 4.6 star rating on the Play Store. This app is one of the more successful apps I have ever made and I am open sourcing it as a "thank you" to everyone that has supported my work over the years! It works great and I'm proud to say that it can probably be considered one of the most popular third party Twitter apps.

While I will be the first to admit that it is very far from perfect - and a lot of the base code was written when I had no clue what I was doing - it it could be a very cool project to look at for inspiration, implementation details, and contributions.

Enjoy Talon for Twitter and let me know what you want to see next!

Building Talon

You should build the app against the current master branch. The tags are all old releases and are not maintained. I will not be able to support building older versions of the app.

Before Talon will work, you will need to generate some API keys, for Twitter. I will not be distributing my keys.

To get your Twitter API key, go through these steps:

  1. sign in on their developer site (https://apps.twitter.com/)
  2. Click Create New App.
  3. Choose a name, description, and website. These are all required and unique to your app, but it makes no difference what you call them. Anything will work here.
  4. For the callback URL, you can do anything you like, but to have it work out of the box, use: http://talonfortwitter.com
  • If you want a different one (stressing that it really DOES NOT matter..) then change it in the LoginFragment
  1. Read and accept their Rules of the Road, then Create your Twitter Application
  2. After it is created, you can change the icon and add some other info from the settings page.
  3. You NEED to go to the Permissions page of the app and select the Read, Write and Access direct messages option, or else you won't be able to do anything but view your timeline.
Adding API Keys to the App

In the .gitignore file, I have ignored secrets.properties which should contain your keys. Go ahead, copy the secrets.properties.sample to secrets.properties and fill in the keys in it.

This allows me to keep the keys out of source control, but still build the app without any hassle.

There are fields for the Twitter keys, as well as some third party services that Talon utilizes. You do not have to generate keys for the third party services. Those services just will not work.

Providing a Signing Configuration

For release builds, add your keystore simply as keystore to the root of the project, then add a keystore.properties file to the root with (no quotation marks around these strings!):

keystorefile=keystore
keyalias=XXXXXX
keystorepassword=XXXXXX
keypassword=XXXXXX

Contributing

Please fork this repository and contribute back using pull requests. Features can be requested using issues. All code, comments, and critiques are greatly appreciated.


License

Copyright 2018 Luke Klinker

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

More Repositories

1

talon-twitter-holo

[Deprecated] The Holo version of my popular Android Talon for Twitter app, 100% open-source
Java
1,636
star
2

Android-TextView-LinkBuilder

Insanely easy way to define clickable links within a TextView.
Kotlin
1,590
star
3

Android-DragDismissActivity

A smooth, easy-to-implement, drag to dismiss Android Activity.
Java
679
star
4

Android-3DTouch-PeekView

Simple and powerful library to emulate iOS's "3D Touch" preview functionality on Android.
Java
504
star
5

Android-FloatingTutorialActivity

A light-weight, easy-to-implement, and easy-to-look-at way to do a tutorial pager or dialog on Android
Kotlin
351
star
6

wearable-reply

Simplify text input for Android Wear 2.0, by voice, keyboard, or canned response.
Java
120
star
7

FloatingWindowDemo

Creating Floating Window Popups
Java
103
star
8

launcher3

Gradle built Launcher3 from Nougat
Java
96
star
9

Android-BadgedImageView

Simple library for placing media type tags or text over an ImageView
Java
82
star
10

wedding-app

Seating chart for my wedding
Java
75
star
11

google-calendar-desktop

A simple Electron app to display Google Calendar
JavaScript
60
star
12

Android-GiphySearch

Super easy way to find awesome GIFs for your apps
Java
51
star
13

nougat-7.1-playground

Examples of launcher shortcuts, image keyboard, and round icon support
Java
49
star
14

Android-SimpleVideoView

Simplified replacement for Android's overly complex VideoView
Java
46
star
15

talon_theme

Example themeing for my Talon for Twitter Android app
23
star
16

help-site-template

A template to create a help site for an app, web service, or anything you need to direct users to.
JavaScript
17
star
17

slideover-messaging

SlideOver Messaging App
Java
14
star
18

android-chat

Push Notification Chat App for Android
Java
12
star
19

todoist-desktop

Another desktop implementation of Todoist, for Linux.
JavaScript
11
star
20

swift-calendar

Super simple calendar sample using Swift for iOS
Swift
8
star
21

iot_smoke_detector

An Internet of Things enabled smoke detector
Java
4
star
22

Android-EnlargedNumbers-Spannable

Demonstration of manipulating text styles/sizes within the same TextView.
Java
4
star
23

twitter-push

Push Notifications for Twitter through Chrome
Java
3
star
24

wedding-on-rails

Wedding website with Ruby on Rails
Ruby
1
star
25

klinker24

1
star