Skip to content

chrislacy/TweetLanes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tweet Lanes

Tweet Lanes is a fully functional Twitter client, targeted at Android devices running API 14 and above.

Tweet Lanes

Tweet Lanes on the Google Play Store

This project contains the full source code to:

  • The Tweet Lanes client application.
  • The accompanying SocialNetLib project, which interfaces with the Twitter and App.net APIs.
  • All art resources, notably the logo and Play Store listings.
  • The App Engine project used for tweetlanes.com.

The only items used in the Play Store build of Tweet Lanes not present in this repository are:

  • The Twitter Application consumer and secret keys.
  • The App.net consumer and secret keys.
  • The Play Store key used to sign the application.

Credentials

To build and use the app, you'll need to create your own Twitter application (and App.net application, if you have a developer account).

Twitter

  • Create a Twitter application

  • Don't worry about the callback url, just put a valid http url.

  • Once you create it, go to it's settings.

  • Inside Application Type:

    • Make sure Allow this application to be used to Sign in with Twitter is checked
    • Set the Access to Read, Write and Access direct messages
  • Now that you have the Twitter app configured, open the java file: android/app/src/main/java/com/tweetlanes/android/core/ConsumerKeyConstants.java and modify your TWITTER_CONSUMER_KEY and TWITTER_CONSUMER_SECRET variables with the ones from your Twitter app.

App.net

App.net usage requires a similar set of steps.

Developed By

Credits

Tweet Lanes uses the following open-source software:

Disclaimer

A few points to considering when browsing this code:

  1. Tweet Lanes was the first app I wrote in Java, as well as my first Android app. It is both my Android and Java 'Hello World'. The project contains much code that causes me to cringe when looking at it now, but it exists because I simply didn't know better at the time of writing it.
  2. Tweet Lanes was developed on the fly. I often added a feature and shipped it that night. If that new code was buggy, I sometimes added a quick and dirty fix to get things going again. The intent was often to go back and clean such code up, but due to the sheer amount of work I had to do, that rarely ended up happening.

In conclusion: there is currently some dog-awful code in this project. I know this only too well. Please try not to judge my coding ability on the worst parts, but do feel free to fork 'n fix :)

Usage

\android\client contains the bulk of the code. This project is dependent on the following libraries:

  • \android\libraries\SocialNetLib - An abstracted library that interfaces with Twitter and App.net.

Additional notes:

  • Configuration files for Eclipse are provided. If using Eclipse/ADT, you should be able to import the client and libraries straight in.

License

/*
 * Copyright (C) 2013 Chris Lacy
 *
 * 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.
 */

Contributions

Contributions are most welcome. In fact, they are actively encouraged.

Have a read here for what I consider to be the most pressing tasks in need to attention.

Before contributing please have a read of our wiki which contains useful information to get you started and also where to send your pull requests.

Note

I retain the copyright and ownership of the Tweet Lanes name. If you choose to release a fork of this code, please use a different name for your project.