calvin-n-hobbes / codepath-twitter

Twitter client assignment for March '14 CodePath Android boot camp
0 stars 0 forks source link

[Android Bootcamp] Twitter client submission #1

Closed calvin-n-hobbes closed 10 years ago

calvin-n-hobbes commented 10 years ago

Week 3 assignment. /cc @nesquena @timothy1ee

For some reason, I can post tweets in Latin charsets (e.g., English), but the app doesn't post when I input double-byte chars (e.g., Chinese). I thought it might be because I need special care when I call EditText.getText.toString() for Unicode, but it's fine when I simply output in log messages. Any tips?

Thanks, -Justin Kuo


Time taken: ~16 hours.

I finished the required user stories and three optional user stories: :heavy_check_mark: User can sign in using OAuth login flow :heavy_check_mark: User can view last 25 tweets from their home timeline :heavy_check_mark: User should be able to see the user, body and timestamp for tweet :heavy_check_mark: User should be displayed the relative timestamp for a tweet "8m", "7h" :x: (Optional) Links in tweets are clickable and viewable :heavy_check_mark: User can load more tweets once they reach the bottom of the list using "infinite scroll" pagination :heavy_check_mark: User can compose a new tweet :heavy_check_mark: User can click a “Compose” icon in the Action Bar on the top right :heavy_check_mark: User will have a Compose view opened :heavy_check_mark: User can enter a message and hit a button to post to twitter :heavy_check_mark: User should be taken back to home timeline with new tweet visible :heavy_check_mark: (Optional) User can see a counter with total number of characters left for tweet :heavy_check_mark: (Optional) User can refresh tweets timeline by pulling down to refresh (i.e pull-to-refresh) :x: (Optional) User can open the twitter app offline and see last loaded tweets :x: Tweets are persisted into sqlite and can be displayed from the local DB :x: (Optional) User can tap a tweet to display a "detailed" view of that tweet :x: (Optional) User can select "reply" from detail view to respond to a tweet :heavy_check_mark: (Optional) Improve the user interface and theme the app to feel twitter branded :x: (Stretch) User can see an embedded media (image) within tweet detail view :x: (Stretch) Compose View activity is replaced with a modal overlay

nesquena commented 10 years ago

:+1: nice work Justin. A few notes after checking out the code:

Here's a detailed Project 3 Feedback Guide here which covers the most common issues with this submitted project. Read through the feedback guide point-by-point to determine how you could improve your submission.

Let us know if you have any other thoughts or questions about this assignment. Hopefully by now you feel pretty comfortable with all the major pieces to basic Android apps (Views, Controllers, ActionBar, Navigation, Models, Authentication, API Communication, Persistence, et al) and see how they all fit together. We are close now to a turning point in the course where you should be hitting a "critical mass" towards your knowledge of Android.

For some reason, I can post tweets in Latin charsets (e.g., English), but the app doesn't post when I input double-byte chars (e.g., Chinese). I thought it might be because I need special care when I call EditText.getText.toString() for Unicode, but it's fine when I simply output in log messages. Any tips?

Multibyte characters should be supported essentially out of the box with Android since it's unicode. Might be specific to the way async-http is encoding unicode characters in the request. Would have to dig in more to say for sure. Interesting question!