diff options
37 files changed, 1455 insertions, 0 deletions
diff --git a/Android/06-Notifications/Notifications/AndroidManifest.xml b/Android/06-Notifications/Notifications/AndroidManifest.xml new file mode 100644 index 0000000..85da77a --- /dev/null +++ b/Android/06-Notifications/Notifications/AndroidManifest.xml @@ -0,0 +1,33 @@ +<?xml version="1.0" encoding="utf-8"?> +<manifest xmlns:android="http://schemas.android.com/apk/res/android" + package="course.labs.notificationslab" + android:versionCode="1" + android:versionName="1.0"> + + <uses-permission android:name="android.permission.INTERNET" /> + + <application + android:allowBackup="true" + android:icon="@drawable/ic_launcher" + android:label="@string/app_name" + android:theme="@style/AppTheme" > + <activity + android:name="course.labs.notificationslab.MainActivity" + android:label="@string/app_name" + android:launchMode="singleTop" > + <intent-filter> + <action android:name="android.intent.action.MAIN" /> + + <category android:name="android.intent.category.LAUNCHER" /> + </intent-filter> + </activity> + <activity + android:name="course.labs.notificationslab.TestFrontEndActivity" + android:label="@string/title_activity_test_front_end" > + <intent-filter> + <action android:name="android.intent.action.MAIN" /> + <category android:name="android.intent.category.LAUNCHER" /> + </intent-filter> + </activity> + </application> +</manifest> diff --git a/Android/06-Notifications/Notifications/ant.properties b/Android/06-Notifications/Notifications/ant.properties new file mode 100644 index 0000000..b0971e8 --- /dev/null +++ b/Android/06-Notifications/Notifications/ant.properties @@ -0,0 +1,17 @@ +# This file is used to override default values used by the Ant build system. +# +# This file must be checked into Version Control Systems, as it is +# integral to the build system of your project. + +# This file is only used by the Ant script. + +# You can use this to override default values such as +# 'source.dir' for the location of your java source folder and +# 'out.dir' for the location of your output folder. + +# You can also use it define how the release builds are signed by declaring +# the following properties: +# 'key.store' for the location of your keystore and +# 'key.alias' for the name of the key to use. +# The password will be asked during the build when you use the 'release' target. + diff --git a/Android/06-Notifications/Notifications/build.xml b/Android/06-Notifications/Notifications/build.xml new file mode 100644 index 0000000..b960695 --- /dev/null +++ b/Android/06-Notifications/Notifications/build.xml @@ -0,0 +1,92 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project name="Notifications" default="help"> + + <!-- The local.properties file is created and updated by the 'android' tool. + It contains the path to the SDK. It should *NOT* be checked into + Version Control Systems. --> + <property file="local.properties" /> + + <!-- The ant.properties file can be created by you. It is only edited by the + 'android' tool to add properties to it. + This is the place to change some Ant specific build properties. + Here are some properties you may want to change/update: + + source.dir + The name of the source directory. Default is 'src'. + out.dir + The name of the output directory. Default is 'bin'. + + For other overridable properties, look at the beginning of the rules + files in the SDK, at tools/ant/build.xml + + Properties related to the SDK location or the project target should + be updated using the 'android' tool with the 'update' action. + + This file is an integral part of the build system for your + application and should be checked into Version Control Systems. + + --> + <property file="ant.properties" /> + + <!-- if sdk.dir was not set from one of the property file, then + get it from the ANDROID_HOME env var. + This must be done before we load project.properties since + the proguard config can use sdk.dir --> + <property environment="env" /> + <condition property="sdk.dir" value="${env.ANDROID_HOME}"> + <isset property="env.ANDROID_HOME" /> + </condition> + + <!-- The project.properties file is created and updated by the 'android' + tool, as well as ADT. + + This contains project specific properties such as project target, and library + dependencies. Lower level build properties are stored in ant.properties + (or in .classpath for Eclipse projects). + + This file is an integral part of the build system for your + application and should be checked into Version Control Systems. --> + <loadproperties srcFile="project.properties" /> + + <!-- quick check on sdk.dir --> + <fail + message="sdk.dir is missing. Make sure to generate local.properties using 'android update project' or to inject it through the ANDROID_HOME environment variable." + unless="sdk.dir" + /> + + <!-- + Import per project custom build rules if present at the root of the project. + This is the place to put custom intermediary targets such as: + -pre-build + -pre-compile + -post-compile (This is typically used for code obfuscation. + Compiled code location: ${out.classes.absolute.dir} + If this is not done in place, override ${out.dex.input.absolute.dir}) + -post-package + -post-build + -pre-clean + --> + <import file="custom_rules.xml" optional="true" /> + + <!-- Import the actual build file. + + To customize existing targets, there are two options: + - Customize only one target: + - copy/paste the target into this file, *before* the + <import> task. + - customize it to your needs. + - Customize the whole content of build.xml + - copy/paste the content of the rules files (minus the top node) + into this file, replacing the <import> task. + - customize to your needs. + + *********************** + ****** IMPORTANT ****** + *********************** + In all cases you must update the value of version-tag below to read 'custom' instead of an integer, + in order to avoid having your file be overridden by tools such as "android update project" + --> + <!-- version-tag: 1 --> + <import file="${sdk.dir}/tools/ant/build.xml" /> + +</project> diff --git a/Android/06-Notifications/Notifications/local.properties b/Android/06-Notifications/Notifications/local.properties new file mode 100644 index 0000000..12a0114 --- /dev/null +++ b/Android/06-Notifications/Notifications/local.properties @@ -0,0 +1,10 @@ +# This file is automatically generated by Android Tools. +# Do not modify this file -- YOUR CHANGES WILL BE ERASED! +# +# This file must *NOT* be checked into Version Control Systems, +# as it contains information specific to your local configuration. + +# location of the SDK. This is only used by Ant +# For customization when using a Version Control System, please read the +# header note. +sdk.dir=/opt/android-sdk diff --git a/Android/06-Notifications/Notifications/proguard-project.txt b/Android/06-Notifications/Notifications/proguard-project.txt new file mode 100644 index 0000000..f2fe155 --- /dev/null +++ b/Android/06-Notifications/Notifications/proguard-project.txt @@ -0,0 +1,20 @@ +# To enable ProGuard in your project, edit project.properties +# to define the proguard.config property as described in that file. +# +# Add project specific ProGuard rules here. +# By default, the flags in this file are appended to flags specified +# in ${sdk.dir}/tools/proguard/proguard-android.txt +# You can edit the include path and order by changing the ProGuard +# include property in project.properties. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# Add any project specific keep options here: + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} diff --git a/Android/06-Notifications/Notifications/project.properties b/Android/06-Notifications/Notifications/project.properties new file mode 100644 index 0000000..ce39f2d --- /dev/null +++ b/Android/06-Notifications/Notifications/project.properties @@ -0,0 +1,14 @@ +# This file is automatically generated by Android Tools. +# Do not modify this file -- YOUR CHANGES WILL BE ERASED! +# +# This file must be checked in Version Control Systems. +# +# To customize properties used by the Ant build system edit +# "ant.properties", and override values to adapt the script to your +# project structure. +# +# To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home): +#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt + +# Project target. +target=android-18 diff --git a/Android/06-Notifications/Notifications/res/drawable-hdpi/ic_launcher.png b/Android/06-Notifications/Notifications/res/drawable-hdpi/ic_launcher.png Binary files differnew file mode 100644 index 0000000..96a442e --- /dev/null +++ b/Android/06-Notifications/Notifications/res/drawable-hdpi/ic_launcher.png diff --git a/Android/06-Notifications/Notifications/res/drawable-ldpi/ic_launcher.png b/Android/06-Notifications/Notifications/res/drawable-ldpi/ic_launcher.png Binary files differnew file mode 100644 index 0000000..9923872 --- /dev/null +++ b/Android/06-Notifications/Notifications/res/drawable-ldpi/ic_launcher.png diff --git a/Android/06-Notifications/Notifications/res/drawable-mdpi/ic_launcher.png b/Android/06-Notifications/Notifications/res/drawable-mdpi/ic_launcher.png Binary files differnew file mode 100644 index 0000000..359047d --- /dev/null +++ b/Android/06-Notifications/Notifications/res/drawable-mdpi/ic_launcher.png diff --git a/Android/06-Notifications/Notifications/res/drawable-xhdpi/ic_launcher.png b/Android/06-Notifications/Notifications/res/drawable-xhdpi/ic_launcher.png Binary files differnew file mode 100644 index 0000000..71c6d76 --- /dev/null +++ b/Android/06-Notifications/Notifications/res/drawable-xhdpi/ic_launcher.png diff --git a/Android/06-Notifications/Notifications/res/layout/activity_main.xml b/Android/06-Notifications/Notifications/res/layout/activity_main.xml new file mode 100644 index 0000000..a9ee9c5 --- /dev/null +++ b/Android/06-Notifications/Notifications/res/layout/activity_main.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8"?> +<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:id="@+id/fragment_container" + android:layout_width="match_parent" + android:layout_height="match_parent" />
\ No newline at end of file diff --git a/Android/06-Notifications/Notifications/res/layout/activity_test_front_end.xml b/Android/06-Notifications/Notifications/res/layout/activity_test_front_end.xml new file mode 100644 index 0000000..4a3a506 --- /dev/null +++ b/Android/06-Notifications/Notifications/res/layout/activity_test_front_end.xml @@ -0,0 +1,38 @@ +<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" + android:paddingBottom="@dimen/activity_vertical_margin" + android:paddingLeft="@dimen/activity_horizontal_margin" + android:paddingRight="@dimen/activity_horizontal_margin" + android:paddingTop="@dimen/activity_vertical_margin" + tools:context=".TestFrontEndActivity" > + + <Button + android:id="@+id/start_main_button" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_alignLeft="@+id/age_tweets_button" + android:layout_alignParentBottom="true" + android:layout_marginBottom="133dp" + android:text="@string/start_main_activity" /> + + <Button + android:id="@+id/age_tweets_button" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_above="@+id/start_main_button" + android:layout_centerHorizontal="true" + android:layout_marginBottom="40dp" + android:text="@string/make_tweets_old" /> + + <Button + android:id="@+id/rejuv_tweets_button" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_above="@+id/age_tweets_button" + android:layout_alignLeft="@+id/age_tweets_button" + android:layout_marginBottom="37dp" + android:text="@string/make_tweets_new" /> + +</RelativeLayout> diff --git a/Android/06-Notifications/Notifications/res/layout/custom_notification.xml b/Android/06-Notifications/Notifications/res/layout/custom_notification.xml new file mode 100644 index 0000000..13ae38a --- /dev/null +++ b/Android/06-Notifications/Notifications/res/layout/custom_notification.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="utf-8"?> +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:id="@+id/toast_layout_root" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:background="#7777" + android:padding="3dp"> + + <ImageView android:id="@+id/image" + android:layout_width="44dp" + android:layout_height="44dp" + android:layout_marginRight="10dp" + android:contentDescription="alert" + android:src="@android:drawable/ic_dialog_info" /> + + <TextView + android:id="@+id/text" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:textColor="#FFF" + android:textSize="24sp" /> + +</LinearLayout> diff --git a/Android/06-Notifications/Notifications/res/layout/feed.xml b/Android/06-Notifications/Notifications/res/layout/feed.xml new file mode 100644 index 0000000..642633a --- /dev/null +++ b/Android/06-Notifications/Notifications/res/layout/feed.xml @@ -0,0 +1,13 @@ +<ScrollView 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=".FeedFragment" > + + <TextView + android:id="@+id/feed_view" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="@string/greeting" /> + +</ScrollView>
\ No newline at end of file diff --git a/Android/06-Notifications/Notifications/res/raw/lgaga.txt b/Android/06-Notifications/Notifications/res/raw/lgaga.txt new file mode 100644 index 0000000..d3ee9f9 --- /dev/null +++ b/Android/06-Notifications/Notifications/res/raw/lgaga.txt @@ -0,0 +1,13 @@ +[{"created_at":"Mon Aug 26 16:26:59 +0000 2013","id":372032436278132736,"id_str":"372032436278132736","text":"Go to http:\/\/t.co\/W2NqZiTtOo to see @Terry_World Terry Richardson's photos of me getting ready for the show!","source":"\u003ca href=\"http:\/\/twitter.com\/#!\/download\/ipad\" rel=\"nofollow\"\u003eTwitter for iPad\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":14230524,"id_str":"14230524","name":"Lady Gaga","screen_name":"ladygaga","location":"","description":"BUY MY NEW SINGLE 'APPLAUSE' AND PRE-ORDER MY ALBUM 'ARTPOP' HERE NOW! http:\/\/t.co\/6y7xRxEuw3","url":"http:\/\/t.co\/6y7xRxEuw3","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/6y7xRxEuw3","expanded_url":"http:\/\/smarturl.it\/Applause","display_url":"smarturl.it\/Applause","indices":[0,22]}]},"description":{"urls":[{"url":"http:\/\/t.co\/6y7xRxEuw3","expanded_url":"http:\/\/smarturl.it\/Applause","display_url":"smarturl.it\/Applause","indices":[71,93]}]}},"protected":false,"followers_count":39883682,"friends_count":135174,"listed_count":243025,"created_at":"Wed Mar 26 22:37:48 +0000 2008","favourites_count":4,"utc_offset":-18000,"time_zone":"Quito","geo_enabled":false,"verified":true,"statuses_count":3039,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"FAF0FA","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/378800000050060495\/13506f61e5eb69fd109095c8d7edd701.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/378800000050060495\/13506f61e5eb69fd109095c8d7edd701.jpeg","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000280665322\/bdd8a8c3b63f6aeb83f21c77f640723f_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000280665322\/bdd8a8c3b63f6aeb83f21c77f640723f_normal.jpeg","profile_link_color":"2FC2EF","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDFFCC","profile_text_color":"333333","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":3306,"favorite_count":2703,"entities":{"hashtags":[],"symbols":[],"urls":[{"url":"http:\/\/t.co\/W2NqZiTtOo","expanded_url":"http:\/\/www.terrysdiary.com","display_url":"terrysdiary.com","indices":[6,28]}],"user_mentions":[{"screen_name":"Terry_World","name":"Terry Richardson","id":53184837,"id_str":"53184837","indices":[36,48]}]},"favorited":false,"retweeted":false,"possibly_sensitive":true,"lang":"en"}, +{"created_at":"Mon Aug 26 16:05:26 +0000 2013","id":372027012497825792,"id_str":"372027012497825792","text":"I love u! RT @BoyGeorge: Comeback? Babe I had no idea u went anywhere The 1st part was very Liza I loved it! Such rich tones More of that! x","source":"\u003ca href=\"http:\/\/twitter.com\/#!\/download\/ipad\" rel=\"nofollow\"\u003eTwitter for iPad\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":14230524,"id_str":"14230524","name":"Lady Gaga","screen_name":"ladygaga","location":"","description":"BUY MY NEW SINGLE 'APPLAUSE' AND PRE-ORDER MY ALBUM 'ARTPOP' HERE NOW! http:\/\/t.co\/6y7xRxEuw3","url":"http:\/\/t.co\/6y7xRxEuw3","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/6y7xRxEuw3","expanded_url":"http:\/\/smarturl.it\/Applause","display_url":"smarturl.it\/Applause","indices":[0,22]}]},"description":{"urls":[{"url":"http:\/\/t.co\/6y7xRxEuw3","expanded_url":"http:\/\/smarturl.it\/Applause","display_url":"smarturl.it\/Applause","indices":[71,93]}]}},"protected":false,"followers_count":39883682,"friends_count":135174,"listed_count":243025,"created_at":"Wed Mar 26 22:37:48 +0000 2008","favourites_count":4,"utc_offset":-18000,"time_zone":"Quito","geo_enabled":false,"verified":true,"statuses_count":3039,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"FAF0FA","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/378800000050060495\/13506f61e5eb69fd109095c8d7edd701.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/378800000050060495\/13506f61e5eb69fd109095c8d7edd701.jpeg","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000280665322\/bdd8a8c3b63f6aeb83f21c77f640723f_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000280665322\/bdd8a8c3b63f6aeb83f21c77f640723f_normal.jpeg","profile_link_color":"2FC2EF","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDFFCC","profile_text_color":"333333","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":2698,"favorite_count":2649,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"BoyGeorge","name":"Boy George","id":149103331,"id_str":"149103331","indices":[13,23]}]},"favorited":false,"retweeted":false,"lang":"en"}, +{"created_at":"Mon Aug 26 15:38:00 +0000 2013","id":372020111299051520,"id_str":"372020111299051520","text":"@TrollMarkus I felt so alive! All I remember is the audience cheering! I could barely hear! Hands in the air, smiles & flashes everywhere!","source":"\u003ca href=\"http:\/\/twitter.com\/#!\/download\/ipad\" rel=\"nofollow\"\u003eTwitter for iPad\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":372019416890105857,"in_reply_to_status_id_str":"372019416890105857","in_reply_to_user_id":1403042244,"in_reply_to_user_id_str":"1403042244","in_reply_to_screen_name":"TrollMarkus","user":{"id":14230524,"id_str":"14230524","name":"Lady Gaga","screen_name":"ladygaga","location":"","description":"BUY MY NEW SINGLE 'APPLAUSE' AND PRE-ORDER MY ALBUM 'ARTPOP' HERE NOW! http:\/\/t.co\/6y7xRxEuw3","url":"http:\/\/t.co\/6y7xRxEuw3","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/6y7xRxEuw3","expanded_url":"http:\/\/smarturl.it\/Applause","display_url":"smarturl.it\/Applause","indices":[0,22]}]},"description":{"urls":[{"url":"http:\/\/t.co\/6y7xRxEuw3","expanded_url":"http:\/\/smarturl.it\/Applause","display_url":"smarturl.it\/Applause","indices":[71,93]}]}},"protected":false,"followers_count":39883682,"friends_count":135174,"listed_count":243025,"created_at":"Wed Mar 26 22:37:48 +0000 2008","favourites_count":4,"utc_offset":-18000,"time_zone":"Quito","geo_enabled":false,"verified":true,"statuses_count":3039,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"FAF0FA","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/378800000050060495\/13506f61e5eb69fd109095c8d7edd701.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/378800000050060495\/13506f61e5eb69fd109095c8d7edd701.jpeg","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000280665322\/bdd8a8c3b63f6aeb83f21c77f640723f_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000280665322\/bdd8a8c3b63f6aeb83f21c77f640723f_normal.jpeg","profile_link_color":"2FC2EF","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDFFCC","profile_text_color":"333333","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":1878,"favorite_count":1753,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"TrollMarkus","name":"Markus | Lady Gaga","id":1403042244,"id_str":"1403042244","indices":[0,12]}]},"favorited":false,"retweeted":false,"lang":"en"}, +{"created_at":"Mon Aug 26 15:32:32 +0000 2013","id":372018733973528576,"id_str":"372018733973528576","text":"@gabicorradin30 breathing","source":"\u003ca href=\"http:\/\/twitter.com\/#!\/download\/ipad\" rel=\"nofollow\"\u003eTwitter for iPad\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":372018554880933888,"in_reply_to_status_id_str":"372018554880933888","in_reply_to_user_id":163632802,"in_reply_to_user_id_str":"163632802","in_reply_to_screen_name":"gabicorradin30","user":{"id":14230524,"id_str":"14230524","name":"Lady Gaga","screen_name":"ladygaga","location":"","description":"BUY MY NEW SINGLE 'APPLAUSE' AND PRE-ORDER MY ALBUM 'ARTPOP' HERE NOW! http:\/\/t.co\/6y7xRxEuw3","url":"http:\/\/t.co\/6y7xRxEuw3","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/6y7xRxEuw3","expanded_url":"http:\/\/smarturl.it\/Applause","display_url":"smarturl.it\/Applause","indices":[0,22]}]},"description":{"urls":[{"url":"http:\/\/t.co\/6y7xRxEuw3","expanded_url":"http:\/\/smarturl.it\/Applause","display_url":"smarturl.it\/Applause","indices":[71,93]}]}},"protected":false,"followers_count":39883682,"friends_count":135174,"listed_count":243025,"created_at":"Wed Mar 26 22:37:48 +0000 2008","favourites_count":4,"utc_offset":-18000,"time_zone":"Quito","geo_enabled":false,"verified":true,"statuses_count":3039,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"FAF0FA","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/378800000050060495\/13506f61e5eb69fd109095c8d7edd701.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/378800000050060495\/13506f61e5eb69fd109095c8d7edd701.jpeg","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000280665322\/bdd8a8c3b63f6aeb83f21c77f640723f_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000280665322\/bdd8a8c3b63f6aeb83f21c77f640723f_normal.jpeg","profile_link_color":"2FC2EF","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDFFCC","profile_text_color":"333333","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":1872,"favorite_count":2027,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"gabicorradin30","name":"gabi \u0950","id":163632802,"id_str":"163632802","indices":[0,15]}]},"favorited":false,"retweeted":false,"lang":"en"}, +{"created_at":"Mon Aug 26 15:29:03 +0000 2013","id":372017855531077632,"id_str":"372017855531077632","text":"That is correct. RT @dope_cinema: only @LadyGaga would purposely put booing in her performance hahah","source":"\u003ca href=\"http:\/\/twitter.com\/#!\/download\/ipad\" rel=\"nofollow\"\u003eTwitter for iPad\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":14230524,"id_str":"14230524","name":"Lady Gaga","screen_name":"ladygaga","location":"","description":"BUY MY NEW SINGLE 'APPLAUSE' AND PRE-ORDER MY ALBUM 'ARTPOP' HERE NOW! http:\/\/t.co\/6y7xRxEuw3","url":"http:\/\/t.co\/6y7xRxEuw3","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/6y7xRxEuw3","expanded_url":"http:\/\/smarturl.it\/Applause","display_url":"smarturl.it\/Applause","indices":[0,22]}]},"description":{"urls":[{"url":"http:\/\/t.co\/6y7xRxEuw3","expanded_url":"http:\/\/smarturl.it\/Applause","display_url":"smarturl.it\/Applause","indices":[71,93]}]}},"protected":false,"followers_count":39883682,"friends_count":135174,"listed_count":243025,"created_at":"Wed Mar 26 22:37:48 +0000 2008","favourites_count":4,"utc_offset":-18000,"time_zone":"Quito","geo_enabled":false,"verified":true,"statuses_count":3039,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"FAF0FA","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/378800000050060495\/13506f61e5eb69fd109095c8d7edd701.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/378800000050060495\/13506f61e5eb69fd109095c8d7edd701.jpeg","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000280665322\/bdd8a8c3b63f6aeb83f21c77f640723f_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000280665322\/bdd8a8c3b63f6aeb83f21c77f640723f_normal.jpeg","profile_link_color":"2FC2EF","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDFFCC","profile_text_color":"333333","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":4099,"favorite_count":3211,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"dope_cinema","name":"H3R TR1LLNESS","id":56843246,"id_str":"56843246","indices":[20,32]},{"screen_name":"ladygaga","name":"Lady Gaga","id":14230524,"id_str":"14230524","indices":[39,48]}]},"favorited":false,"retweeted":false,"lang":"en"}, +{"created_at":"Mon Aug 26 15:23:25 +0000 2013","id":372016437843742720,"id_str":"372016437843742720","text":"@RobbyRizl it was a canvas, and I AM the canvas during this performance","source":"\u003ca href=\"http:\/\/twitter.com\/#!\/download\/ipad\" rel=\"nofollow\"\u003eTwitter for iPad\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":372016216056930305,"in_reply_to_status_id_str":"372016216056930305","in_reply_to_user_id":206514213,"in_reply_to_user_id_str":"206514213","in_reply_to_screen_name":"RobbyRizl","user":{"id":14230524,"id_str":"14230524","name":"Lady Gaga","screen_name":"ladygaga","location":"","description":"BUY MY NEW SINGLE 'APPLAUSE' AND PRE-ORDER MY ALBUM 'ARTPOP' HERE NOW! http:\/\/t.co\/6y7xRxEuw3","url":"http:\/\/t.co\/6y7xRxEuw3","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/6y7xRxEuw3","expanded_url":"http:\/\/smarturl.it\/Applause","display_url":"smarturl.it\/Applause","indices":[0,22]}]},"description":{"urls":[{"url":"http:\/\/t.co\/6y7xRxEuw3","expanded_url":"http:\/\/smarturl.it\/Applause","display_url":"smarturl.it\/Applause","indices":[71,93]}]}},"protected":false,"followers_count":39883682,"friends_count":135174,"listed_count":243025,"created_at":"Wed Mar 26 22:37:48 +0000 2008","favourites_count":4,"utc_offset":-18000,"time_zone":"Quito","geo_enabled":false,"verified":true,"statuses_count":3039,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"FAF0FA","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/378800000050060495\/13506f61e5eb69fd109095c8d7edd701.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/378800000050060495\/13506f61e5eb69fd109095c8d7edd701.jpeg","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000280665322\/bdd8a8c3b63f6aeb83f21c77f640723f_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000280665322\/bdd8a8c3b63f6aeb83f21c77f640723f_normal.jpeg","profile_link_color":"2FC2EF","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDFFCC","profile_text_color":"333333","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":1297,"favorite_count":1219,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"RobbyRizl","name":"Robby","id":206514213,"id_str":"206514213","indices":[0,10]}]},"favorited":false,"retweeted":false,"lang":"en"}, +{"created_at":"Mon Aug 26 15:21:16 +0000 2013","id":372015900150726656,"id_str":"372015900150726656","text":"RT @leonardo_bv: @ladygaga The choreography was perfect, mimetizing each era, and the booing during Born This Way era was such a great stat\u2026","source":"\u003ca href=\"http:\/\/twitter.com\/#!\/download\/ipad\" rel=\"nofollow\"\u003eTwitter for iPad\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":14230524,"id_str":"14230524","name":"Lady Gaga","screen_name":"ladygaga","location":"","description":"BUY MY NEW SINGLE 'APPLAUSE' AND PRE-ORDER MY ALBUM 'ARTPOP' HERE NOW! http:\/\/t.co\/6y7xRxEuw3","url":"http:\/\/t.co\/6y7xRxEuw3","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/6y7xRxEuw3","expanded_url":"http:\/\/smarturl.it\/Applause","display_url":"smarturl.it\/Applause","indices":[0,22]}]},"description":{"urls":[{"url":"http:\/\/t.co\/6y7xRxEuw3","expanded_url":"http:\/\/smarturl.it\/Applause","display_url":"smarturl.it\/Applause","indices":[71,93]}]}},"protected":false,"followers_count":39883682,"friends_count":135174,"listed_count":243025,"created_at":"Wed Mar 26 22:37:48 +0000 2008","favourites_count":4,"utc_offset":-18000,"time_zone":"Quito","geo_enabled":false,"verified":true,"statuses_count":3039,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"FAF0FA","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/378800000050060495\/13506f61e5eb69fd109095c8d7edd701.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/378800000050060495\/13506f61e5eb69fd109095c8d7edd701.jpeg","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000280665322\/bdd8a8c3b63f6aeb83f21c77f640723f_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000280665322\/bdd8a8c3b63f6aeb83f21c77f640723f_normal.jpeg","profile_link_color":"2FC2EF","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDFFCC","profile_text_color":"333333","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweeted_status":{"created_at":"Mon Aug 26 15:20:19 +0000 2013","id":372015658956906496,"id_str":"372015658956906496","text":"@ladygaga The choreography was perfect, mimetizing each era, and the booing during Born This Way era was such a great statement!","source":"web","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":14230524,"in_reply_to_user_id_str":"14230524","in_reply_to_screen_name":"ladygaga","user":{"id":85364390,"id_str":"85364390","name":"Leonardo Barros","screen_name":"leonardo_bv","location":"","description":"https:\/\/t.co\/RjpZJuBO8q","url":"http:\/\/t.co\/tWgqMxpxYD","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/tWgqMxpxYD","expanded_url":"http:\/\/bedaxxler.tumblr.com\/","display_url":"bedaxxler.tumblr.com","indices":[0,22]}]},"description":{"urls":[{"url":"https:\/\/t.co\/RjpZJuBO8q","expanded_url":"https:\/\/littlemonsters.com\/leonardobarros","display_url":"littlemonsters.com\/leonardobarros","indices":[0,23]}]}},"protected":false,"followers_count":125,"friends_count":73,"listed_count":1,"created_at":"Mon Oct 26 17:18:13 +0000 2009","favourites_count":4,"utc_offset":-10800,"time_zone":"Brasilia","geo_enabled":false,"verified":false,"statuses_count":3866,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"FFFFFF","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/727292926\/2796c3db0b5ecf8cb4f7450aa1828232.png","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/727292926\/2796c3db0b5ecf8cb4f7450aa1828232.png","profile_background_tile":false,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/3349505031\/02a2c3de8912d5c24a66d62c5814291a_normal.png","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/3349505031\/02a2c3de8912d5c24a66d62c5814291a_normal.png","profile_link_color":"05BCFF","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"FFFFFF","profile_text_color":"000000","profile_use_background_image":false,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":1470,"favorite_count":1364,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"ladygaga","name":"Lady Gaga","id":14230524,"id_str":"14230524","indices":[0,9]}]},"favorited":false,"retweeted":false,"lang":"en"},"retweet_count":1470,"favorite_count":0,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"leonardo_bv","name":"Leonardo Barros","id":85364390,"id_str":"85364390","indices":[3,15]},{"screen_name":"ladygaga","name":"Lady Gaga","id":14230524,"id_str":"14230524","indices":[17,26]}]},"favorited":false,"retweeted":false,"lang":"en"}, +{"created_at":"Mon Aug 26 15:17:57 +0000 2013","id":372015065291304960,"id_str":"372015065291304960","text":"@LiamCalderone I wrote it special for this performance!","source":"\u003ca href=\"http:\/\/twitter.com\/#!\/download\/ipad\" rel=\"nofollow\"\u003eTwitter for iPad\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":372014874899275776,"in_reply_to_status_id_str":"372014874899275776","in_reply_to_user_id":46734283,"in_reply_to_user_id_str":"46734283","in_reply_to_screen_name":"LiamCalderone","user":{"id":14230524,"id_str":"14230524","name":"Lady Gaga","screen_name":"ladygaga","location":"","description":"BUY MY NEW SINGLE 'APPLAUSE' AND PRE-ORDER MY ALBUM 'ARTPOP' HERE NOW! http:\/\/t.co\/6y7xRxEuw3","url":"http:\/\/t.co\/6y7xRxEuw3","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/6y7xRxEuw3","expanded_url":"http:\/\/smarturl.it\/Applause","display_url":"smarturl.it\/Applause","indices":[0,22]}]},"description":{"urls":[{"url":"http:\/\/t.co\/6y7xRxEuw3","expanded_url":"http:\/\/smarturl.it\/Applause","display_url":"smarturl.it\/Applause","indices":[71,93]}]}},"protected":false,"followers_count":39883682,"friends_count":135174,"listed_count":243025,"created_at":"Wed Mar 26 22:37:48 +0000 2008","favourites_count":4,"utc_offset":-18000,"time_zone":"Quito","geo_enabled":false,"verified":true,"statuses_count":3039,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"FAF0FA","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/378800000050060495\/13506f61e5eb69fd109095c8d7edd701.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/378800000050060495\/13506f61e5eb69fd109095c8d7edd701.jpeg","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000280665322\/bdd8a8c3b63f6aeb83f21c77f640723f_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000280665322\/bdd8a8c3b63f6aeb83f21c77f640723f_normal.jpeg","profile_link_color":"2FC2EF","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDFFCC","profile_text_color":"333333","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":1299,"favorite_count":1284,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"LiamCalderone","name":"~","id":46734283,"id_str":"46734283","indices":[0,14]}]},"favorited":false,"retweeted":false,"lang":"en"}, +{"created_at":"Mon Aug 26 15:15:58 +0000 2013","id":372014565221208064,"id_str":"372014565221208064","text":"RT @Born2BeBrave: @ladygaga competition has no place in music, if people want competition they can watch football. Music is about art and e\u2026","source":"\u003ca href=\"http:\/\/twitter.com\/#!\/download\/ipad\" rel=\"nofollow\"\u003eTwitter for iPad\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":14230524,"id_str":"14230524","name":"Lady Gaga","screen_name":"ladygaga","location":"","description":"BUY MY NEW SINGLE 'APPLAUSE' AND PRE-ORDER MY ALBUM 'ARTPOP' HERE NOW! http:\/\/t.co\/6y7xRxEuw3","url":"http:\/\/t.co\/6y7xRxEuw3","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/6y7xRxEuw3","expanded_url":"http:\/\/smarturl.it\/Applause","display_url":"smarturl.it\/Applause","indices":[0,22]}]},"description":{"urls":[{"url":"http:\/\/t.co\/6y7xRxEuw3","expanded_url":"http:\/\/smarturl.it\/Applause","display_url":"smarturl.it\/Applause","indices":[71,93]}]}},"protected":false,"followers_count":39883682,"friends_count":135174,"listed_count":243025,"created_at":"Wed Mar 26 22:37:48 +0000 2008","favourites_count":4,"utc_offset":-18000,"time_zone":"Quito","geo_enabled":false,"verified":true,"statuses_count":3039,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"FAF0FA","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/378800000050060495\/13506f61e5eb69fd109095c8d7edd701.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/378800000050060495\/13506f61e5eb69fd109095c8d7edd701.jpeg","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000280665322\/bdd8a8c3b63f6aeb83f21c77f640723f_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000280665322\/bdd8a8c3b63f6aeb83f21c77f640723f_normal.jpeg","profile_link_color":"2FC2EF","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDFFCC","profile_text_color":"333333","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweeted_status":{"created_at":"Mon Aug 26 15:15:10 +0000 2013","id":372014364888293376,"id_str":"372014364888293376","text":"@ladygaga competition has no place in music, if people want competition they can watch football. Music is about art and expression not wins","source":"\u003ca href=\"http:\/\/twitter.com\/download\/iphone\" rel=\"nofollow\"\u003eTwitter for iPhone\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":14230524,"in_reply_to_user_id_str":"14230524","in_reply_to_screen_name":"ladygaga","user":{"id":277342406,"id_str":"277342406","name":"jstn | #RadioARTPOP","screen_name":"Born2BeBrave","location":"Paris TN","description":"Production Associate for the one and only #RadioARTPOP\nAirs weekly Monday @ 8PM EST\n\nUndisputed Biggest Little Monster in West TN -","url":"http:\/\/t.co\/WnF3t4bD3M","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/WnF3t4bD3M","expanded_url":"http:\/\/www.facebook.com\/justincoltrevel","display_url":"facebook.com\/justincoltrevel","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":417,"friends_count":194,"listed_count":1,"created_at":"Tue Apr 05 05:11:30 +0000 2011","favourites_count":13,"utc_offset":null,"time_zone":null,"geo_enabled":false,"verified":false,"statuses_count":958,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"131516","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/775369481\/d75e56c1d0e15c62001800d1af4002f8.png","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/775369481\/d75e56c1d0e15c62001800d1af4002f8.png","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000117282954\/1b132671c8e34f2c131004c187790c2b_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000117282954\/1b132671c8e34f2c131004c187790c2b_normal.jpeg","profile_banner_url":"https:\/\/pbs.twimg.com\/profile_banners\/277342406\/1375112866","profile_link_color":"009999","profile_sidebar_border_color":"000000","profile_sidebar_fill_color":"DDEEF6","profile_text_color":"333333","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":2184,"favorite_count":1897,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"ladygaga","name":"Lady Gaga","id":14230524,"id_str":"14230524","indices":[0,9]}]},"favorited":false,"retweeted":false,"lang":"en"},"retweet_count":2184,"favorite_count":0,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"Born2BeBrave","name":"jstn | #RadioARTPOP","id":277342406,"id_str":"277342406","indices":[3,16]},{"screen_name":"ladygaga","name":"Lady Gaga","id":14230524,"id_str":"14230524","indices":[18,27]}]},"favorited":false,"retweeted":false,"lang":"en"}, +{"created_at":"Mon Aug 26 15:15:02 +0000 2013","id":372014327408390144,"id_str":"372014327408390144","text":"@BadKid_Earthfan aisle 5","source":"\u003ca href=\"http:\/\/twitter.com\/#!\/download\/ipad\" rel=\"nofollow\"\u003eTwitter for iPad\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":372014214769963010,"in_reply_to_status_id_str":"372014214769963010","in_reply_to_user_id":38388324,"in_reply_to_user_id_str":"38388324","in_reply_to_screen_name":"BadKid_Earthfan","user":{"id":14230524,"id_str":"14230524","name":"Lady Gaga","screen_name":"ladygaga","location":"","description":"BUY MY NEW SINGLE 'APPLAUSE' AND PRE-ORDER MY ALBUM 'ARTPOP' HERE NOW! http:\/\/t.co\/6y7xRxEuw3","url":"http:\/\/t.co\/6y7xRxEuw3","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/6y7xRxEuw3","expanded_url":"http:\/\/smarturl.it\/Applause","display_url":"smarturl.it\/Applause","indices":[0,22]}]},"description":{"urls":[{"url":"http:\/\/t.co\/6y7xRxEuw3","expanded_url":"http:\/\/smarturl.it\/Applause","display_url":"smarturl.it\/Applause","indices":[71,93]}]}},"protected":false,"followers_count":39883682,"friends_count":135174,"listed_count":243025,"created_at":"Wed Mar 26 22:37:48 +0000 2008","favourites_count":4,"utc_offset":-18000,"time_zone":"Quito","geo_enabled":false,"verified":true,"statuses_count":3039,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"FAF0FA","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/378800000050060495\/13506f61e5eb69fd109095c8d7edd701.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/378800000050060495\/13506f61e5eb69fd109095c8d7edd701.jpeg","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000280665322\/bdd8a8c3b63f6aeb83f21c77f640723f_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000280665322\/bdd8a8c3b63f6aeb83f21c77f640723f_normal.jpeg","profile_link_color":"2FC2EF","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDFFCC","profile_text_color":"333333","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":1126,"favorite_count":1246,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"BadKid_Earthfan","name":"erfaan","id":38388324,"id_str":"38388324","indices":[0,16]}]},"favorited":false,"retweeted":false,"lang":"pt"}, +{"created_at":"Mon Aug 26 15:13:13 +0000 2013","id":372013873811177472,"id_str":"372013873811177472","text":"@vuittonbrunette everyone always asks why? Why did she do this? Why did she do that? My answer: For the Applause!","source":"\u003ca href=\"http:\/\/twitter.com\/#!\/download\/ipad\" rel=\"nofollow\"\u003eTwitter for iPad\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":372013192761065472,"in_reply_to_status_id_str":"372013192761065472","in_reply_to_user_id":317262708,"in_reply_to_user_id_str":"317262708","in_reply_to_screen_name":"vuittonbrunette","user":{"id":14230524,"id_str":"14230524","name":"Lady Gaga","screen_name":"ladygaga","location":"","description":"BUY MY NEW SINGLE 'APPLAUSE' AND PRE-ORDER MY ALBUM 'ARTPOP' HERE NOW! http:\/\/t.co\/6y7xRxEuw3","url":"http:\/\/t.co\/6y7xRxEuw3","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/6y7xRxEuw3","expanded_url":"http:\/\/smarturl.it\/Applause","display_url":"smarturl.it\/Applause","indices":[0,22]}]},"description":{"urls":[{"url":"http:\/\/t.co\/6y7xRxEuw3","expanded_url":"http:\/\/smarturl.it\/Applause","display_url":"smarturl.it\/Applause","indices":[71,93]}]}},"protected":false,"followers_count":39883682,"friends_count":135174,"listed_count":243025,"created_at":"Wed Mar 26 22:37:48 +0000 2008","favourites_count":4,"utc_offset":-18000,"time_zone":"Quito","geo_enabled":false,"verified":true,"statuses_count":3039,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"FAF0FA","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/378800000050060495\/13506f61e5eb69fd109095c8d7edd701.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/378800000050060495\/13506f61e5eb69fd109095c8d7edd701.jpeg","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000280665322\/bdd8a8c3b63f6aeb83f21c77f640723f_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000280665322\/bdd8a8c3b63f6aeb83f21c77f640723f_normal.jpeg","profile_link_color":"2FC2EF","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDFFCC","profile_text_color":"333333","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":2019,"favorite_count":1671,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"vuittonbrunette","name":"\u03b1\u03b7ge\u2113ic\u03b1","id":317262708,"id_str":"317262708","indices":[0,16]}]},"favorited":false,"retweeted":false,"lang":"en"}, +{"created_at":"Mon Aug 26 15:04:59 +0000 2013","id":372011801216815104,"id_str":"372011801216815104","text":"@WonderBoyxGAGA for the fame monster! yellow wig from the telephone video and monsterball!","source":"\u003ca href=\"http:\/\/twitter.com\/#!\/download\/ipad\" rel=\"nofollow\"\u003eTwitter for iPad\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":372011592155533313,"in_reply_to_status_id_str":"372011592155533313","in_reply_to_user_id":1655827585,"in_reply_to_user_id_str":"1655827585","in_reply_to_screen_name":"WonderBoyxGAGA","user":{"id":14230524,"id_str":"14230524","name":"Lady Gaga","screen_name":"ladygaga","location":"","description":"BUY MY NEW SINGLE 'APPLAUSE' AND PRE-ORDER MY ALBUM 'ARTPOP' HERE NOW! http:\/\/t.co\/6y7xRxEuw3","url":"http:\/\/t.co\/6y7xRxEuw3","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/6y7xRxEuw3","expanded_url":"http:\/\/smarturl.it\/Applause","display_url":"smarturl.it\/Applause","indices":[0,22]}]},"description":{"urls":[{"url":"http:\/\/t.co\/6y7xRxEuw3","expanded_url":"http:\/\/smarturl.it\/Applause","display_url":"smarturl.it\/Applause","indices":[71,93]}]}},"protected":false,"followers_count":39883682,"friends_count":135174,"listed_count":243025,"created_at":"Wed Mar 26 22:37:48 +0000 2008","favourites_count":4,"utc_offset":-18000,"time_zone":"Quito","geo_enabled":false,"verified":true,"statuses_count":3039,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"FAF0FA","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/378800000050060495\/13506f61e5eb69fd109095c8d7edd701.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/378800000050060495\/13506f61e5eb69fd109095c8d7edd701.jpeg","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000280665322\/bdd8a8c3b63f6aeb83f21c77f640723f_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000280665322\/bdd8a8c3b63f6aeb83f21c77f640723f_normal.jpeg","profile_link_color":"2FC2EF","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDFFCC","profile_text_color":"333333","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":1250,"favorite_count":1108,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"WonderBoyxGAGA","name":"HAUS OF WONDER","id":1655827585,"id_str":"1655827585","indices":[0,15]}]},"favorited":false,"retweeted":false,"lang":"en"}, +{"created_at":"Mon Aug 26 15:03:41 +0000 2013","id":372011473117413376,"id_str":"372011473117413376","text":"So what did monsters think of my Vma performance? Stay focused on your greatest competition: yourself! #SnatchYourOwnWeave","source":"\u003ca href=\"http:\/\/twitter.com\/#!\/download\/ipad\" rel=\"nofollow\"\u003eTwitter for iPad\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":14230524,"id_str":"14230524","name":"Lady Gaga","screen_name":"ladygaga","location":"","description":"BUY MY NEW SINGLE 'APPLAUSE' AND PRE-ORDER MY ALBUM 'ARTPOP' HERE NOW! http:\/\/t.co\/6y7xRxEuw3","url":"http:\/\/t.co\/6y7xRxEuw3","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/6y7xRxEuw3","expanded_url":"http:\/\/smarturl.it\/Applause","display_url":"smarturl.it\/Applause","indices":[0,22]}]},"description":{"urls":[{"url":"http:\/\/t.co\/6y7xRxEuw3","expanded_url":"http:\/\/smarturl.it\/Applause","display_url":"smarturl.it\/Applause","indices":[71,93]}]}},"protected":false,"followers_count":39883682,"friends_count":135174,"listed_count":243025,"created_at":"Wed Mar 26 22:37:48 +0000 2008","favourites_count":4,"utc_offset":-18000,"time_zone":"Quito","geo_enabled":false,"verified":true,"statuses_count":3039,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"FAF0FA","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/378800000050060495\/13506f61e5eb69fd109095c8d7edd701.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/378800000050060495\/13506f61e5eb69fd109095c8d7edd701.jpeg","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000280665322\/bdd8a8c3b63f6aeb83f21c77f640723f_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000280665322\/bdd8a8c3b63f6aeb83f21c77f640723f_normal.jpeg","profile_link_color":"2FC2EF","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDFFCC","profile_text_color":"333333","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":7095,"favorite_count":7341,"entities":{"hashtags":[{"text":"SnatchYourOwnWeave","indices":[103,122]}],"symbols":[],"urls":[],"user_mentions":[]},"favorited":false,"retweeted":false,"lang":"en"}] diff --git a/Android/06-Notifications/Notifications/res/raw/rblack.txt b/Android/06-Notifications/Notifications/res/raw/rblack.txt new file mode 100644 index 0000000..5d50cc5 --- /dev/null +++ b/Android/06-Notifications/Notifications/res/raw/rblack.txt @@ -0,0 +1,15 @@ +[{"created_at":"Mon Aug 26 19:35:32 +0000 2013","id":372079888477339648,"id_str":"372079888477339648","text":"@JuanDirection_4","source":"\u003ca href=\"http:\/\/twitter.com\/download\/iphone\" rel=\"nofollow\"\u003eTwitter for iPhone\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":372077635825725440,"in_reply_to_status_id_str":"372077635825725440","in_reply_to_user_id":620343755,"in_reply_to_user_id_str":"620343755","in_reply_to_screen_name":"JuanDirection_4","user":{"id":268479992,"id_str":"268479992","name":"Rebecca Black","screen_name":"MsRebeccaBlack","location":"Los Angeles, CA","description":"wait, what?","url":"http:\/\/t.co\/s2GVxq5Zg4","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/s2GVxq5Zg4","expanded_url":"http:\/\/youtube.com\/rebecca","display_url":"youtube.com\/rebecca","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":1054276,"friends_count":6338,"listed_count":4836,"created_at":"Fri Mar 18 21:29:23 +0000 2011","favourites_count":1630,"utc_offset":-25200,"time_zone":"Pacific Time (US & Canada)","geo_enabled":false,"verified":true,"statuses_count":5690,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"FFFFFF","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/378800000055491584\/2d0652b4011e0becf461573a19a0a95e.png","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/378800000055491584\/2d0652b4011e0becf461573a19a0a95e.png","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000152829318\/4c21bddc0e8c673575ae712cb98df39c_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000152829318\/4c21bddc0e8c673575ae712cb98df39c_normal.jpeg","profile_banner_url":"https:\/\/pbs.twimg.com\/profile_banners\/268479992\/1374455381","profile_link_color":"F00534","profile_sidebar_border_color":"000000","profile_sidebar_fill_color":"FFBEB2","profile_text_color":"FF0000","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":1,"favorite_count":2,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"JuanDirection_4","name":"Juan Rivera","id":620343755,"id_str":"620343755","indices":[0,16]}]},"favorited":false,"retweeted":false,"lang":"und"}, +{"created_at":"Mon Aug 26 18:41:30 +0000 2013","id":372066286517252096,"id_str":"372066286517252096","text":"so someone wrote this on my desk http:\/\/t.co\/nR7TMzhe31","source":"\u003ca href=\"http:\/\/twitter.com\/download\/iphone\" rel=\"nofollow\"\u003eTwitter for iPhone\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":268479992,"id_str":"268479992","name":"Rebecca Black","screen_name":"MsRebeccaBlack","location":"Los Angeles, CA","description":"wait, what?","url":"http:\/\/t.co\/s2GVxq5Zg4","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/s2GVxq5Zg4","expanded_url":"http:\/\/youtube.com\/rebecca","display_url":"youtube.com\/rebecca","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":1054276,"friends_count":6338,"listed_count":4836,"created_at":"Fri Mar 18 21:29:23 +0000 2011","favourites_count":1630,"utc_offset":-25200,"time_zone":"Pacific Time (US & Canada)","geo_enabled":false,"verified":true,"statuses_count":5690,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"FFFFFF","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/378800000055491584\/2d0652b4011e0becf461573a19a0a95e.png","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/378800000055491584\/2d0652b4011e0becf461573a19a0a95e.png","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000152829318\/4c21bddc0e8c673575ae712cb98df39c_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000152829318\/4c21bddc0e8c673575ae712cb98df39c_normal.jpeg","profile_banner_url":"https:\/\/pbs.twimg.com\/profile_banners\/268479992\/1374455381","profile_link_color":"F00534","profile_sidebar_border_color":"000000","profile_sidebar_fill_color":"FFBEB2","profile_text_color":"FF0000","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":795,"favorite_count":1356,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[],"media":[{"id":372066286521446400,"id_str":"372066286521446400","indices":[33,55],"media_url":"http:\/\/pbs.twimg.com\/media\/BSnYUPkCcAA7edg.jpg","media_url_https":"https:\/\/pbs.twimg.com\/media\/BSnYUPkCcAA7edg.jpg","url":"http:\/\/t.co\/nR7TMzhe31","display_url":"pic.twitter.com\/nR7TMzhe31","expanded_url":"http:\/\/twitter.com\/MsRebeccaBlack\/status\/372066286517252096\/photo\/1","type":"photo","sizes":{"thumb":{"w":150,"h":150,"resize":"crop"},"small":{"w":340,"h":453,"resize":"fit"},"medium":{"w":600,"h":800,"resize":"fit"},"large":{"w":768,"h":1024,"resize":"fit"}}}]},"favorited":false,"retweeted":false,"possibly_sensitive":false,"lang":"en"}, +{"created_at":"Mon Aug 26 18:15:20 +0000 2013","id":372059704953806848,"id_str":"372059704953806848","text":"@maddislifee DONT TELL ME WHAT TO DO MADDI","source":"\u003ca href=\"http:\/\/twitter.com\/download\/iphone\" rel=\"nofollow\"\u003eTwitter for iPhone\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":372057585936908288,"in_reply_to_status_id_str":"372057585936908288","in_reply_to_user_id":182048795,"in_reply_to_user_id_str":"182048795","in_reply_to_screen_name":"maddislifee","user":{"id":268479992,"id_str":"268479992","name":"Rebecca Black","screen_name":"MsRebeccaBlack","location":"Los Angeles, CA","description":"wait, what?","url":"http:\/\/t.co\/s2GVxq5Zg4","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/s2GVxq5Zg4","expanded_url":"http:\/\/youtube.com\/rebecca","display_url":"youtube.com\/rebecca","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":1054276,"friends_count":6338,"listed_count":4836,"created_at":"Fri Mar 18 21:29:23 +0000 2011","favourites_count":1630,"utc_offset":-25200,"time_zone":"Pacific Time (US & Canada)","geo_enabled":false,"verified":true,"statuses_count":5690,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"FFFFFF","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/378800000055491584\/2d0652b4011e0becf461573a19a0a95e.png","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/378800000055491584\/2d0652b4011e0becf461573a19a0a95e.png","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000152829318\/4c21bddc0e8c673575ae712cb98df39c_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000152829318\/4c21bddc0e8c673575ae712cb98df39c_normal.jpeg","profile_banner_url":"https:\/\/pbs.twimg.com\/profile_banners\/268479992\/1374455381","profile_link_color":"F00534","profile_sidebar_border_color":"000000","profile_sidebar_fill_color":"FFBEB2","profile_text_color":"FF0000","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":6,"favorite_count":31,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"maddislifee","name":"Maddi Bragg","id":182048795,"id_str":"182048795","indices":[0,12]}]},"favorited":false,"retweeted":false,"lang":"en"}, +{"created_at":"Mon Aug 26 18:05:43 +0000 2013","id":372057285390258176,"id_str":"372057285390258176","text":"I liked a @YouTube video http:\/\/t.co\/ij6BlYiu9a CAMP TAKOTA DAY 11","source":"\u003ca href=\"http:\/\/www.google.com\/\" rel=\"nofollow\"\u003eGoogle\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":268479992,"id_str":"268479992","name":"Rebecca Black","screen_name":"MsRebeccaBlack","location":"Los Angeles, CA","description":"wait, what?","url":"http:\/\/t.co\/s2GVxq5Zg4","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/s2GVxq5Zg4","expanded_url":"http:\/\/youtube.com\/rebecca","display_url":"youtube.com\/rebecca","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":1054276,"friends_count":6338,"listed_count":4836,"created_at":"Fri Mar 18 21:29:23 +0000 2011","favourites_count":1630,"utc_offset":-25200,"time_zone":"Pacific Time (US & Canada)","geo_enabled":false,"verified":true,"statuses_count":5690,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"FFFFFF","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/378800000055491584\/2d0652b4011e0becf461573a19a0a95e.png","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/378800000055491584\/2d0652b4011e0becf461573a19a0a95e.png","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000152829318\/4c21bddc0e8c673575ae712cb98df39c_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000152829318\/4c21bddc0e8c673575ae712cb98df39c_normal.jpeg","profile_banner_url":"https:\/\/pbs.twimg.com\/profile_banners\/268479992\/1374455381","profile_link_color":"F00534","profile_sidebar_border_color":"000000","profile_sidebar_fill_color":"FFBEB2","profile_text_color":"FF0000","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":7,"favorite_count":38,"entities":{"hashtags":[],"symbols":[],"urls":[{"url":"http:\/\/t.co\/ij6BlYiu9a","expanded_url":"http:\/\/youtu.be\/UdSN_tyoZfY?a","display_url":"youtu.be\/UdSN_tyoZfY?a","indices":[25,47]}],"user_mentions":[{"screen_name":"YouTube","name":"YouTube","id":10228272,"id_str":"10228272","indices":[10,18]}]},"favorited":false,"retweeted":false,"possibly_sensitive":false,"lang":"en"}, +{"created_at":"Mon Aug 26 16:35:35 +0000 2013","id":372034599540363264,"id_str":"372034599540363264","text":"so tired someone save me from school","source":"\u003ca href=\"http:\/\/twitter.com\/download\/iphone\" rel=\"nofollow\"\u003eTwitter for iPhone\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":268479992,"id_str":"268479992","name":"Rebecca Black","screen_name":"MsRebeccaBlack","location":"Los Angeles, CA","description":"wait, what?","url":"http:\/\/t.co\/s2GVxq5Zg4","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/s2GVxq5Zg4","expanded_url":"http:\/\/youtube.com\/rebecca","display_url":"youtube.com\/rebecca","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":1054276,"friends_count":6338,"listed_count":4836,"created_at":"Fri Mar 18 21:29:23 +0000 2011","favourites_count":1630,"utc_offset":-25200,"time_zone":"Pacific Time (US & Canada)","geo_enabled":false,"verified":true,"statuses_count":5690,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"FFFFFF","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/378800000055491584\/2d0652b4011e0becf461573a19a0a95e.png","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/378800000055491584\/2d0652b4011e0becf461573a19a0a95e.png","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000152829318\/4c21bddc0e8c673575ae712cb98df39c_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000152829318\/4c21bddc0e8c673575ae712cb98df39c_normal.jpeg","profile_banner_url":"https:\/\/pbs.twimg.com\/profile_banners\/268479992\/1374455381","profile_link_color":"F00534","profile_sidebar_border_color":"000000","profile_sidebar_fill_color":"FFBEB2","profile_text_color":"FF0000","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":151,"favorite_count":254,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[]},"favorited":false,"retweeted":false,"lang":"en"}, +{"created_at":"Mon Aug 26 04:54:03 +0000 2013","id":371858055085830144,"id_str":"371858055085830144","text":"@idkgrapes yep lol","source":"web","truncated":false,"in_reply_to_status_id":371857907610316800,"in_reply_to_status_id_str":"371857907610316800","in_reply_to_user_id":760396748,"in_reply_to_user_id_str":"760396748","in_reply_to_screen_name":"idkgrapes","user":{"id":268479992,"id_str":"268479992","name":"Rebecca Black","screen_name":"MsRebeccaBlack","location":"Los Angeles, CA","description":"wait, what?","url":"http:\/\/t.co\/s2GVxq5Zg4","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/s2GVxq5Zg4","expanded_url":"http:\/\/youtube.com\/rebecca","display_url":"youtube.com\/rebecca","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":1054276,"friends_count":6338,"listed_count":4836,"created_at":"Fri Mar 18 21:29:23 +0000 2011","favourites_count":1630,"utc_offset":-25200,"time_zone":"Pacific Time (US & Canada)","geo_enabled":false,"verified":true,"statuses_count":5690,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"FFFFFF","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/378800000055491584\/2d0652b4011e0becf461573a19a0a95e.png","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/378800000055491584\/2d0652b4011e0becf461573a19a0a95e.png","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000152829318\/4c21bddc0e8c673575ae712cb98df39c_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000152829318\/4c21bddc0e8c673575ae712cb98df39c_normal.jpeg","profile_banner_url":"https:\/\/pbs.twimg.com\/profile_banners\/268479992\/1374455381","profile_link_color":"F00534","profile_sidebar_border_color":"000000","profile_sidebar_fill_color":"FFBEB2","profile_text_color":"FF0000","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":1,"favorite_count":3,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"idkgrapes","name":"nicole","id":760396748,"id_str":"760396748","indices":[0,10]}]},"favorited":false,"retweeted":false,"lang":"en"}, +{"created_at":"Mon Aug 26 04:53:45 +0000 2013","id":371857977906434048,"id_str":"371857977906434048","text":"@TaliaCBrown yep","source":"web","truncated":false,"in_reply_to_status_id":371857766370906113,"in_reply_to_status_id_str":"371857766370906113","in_reply_to_user_id":349711773,"in_reply_to_user_id_str":"349711773","in_reply_to_screen_name":"TaliaCBrown","user":{"id":268479992,"id_str":"268479992","name":"Rebecca Black","screen_name":"MsRebeccaBlack","location":"Los Angeles, CA","description":"wait, what?","url":"http:\/\/t.co\/s2GVxq5Zg4","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/s2GVxq5Zg4","expanded_url":"http:\/\/youtube.com\/rebecca","display_url":"youtube.com\/rebecca","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":1054276,"friends_count":6338,"listed_count":4836,"created_at":"Fri Mar 18 21:29:23 +0000 2011","favourites_count":1630,"utc_offset":-25200,"time_zone":"Pacific Time (US & Canada)","geo_enabled":false,"verified":true,"statuses_count":5690,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"FFFFFF","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/378800000055491584\/2d0652b4011e0becf461573a19a0a95e.png","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/378800000055491584\/2d0652b4011e0becf461573a19a0a95e.png","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000152829318\/4c21bddc0e8c673575ae712cb98df39c_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000152829318\/4c21bddc0e8c673575ae712cb98df39c_normal.jpeg","profile_banner_url":"https:\/\/pbs.twimg.com\/profile_banners\/268479992\/1374455381","profile_link_color":"F00534","profile_sidebar_border_color":"000000","profile_sidebar_fill_color":"FFBEB2","profile_text_color":"FF0000","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":1,"favorite_count":1,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"TaliaCBrown","name":"Talia","id":349711773,"id_str":"349711773","indices":[0,12]}]},"favorited":false,"retweeted":false,"lang":"und"}, +{"created_at":"Mon Aug 26 04:52:27 +0000 2013","id":371857650536820736,"id_str":"371857650536820736","text":"shout out to my sass at the 2011 vmas #throwback http:\/\/t.co\/fgk6TWyJ2j","source":"web","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":268479992,"id_str":"268479992","name":"Rebecca Black","screen_name":"MsRebeccaBlack","location":"Los Angeles, CA","description":"wait, what?","url":"http:\/\/t.co\/s2GVxq5Zg4","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/s2GVxq5Zg4","expanded_url":"http:\/\/youtube.com\/rebecca","display_url":"youtube.com\/rebecca","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":1054276,"friends_count":6338,"listed_count":4836,"created_at":"Fri Mar 18 21:29:23 +0000 2011","favourites_count":1630,"utc_offset":-25200,"time_zone":"Pacific Time (US & Canada)","geo_enabled":false,"verified":true,"statuses_count":5690,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"FFFFFF","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/378800000055491584\/2d0652b4011e0becf461573a19a0a95e.png","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/378800000055491584\/2d0652b4011e0becf461573a19a0a95e.png","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000152829318\/4c21bddc0e8c673575ae712cb98df39c_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000152829318\/4c21bddc0e8c673575ae712cb98df39c_normal.jpeg","profile_banner_url":"https:\/\/pbs.twimg.com\/profile_banners\/268479992\/1374455381","profile_link_color":"F00534","profile_sidebar_border_color":"000000","profile_sidebar_fill_color":"FFBEB2","profile_text_color":"FF0000","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":72,"favorite_count":249,"entities":{"hashtags":[{"text":"throwback","indices":[38,48]}],"symbols":[],"urls":[{"url":"http:\/\/t.co\/fgk6TWyJ2j","expanded_url":"http:\/\/www.andpop.com\/wp-content\/uploads\/2013\/08\/anigif_enhanced-buzz-24708-1375982191-29.gif","display_url":"andpop.com\/wp-content\/upl\u2026","indices":[49,71]}],"user_mentions":[]},"favorited":false,"retweeted":false,"possibly_sensitive":false,"lang":"en"}, +{"created_at":"Mon Aug 26 03:23:28 +0000 2013","id":371835258859028480,"id_str":"371835258859028480","text":"@Maryssahhh I've known the kid for two years now. he's worked his butt off to get where he is now and he definitely does.","source":"\u003ca href=\"http:\/\/twitter.com\/download\/iphone\" rel=\"nofollow\"\u003eTwitter for iPhone\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":371834864720687104,"in_reply_to_status_id_str":"371834864720687104","in_reply_to_user_id":178940637,"in_reply_to_user_id_str":"178940637","in_reply_to_screen_name":"Maryssahhh","user":{"id":268479992,"id_str":"268479992","name":"Rebecca Black","screen_name":"MsRebeccaBlack","location":"Los Angeles, CA","description":"wait, what?","url":"http:\/\/t.co\/s2GVxq5Zg4","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/s2GVxq5Zg4","expanded_url":"http:\/\/youtube.com\/rebecca","display_url":"youtube.com\/rebecca","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":1054276,"friends_count":6338,"listed_count":4836,"created_at":"Fri Mar 18 21:29:23 +0000 2011","favourites_count":1630,"utc_offset":-25200,"time_zone":"Pacific Time (US & Canada)","geo_enabled":false,"verified":true,"statuses_count":5690,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"FFFFFF","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/378800000055491584\/2d0652b4011e0becf461573a19a0a95e.png","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/378800000055491584\/2d0652b4011e0becf461573a19a0a95e.png","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000152829318\/4c21bddc0e8c673575ae712cb98df39c_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000152829318\/4c21bddc0e8c673575ae712cb98df39c_normal.jpeg","profile_banner_url":"https:\/\/pbs.twimg.com\/profile_banners\/268479992\/1374455381","profile_link_color":"F00534","profile_sidebar_border_color":"000000","profile_sidebar_fill_color":"FFBEB2","profile_text_color":"FF0000","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":2,"favorite_count":7,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"Maryssahhh","name":"Maryssahhh","id":178940637,"id_str":"178940637","indices":[0,11]}]},"favorited":false,"retweeted":false,"lang":"en"}, +{"created_at":"Mon Aug 26 03:20:02 +0000 2013","id":371834392156463104,"id_str":"371834392156463104","text":"@MrBlahargith it's my brothers birthday!","source":"\u003ca href=\"http:\/\/twitter.com\/download\/iphone\" rel=\"nofollow\"\u003eTwitter for iPhone\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":371834279023505411,"in_reply_to_status_id_str":"371834279023505411","in_reply_to_user_id":554200449,"in_reply_to_user_id_str":"554200449","in_reply_to_screen_name":"MrBlahargith","user":{"id":268479992,"id_str":"268479992","name":"Rebecca Black","screen_name":"MsRebeccaBlack","location":"Los Angeles, CA","description":"wait, what?","url":"http:\/\/t.co\/s2GVxq5Zg4","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/s2GVxq5Zg4","expanded_url":"http:\/\/youtube.com\/rebecca","display_url":"youtube.com\/rebecca","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":1054276,"friends_count":6338,"listed_count":4836,"created_at":"Fri Mar 18 21:29:23 +0000 2011","favourites_count":1630,"utc_offset":-25200,"time_zone":"Pacific Time (US & Canada)","geo_enabled":false,"verified":true,"statuses_count":5690,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"FFFFFF","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/378800000055491584\/2d0652b4011e0becf461573a19a0a95e.png","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/378800000055491584\/2d0652b4011e0becf461573a19a0a95e.png","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000152829318\/4c21bddc0e8c673575ae712cb98df39c_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000152829318\/4c21bddc0e8c673575ae712cb98df39c_normal.jpeg","profile_banner_url":"https:\/\/pbs.twimg.com\/profile_banners\/268479992\/1374455381","profile_link_color":"F00534","profile_sidebar_border_color":"000000","profile_sidebar_fill_color":"FFBEB2","profile_text_color":"FF0000","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":2,"favorite_count":5,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"MrBlahargith","name":"Aaron Roddy","id":554200449,"id_str":"554200449","indices":[0,13]}]},"favorited":false,"retweeted":false,"lang":"en"}, +{"created_at":"Mon Aug 26 03:18:54 +0000 2013","id":371834107572924418,"id_str":"371834107572924418","text":"just heard @AustinMahone won a moon man tonight! its CRAAAZY to see how far you've come over the past couple of years. you deserve it!! :')","source":"\u003ca href=\"http:\/\/twitter.com\/download\/iphone\" rel=\"nofollow\"\u003eTwitter for iPhone\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":268479992,"id_str":"268479992","name":"Rebecca Black","screen_name":"MsRebeccaBlack","location":"Los Angeles, CA","description":"wait, what?","url":"http:\/\/t.co\/s2GVxq5Zg4","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/s2GVxq5Zg4","expanded_url":"http:\/\/youtube.com\/rebecca","display_url":"youtube.com\/rebecca","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":1054276,"friends_count":6338,"listed_count":4836,"created_at":"Fri Mar 18 21:29:23 +0000 2011","favourites_count":1630,"utc_offset":-25200,"time_zone":"Pacific Time (US & Canada)","geo_enabled":false,"verified":true,"statuses_count":5690,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"FFFFFF","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/378800000055491584\/2d0652b4011e0becf461573a19a0a95e.png","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/378800000055491584\/2d0652b4011e0becf461573a19a0a95e.png","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000152829318\/4c21bddc0e8c673575ae712cb98df39c_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000152829318\/4c21bddc0e8c673575ae712cb98df39c_normal.jpeg","profile_banner_url":"https:\/\/pbs.twimg.com\/profile_banners\/268479992\/1374455381","profile_link_color":"F00534","profile_sidebar_border_color":"000000","profile_sidebar_fill_color":"FFBEB2","profile_text_color":"FF0000","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":281,"favorite_count":478,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"AustinMahone","name":"Austin Mahone","id":196795202,"id_str":"196795202","indices":[11,24]}]},"favorited":false,"retweeted":false,"lang":"en"}, +{"created_at":"Mon Aug 26 03:01:22 +0000 2013","id":371829697467781120,"id_str":"371829697467781120","text":"@sarahmweyand @taylorswift13 WAIT WHAT","source":"\u003ca href=\"http:\/\/twitter.com\/download\/iphone\" rel=\"nofollow\"\u003eTwitter for iPhone\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":371828536216399873,"in_reply_to_status_id_str":"371828536216399873","in_reply_to_user_id":29033101,"in_reply_to_user_id_str":"29033101","in_reply_to_screen_name":"sarahmweyand","user":{"id":268479992,"id_str":"268479992","name":"Rebecca Black","screen_name":"MsRebeccaBlack","location":"Los Angeles, CA","description":"wait, what?","url":"http:\/\/t.co\/s2GVxq5Zg4","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/s2GVxq5Zg4","expanded_url":"http:\/\/youtube.com\/rebecca","display_url":"youtube.com\/rebecca","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":1054276,"friends_count":6338,"listed_count":4836,"created_at":"Fri Mar 18 21:29:23 +0000 2011","favourites_count":1630,"utc_offset":-25200,"time_zone":"Pacific Time (US & Canada)","geo_enabled":false,"verified":true,"statuses_count":5690,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"FFFFFF","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/378800000055491584\/2d0652b4011e0becf461573a19a0a95e.png","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/378800000055491584\/2d0652b4011e0becf461573a19a0a95e.png","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000152829318\/4c21bddc0e8c673575ae712cb98df39c_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000152829318\/4c21bddc0e8c673575ae712cb98df39c_normal.jpeg","profile_banner_url":"https:\/\/pbs.twimg.com\/profile_banners\/268479992\/1374455381","profile_link_color":"F00534","profile_sidebar_border_color":"000000","profile_sidebar_fill_color":"FFBEB2","profile_text_color":"FF0000","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":1,"favorite_count":5,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"sarahmweyand","name":"Sarah Weyand","id":29033101,"id_str":"29033101","indices":[0,13]},{"screen_name":"taylorswift13","name":"Taylor Swift","id":17919972,"id_str":"17919972","indices":[14,28]}]},"favorited":false,"retweeted":false,"lang":"en"}, +{"created_at":"Sun Aug 25 22:00:45 +0000 2013","id":371754043200110592,"id_str":"371754043200110592","text":"in case you haven't seen...im in @RickyPDillon's video this week! GO WATCH NOW AND MAYBE YOU'LL EVEN GET A FOLLOW! ;) http:\/\/t.co\/ScdijvXAXQ","source":"web","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":268479992,"id_str":"268479992","name":"Rebecca Black","screen_name":"MsRebeccaBlack","location":"Los Angeles, CA","description":"wait, what?","url":"http:\/\/t.co\/s2GVxq5Zg4","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/s2GVxq5Zg4","expanded_url":"http:\/\/youtube.com\/rebecca","display_url":"youtube.com\/rebecca","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":1054276,"friends_count":6338,"listed_count":4836,"created_at":"Fri Mar 18 21:29:23 +0000 2011","favourites_count":1630,"utc_offset":-25200,"time_zone":"Pacific Time (US & Canada)","geo_enabled":false,"verified":true,"statuses_count":5690,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"FFFFFF","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/378800000055491584\/2d0652b4011e0becf461573a19a0a95e.png","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/378800000055491584\/2d0652b4011e0becf461573a19a0a95e.png","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000152829318\/4c21bddc0e8c673575ae712cb98df39c_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000152829318\/4c21bddc0e8c673575ae712cb98df39c_normal.jpeg","profile_banner_url":"https:\/\/pbs.twimg.com\/profile_banners\/268479992\/1374455381","profile_link_color":"F00534","profile_sidebar_border_color":"000000","profile_sidebar_fill_color":"FFBEB2","profile_text_color":"FF0000","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":271,"favorite_count":457,"entities":{"hashtags":[],"symbols":[],"urls":[{"url":"http:\/\/t.co\/ScdijvXAXQ","expanded_url":"http:\/\/www.youtube.com\/watch?v=Y500U6r_8OI","display_url":"youtube.com\/watch?v=Y500U6\u2026","indices":[118,140]}],"user_mentions":[{"screen_name":"RickyPDillon","name":"Ricky Dillon","id":73171449,"id_str":"73171449","indices":[33,46]}]},"favorited":false,"retweeted":false,"possibly_sensitive":false,"lang":"en"}, +{"created_at":"Sun Aug 25 20:48:15 +0000 2013","id":371735796715225088,"id_str":"371735796715225088","text":"selfieeeeee with the birthday boy http:\/\/t.co\/oWfdWegwNr","source":"\u003ca href=\"http:\/\/twitter.com\/download\/iphone\" rel=\"nofollow\"\u003eTwitter for iPhone\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":268479992,"id_str":"268479992","name":"Rebecca Black","screen_name":"MsRebeccaBlack","location":"Los Angeles, CA","description":"wait, what?","url":"http:\/\/t.co\/s2GVxq5Zg4","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/s2GVxq5Zg4","expanded_url":"http:\/\/youtube.com\/rebecca","display_url":"youtube.com\/rebecca","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":1054276,"friends_count":6338,"listed_count":4836,"created_at":"Fri Mar 18 21:29:23 +0000 2011","favourites_count":1630,"utc_offset":-25200,"time_zone":"Pacific Time (US & Canada)","geo_enabled":false,"verified":true,"statuses_count":5690,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"FFFFFF","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/378800000055491584\/2d0652b4011e0becf461573a19a0a95e.png","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/378800000055491584\/2d0652b4011e0becf461573a19a0a95e.png","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000152829318\/4c21bddc0e8c673575ae712cb98df39c_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000152829318\/4c21bddc0e8c673575ae712cb98df39c_normal.jpeg","profile_banner_url":"https:\/\/pbs.twimg.com\/profile_banners\/268479992\/1374455381","profile_link_color":"F00534","profile_sidebar_border_color":"000000","profile_sidebar_fill_color":"FFBEB2","profile_text_color":"FF0000","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":102,"favorite_count":523,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[],"media":[{"id":371735796719419392,"id_str":"371735796719419392","indices":[34,56],"media_url":"http:\/\/pbs.twimg.com\/media\/BSirvNHCAAAFjJx.jpg","media_url_https":"https:\/\/pbs.twimg.com\/media\/BSirvNHCAAAFjJx.jpg","url":"http:\/\/t.co\/oWfdWegwNr","display_url":"pic.twitter.com\/oWfdWegwNr","expanded_url":"http:\/\/twitter.com\/MsRebeccaBlack\/status\/371735796715225088\/photo\/1","type":"photo","sizes":{"medium":{"w":600,"h":450,"resize":"fit"},"large":{"w":1024,"h":768,"resize":"fit"},"thumb":{"w":150,"h":150,"resize":"crop"},"small":{"w":340,"h":255,"resize":"fit"}}}]},"favorited":false,"retweeted":false,"possibly_sensitive":false,"lang":"en"} +] diff --git a/Android/06-Notifications/Notifications/res/raw/tswift.txt b/Android/06-Notifications/Notifications/res/raw/tswift.txt new file mode 100644 index 0000000..b74158e --- /dev/null +++ b/Android/06-Notifications/Notifications/res/raw/tswift.txt @@ -0,0 +1,15 @@ +[{"created_at":"Mon Aug 26 04:08:18 +0000 2013","id":371846538727014400,"id_str":"371846538727014400","text":"I love you guys so much.","source":"\u003ca href=\"http:\/\/twitter.com\/download\/iphone\" rel=\"nofollow\"\u003eTwitter for iPhone\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":17919972,"id_str":"17919972","name":"Taylor Swift","screen_name":"taylorswift13","location":"","description":"Happy. Free. Confused. Lonely. \nAt the same time.","url":"http:\/\/t.co\/hZtHeBu93U","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/hZtHeBu93U","expanded_url":"http:\/\/twitter.com\/taylorswift13","display_url":"twitter.com\/taylorswift13","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":33053287,"friends_count":110,"listed_count":112437,"created_at":"Sat Dec 06 10:10:54 +0000 2008","favourites_count":0,"utc_offset":null,"time_zone":null,"geo_enabled":false,"verified":true,"statuses_count":1913,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"C0DEED","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/687293757\/6d2ec27f32fa8cc2fcb7e6a9eada9945.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/687293757\/6d2ec27f32fa8cc2fcb7e6a9eada9945.jpeg","profile_background_tile":false,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/1825696714\/image_normal.jpg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/1825696714\/image_normal.jpg","profile_link_color":"0084B4","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDEEF6","profile_text_color":"333333","profile_use_background_image":false,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":28891,"favorite_count":34056,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[]},"favorited":false,"retweeted":false,"lang":"en"}, +{"created_at":"Sun Aug 25 23:55:12 +0000 2013","id":371782844135505921,"id_str":"371782844135505921","text":"Headed to the VMAs. So. Excited.","source":"\u003ca href=\"http:\/\/twitter.com\/download\/iphone\" rel=\"nofollow\"\u003eTwitter for iPhone\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":17919972,"id_str":"17919972","name":"Taylor Swift","screen_name":"taylorswift13","location":"","description":"Happy. Free. Confused. Lonely. \nAt the same time.","url":"http:\/\/t.co\/hZtHeBu93U","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/hZtHeBu93U","expanded_url":"http:\/\/twitter.com\/taylorswift13","display_url":"twitter.com\/taylorswift13","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":33053287,"friends_count":110,"listed_count":112437,"created_at":"Sat Dec 06 10:10:54 +0000 2008","favourites_count":0,"utc_offset":null,"time_zone":null,"geo_enabled":false,"verified":true,"statuses_count":1913,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"C0DEED","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/687293757\/6d2ec27f32fa8cc2fcb7e6a9eada9945.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/687293757\/6d2ec27f32fa8cc2fcb7e6a9eada9945.jpeg","profile_background_tile":false,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/1825696714\/image_normal.jpg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/1825696714\/image_normal.jpg","profile_link_color":"0084B4","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDEEF6","profile_text_color":"333333","profile_use_background_image":false,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":15734,"favorite_count":19727,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[]},"favorited":false,"retweeted":false,"lang":"en"}, +{"created_at":"Sun Aug 25 11:30:50 +0000 2013","id":371595521397628929,"id_str":"371595521397628929","text":"RT @markvillaver: Taylor Swift & Jennifer Lopez - Jenny from the Block - RED Tour - L.A. Staples Center Sat 8\/24\/2013 http:\/\/t.co\/WUtebAqJk\u2026","source":"\u003ca href=\"http:\/\/twitter.com\/download\/iphone\" rel=\"nofollow\"\u003eTwitter for iPhone\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":17919972,"id_str":"17919972","name":"Taylor Swift","screen_name":"taylorswift13","location":"","description":"Happy. Free. Confused. Lonely. \nAt the same time.","url":"http:\/\/t.co\/hZtHeBu93U","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/hZtHeBu93U","expanded_url":"http:\/\/twitter.com\/taylorswift13","display_url":"twitter.com\/taylorswift13","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":33053287,"friends_count":110,"listed_count":112437,"created_at":"Sat Dec 06 10:10:54 +0000 2008","favourites_count":0,"utc_offset":null,"time_zone":null,"geo_enabled":false,"verified":true,"statuses_count":1913,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"C0DEED","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/687293757\/6d2ec27f32fa8cc2fcb7e6a9eada9945.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/687293757\/6d2ec27f32fa8cc2fcb7e6a9eada9945.jpeg","profile_background_tile":false,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/1825696714\/image_normal.jpg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/1825696714\/image_normal.jpg","profile_link_color":"0084B4","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDEEF6","profile_text_color":"333333","profile_use_background_image":false,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweeted_status":{"created_at":"Sun Aug 25 10:16:54 +0000 2013","id":371576912033755139,"id_str":"371576912033755139","text":"Taylor Swift & Jennifer Lopez - Jenny from the Block - RED Tour - L.A. Staples Center Sat 8\/24\/2013 http:\/\/t.co\/WUtebAqJks via @youtube","source":"\u003ca href=\"http:\/\/twitter.com\/tweetbutton\" rel=\"nofollow\"\u003eTweet Button\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":251833625,"id_str":"251833625","name":"Mark Villaver 24\/7","screen_name":"markvillaver","location":"","description":"","url":null,"entities":{"description":{"urls":[]}},"protected":false,"followers_count":5317,"friends_count":2239,"listed_count":42,"created_at":"Sun Feb 13 23:17:44 +0000 2011","favourites_count":1460,"utc_offset":-36000,"time_zone":"Hawaii","geo_enabled":false,"verified":false,"statuses_count":2727,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"C0DEED","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/725389249\/d0ac6d95f4718b1962632eb8d123fec8.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/725389249\/d0ac6d95f4718b1962632eb8d123fec8.jpeg","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000018911688\/545dfaa8691e3bfb00de44ad1c61b269_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000018911688\/545dfaa8691e3bfb00de44ad1c61b269_normal.jpeg","profile_banner_url":"https:\/\/pbs.twimg.com\/profile_banners\/251833625\/1371703034","profile_link_color":"0084B4","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDEEF6","profile_text_color":"333333","profile_use_background_image":false,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":3213,"favorite_count":3323,"entities":{"hashtags":[],"symbols":[],"urls":[{"url":"http:\/\/t.co\/WUtebAqJks","expanded_url":"http:\/\/www.youtube.com\/watch?v=hX1GruGRefA&sns=tw","display_url":"youtube.com\/watch?v=hX1Gru\u2026","indices":[104,126]}],"user_mentions":[{"screen_name":"YouTube","name":"YouTube","id":10228272,"id_str":"10228272","indices":[131,139]}]},"favorited":false,"retweeted":false,"possibly_sensitive":false,"lang":"en"},"retweet_count":3213,"favorite_count":0,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"markvillaver","name":"Mark Villaver 24\/7","id":251833625,"id_str":"251833625","indices":[3,16]}]},"favorited":false,"retweeted":false,"lang":"en"}, +{"created_at":"Sun Aug 25 06:23:01 +0000 2013","id":371518054363983872,"id_str":"371518054363983872","text":"RT @JLo: @taylorswift13 had so much fun with you tonight!!! #RedTourLA #jennyfromtheblock #hairbrushsongs","source":"\u003ca href=\"http:\/\/twitter.com\/download\/iphone\" rel=\"nofollow\"\u003eTwitter for iPhone\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":17919972,"id_str":"17919972","name":"Taylor Swift","screen_name":"taylorswift13","location":"","description":"Happy. Free. Confused. Lonely. \nAt the same time.","url":"http:\/\/t.co\/hZtHeBu93U","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/hZtHeBu93U","expanded_url":"http:\/\/twitter.com\/taylorswift13","display_url":"twitter.com\/taylorswift13","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":33053287,"friends_count":110,"listed_count":112437,"created_at":"Sat Dec 06 10:10:54 +0000 2008","favourites_count":0,"utc_offset":null,"time_zone":null,"geo_enabled":false,"verified":true,"statuses_count":1913,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"C0DEED","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/687293757\/6d2ec27f32fa8cc2fcb7e6a9eada9945.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/687293757\/6d2ec27f32fa8cc2fcb7e6a9eada9945.jpeg","profile_background_tile":false,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/1825696714\/image_normal.jpg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/1825696714\/image_normal.jpg","profile_link_color":"0084B4","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDEEF6","profile_text_color":"333333","profile_use_background_image":false,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweeted_status":{"created_at":"Sun Aug 25 06:20:02 +0000 2013","id":371517303713587200,"id_str":"371517303713587200","text":"@taylorswift13 had so much fun with you tonight!!! #RedTourLA #jennyfromtheblock #hairbrushsongs","source":"\u003ca href=\"http:\/\/twitter.com\/download\/iphone\" rel=\"nofollow\"\u003eTwitter for iPhone\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":371515507242844160,"in_reply_to_status_id_str":"371515507242844160","in_reply_to_user_id":17919972,"in_reply_to_user_id_str":"17919972","in_reply_to_screen_name":"taylorswift13","user":{"id":85603854,"id_str":"85603854","name":"Jennifer Lopez","screen_name":"JLo","location":"","description":"","url":"http:\/\/t.co\/RGbADx6cyo","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/RGbADx6cyo","expanded_url":"http:\/\/www.jenniferlopez.com\/","display_url":"jenniferlopez.com","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":22763808,"friends_count":330,"listed_count":47023,"created_at":"Tue Oct 27 16:24:51 +0000 2009","favourites_count":12,"utc_offset":-18000,"time_zone":"Quito","geo_enabled":false,"verified":true,"statuses_count":2481,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"000000","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/863017380\/211d66c34680c4210534e87c8cc2ff83.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/863017380\/211d66c34680c4210534e87c8cc2ff83.jpeg","profile_background_tile":false,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000154437136\/a91f81ffa671c0affa78db1f26b49767_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000154437136\/a91f81ffa671c0affa78db1f26b49767_normal.jpeg","profile_banner_url":"https:\/\/pbs.twimg.com\/profile_banners\/85603854\/1367976648","profile_link_color":"A82BA8","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"A29EA8","profile_text_color":"333333","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":4817,"favorite_count":4194,"entities":{"hashtags":[{"text":"RedTourLA","indices":[52,62]},{"text":"jennyfromtheblock","indices":[64,82]},{"text":"hairbrushsongs","indices":[83,98]}],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"taylorswift13","name":"Taylor Swift","id":17919972,"id_str":"17919972","indices":[0,14]}]},"favorited":false,"retweeted":false,"lang":"en"},"retweet_count":4817,"favorite_count":0,"entities":{"hashtags":[{"text":"RedTourLA","indices":[61,71]},{"text":"jennyfromtheblock","indices":[73,91]},{"text":"hairbrushsongs","indices":[92,107]}],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"JLo","name":"Jennifer Lopez","id":85603854,"id_str":"85603854","indices":[3,7]},{"screen_name":"taylorswift13","name":"Taylor Swift","id":17919972,"id_str":"17919972","indices":[9,23]}]},"favorited":false,"retweeted":false,"lang":"en"}, +{"created_at":"Sun Aug 25 06:12:54 +0000 2013","id":371515507242844160,"id_str":"371515507242844160","text":"Sang Jenny From the Block with @JLo tonight at Staples Center. STILL FANGIRLING OUT ABOUT IT.","source":"\u003ca href=\"http:\/\/twitter.com\/download\/iphone\" rel=\"nofollow\"\u003eTwitter for iPhone\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":17919972,"id_str":"17919972","name":"Taylor Swift","screen_name":"taylorswift13","location":"","description":"Happy. Free. Confused. Lonely. \nAt the same time.","url":"http:\/\/t.co\/hZtHeBu93U","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/hZtHeBu93U","expanded_url":"http:\/\/twitter.com\/taylorswift13","display_url":"twitter.com\/taylorswift13","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":33053287,"friends_count":110,"listed_count":112437,"created_at":"Sat Dec 06 10:10:54 +0000 2008","favourites_count":0,"utc_offset":null,"time_zone":null,"geo_enabled":false,"verified":true,"statuses_count":1913,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"C0DEED","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/687293757\/6d2ec27f32fa8cc2fcb7e6a9eada9945.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/687293757\/6d2ec27f32fa8cc2fcb7e6a9eada9945.jpeg","profile_background_tile":false,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/1825696714\/image_normal.jpg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/1825696714\/image_normal.jpg","profile_link_color":"0084B4","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDEEF6","profile_text_color":"333333","profile_use_background_image":false,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":11152,"favorite_count":13256,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"JLo","name":"Jennifer Lopez","id":85603854,"id_str":"85603854","indices":[31,35]}]},"favorited":false,"retweeted":false,"lang":"en"}, +{"created_at":"Sun Aug 25 06:09:52 +0000 2013","id":371514745448194048,"id_str":"371514745448194048","text":"RT @JLo: #Red!!! @taylorswift13 @ STAPLES Center http:\/\/t.co\/iVbun7jXtg","source":"\u003ca href=\"http:\/\/twitter.com\/download\/iphone\" rel=\"nofollow\"\u003eTwitter for iPhone\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":17919972,"id_str":"17919972","name":"Taylor Swift","screen_name":"taylorswift13","location":"","description":"Happy. Free. Confused. Lonely. \nAt the same time.","url":"http:\/\/t.co\/hZtHeBu93U","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/hZtHeBu93U","expanded_url":"http:\/\/twitter.com\/taylorswift13","display_url":"twitter.com\/taylorswift13","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":33053287,"friends_count":110,"listed_count":112437,"created_at":"Sat Dec 06 10:10:54 +0000 2008","favourites_count":0,"utc_offset":null,"time_zone":null,"geo_enabled":false,"verified":true,"statuses_count":1913,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"C0DEED","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/687293757\/6d2ec27f32fa8cc2fcb7e6a9eada9945.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/687293757\/6d2ec27f32fa8cc2fcb7e6a9eada9945.jpeg","profile_background_tile":false,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/1825696714\/image_normal.jpg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/1825696714\/image_normal.jpg","profile_link_color":"0084B4","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDEEF6","profile_text_color":"333333","profile_use_background_image":false,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweeted_status":{"created_at":"Sun Aug 25 05:40:55 +0000 2013","id":371507461200838656,"id_str":"371507461200838656","text":"#Red!!! @taylorswift13 @ STAPLES Center http:\/\/t.co\/iVbun7jXtg","source":"\u003ca href=\"http:\/\/instagram.com\" rel=\"nofollow\"\u003eInstagram\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":85603854,"id_str":"85603854","name":"Jennifer Lopez","screen_name":"JLo","location":"","description":"","url":"http:\/\/t.co\/RGbADx6cyo","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/RGbADx6cyo","expanded_url":"http:\/\/www.jenniferlopez.com\/","display_url":"jenniferlopez.com","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":22763808,"friends_count":330,"listed_count":47023,"created_at":"Tue Oct 27 16:24:51 +0000 2009","favourites_count":12,"utc_offset":-18000,"time_zone":"Quito","geo_enabled":false,"verified":true,"statuses_count":2481,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"000000","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/863017380\/211d66c34680c4210534e87c8cc2ff83.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/863017380\/211d66c34680c4210534e87c8cc2ff83.jpeg","profile_background_tile":false,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000154437136\/a91f81ffa671c0affa78db1f26b49767_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000154437136\/a91f81ffa671c0affa78db1f26b49767_normal.jpeg","profile_banner_url":"https:\/\/pbs.twimg.com\/profile_banners\/85603854\/1367976648","profile_link_color":"A82BA8","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"A29EA8","profile_text_color":"333333","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":3581,"favorite_count":2772,"entities":{"hashtags":[{"text":"Red","indices":[0,4]}],"symbols":[],"urls":[{"url":"http:\/\/t.co\/iVbun7jXtg","expanded_url":"http:\/\/instagram.com\/p\/dbKaY7muIX\/","display_url":"instagram.com\/p\/dbKaY7muIX\/","indices":[40,62]}],"user_mentions":[{"screen_name":"taylorswift13","name":"Taylor Swift","id":17919972,"id_str":"17919972","indices":[8,22]}]},"favorited":false,"retweeted":false,"possibly_sensitive":false,"lang":"en"},"retweet_count":3581,"favorite_count":0,"entities":{"hashtags":[{"text":"Red","indices":[9,13]}],"symbols":[],"urls":[{"url":"http:\/\/t.co\/iVbun7jXtg","expanded_url":"http:\/\/instagram.com\/p\/dbKaY7muIX\/","display_url":"instagram.com\/p\/dbKaY7muIX\/","indices":[49,71]}],"user_mentions":[{"screen_name":"JLo","name":"Jennifer Lopez","id":85603854,"id_str":"85603854","indices":[3,7]},{"screen_name":"taylorswift13","name":"Taylor Swift","id":17919972,"id_str":"17919972","indices":[17,31]}]},"favorited":false,"retweeted":false,"possibly_sensitive":false,"lang":"en"}, +{"created_at":"Sun Aug 25 00:28:48 +0000 2013","id":371428914037411840,"id_str":"371428914037411840","text":"Our last show in LA is tonight. Can't wait to see what's in store......","source":"\u003ca href=\"http:\/\/twitter.com\/download\/iphone\" rel=\"nofollow\"\u003eTwitter for iPhone\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":17919972,"id_str":"17919972","name":"Taylor Swift","screen_name":"taylorswift13","location":"","description":"Happy. Free. Confused. Lonely. \nAt the same time.","url":"http:\/\/t.co\/hZtHeBu93U","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/hZtHeBu93U","expanded_url":"http:\/\/twitter.com\/taylorswift13","display_url":"twitter.com\/taylorswift13","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":33053287,"friends_count":110,"listed_count":112437,"created_at":"Sat Dec 06 10:10:54 +0000 2008","favourites_count":0,"utc_offset":null,"time_zone":null,"geo_enabled":false,"verified":true,"statuses_count":1913,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"C0DEED","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/687293757\/6d2ec27f32fa8cc2fcb7e6a9eada9945.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/687293757\/6d2ec27f32fa8cc2fcb7e6a9eada9945.jpeg","profile_background_tile":false,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/1825696714\/image_normal.jpg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/1825696714\/image_normal.jpg","profile_link_color":"0084B4","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDEEF6","profile_text_color":"333333","profile_use_background_image":false,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":7441,"favorite_count":8290,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[]},"favorited":false,"retweeted":false,"lang":"en"}, +{"created_at":"Sun Aug 25 00:27:47 +0000 2013","id":371428657610244096,"id_str":"371428657610244096","text":"RT @siananderson: List of things I was put on this earth to do - this http:\/\/t.co\/7x4NjvmyhG","source":"\u003ca href=\"http:\/\/twitter.com\/download\/iphone\" rel=\"nofollow\"\u003eTwitter for iPhone\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":17919972,"id_str":"17919972","name":"Taylor Swift","screen_name":"taylorswift13","location":"","description":"Happy. Free. Confused. Lonely. \nAt the same time.","url":"http:\/\/t.co\/hZtHeBu93U","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/hZtHeBu93U","expanded_url":"http:\/\/twitter.com\/taylorswift13","display_url":"twitter.com\/taylorswift13","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":33053287,"friends_count":110,"listed_count":112437,"created_at":"Sat Dec 06 10:10:54 +0000 2008","favourites_count":0,"utc_offset":null,"time_zone":null,"geo_enabled":false,"verified":true,"statuses_count":1913,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"C0DEED","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/687293757\/6d2ec27f32fa8cc2fcb7e6a9eada9945.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/687293757\/6d2ec27f32fa8cc2fcb7e6a9eada9945.jpeg","profile_background_tile":false,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/1825696714\/image_normal.jpg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/1825696714\/image_normal.jpg","profile_link_color":"0084B4","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDEEF6","profile_text_color":"333333","profile_use_background_image":false,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweeted_status":{"created_at":"Sat Aug 24 21:34:05 +0000 2013","id":371384944947646464,"id_str":"371384944947646464","text":"List of things I was put on this earth to do - this \ud83d\ude02\u2764 http:\/\/t.co\/7x4NjvmyhG","source":"\u003ca href=\"http:\/\/instagram.com\" rel=\"nofollow\"\u003eInstagram\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":38649346,"id_str":"38649346","name":"Sian Anderson","screen_name":"siananderson","location":"The Wilderness","description":"Understated.","url":"http:\/\/t.co\/KilFNMDvrF","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/KilFNMDvrF","expanded_url":"http:\/\/www.siananderson.co.uk","display_url":"siananderson.co.uk","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":8009,"friends_count":627,"listed_count":82,"created_at":"Fri May 08 11:39:37 +0000 2009","favourites_count":334,"utc_offset":3600,"time_zone":"London","geo_enabled":false,"verified":false,"statuses_count":40931,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"000000","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/722816322\/fb72d9d03aeed2786091bddb18e01700.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/722816322\/fb72d9d03aeed2786091bddb18e01700.jpeg","profile_background_tile":false,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000213562407\/5b6da6fc47236e50cd876f542305e4c8_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000213562407\/5b6da6fc47236e50cd876f542305e4c8_normal.jpeg","profile_banner_url":"https:\/\/pbs.twimg.com\/profile_banners\/38649346\/1354023086","profile_link_color":"FF0000","profile_sidebar_border_color":"000000","profile_sidebar_fill_color":"E5507E","profile_text_color":"362720","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":1389,"favorite_count":1355,"entities":{"hashtags":[],"symbols":[],"urls":[{"url":"http:\/\/t.co\/7x4NjvmyhG","expanded_url":"http:\/\/instagram.com\/p\/daUGdGgx1b\/","display_url":"instagram.com\/p\/daUGdGgx1b\/","indices":[55,77]}],"user_mentions":[]},"favorited":false,"retweeted":false,"possibly_sensitive":false,"lang":"en"},"retweet_count":1389,"favorite_count":0,"entities":{"hashtags":[],"symbols":[],"urls":[{"url":"http:\/\/t.co\/7x4NjvmyhG","expanded_url":"http:\/\/instagram.com\/p\/daUGdGgx1b\/","display_url":"instagram.com\/p\/daUGdGgx1b\/","indices":[73,95]}],"user_mentions":[{"screen_name":"siananderson","name":"Sian Anderson","id":38649346,"id_str":"38649346","indices":[3,16]}]},"favorited":false,"retweeted":false,"possibly_sensitive":false,"lang":"en"}, +{"created_at":"Sat Aug 24 19:27:43 +0000 2013","id":371353144187314177,"id_str":"371353144187314177","text":"Now I've seen it through, and now I know the truth... That anything could happen. http:\/\/t.co\/B1V8G55MJM","source":"\u003ca href=\"http:\/\/twitter.com\/download\/iphone\" rel=\"nofollow\"\u003eTwitter for iPhone\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":17919972,"id_str":"17919972","name":"Taylor Swift","screen_name":"taylorswift13","location":"","description":"Happy. Free. Confused. Lonely. \nAt the same time.","url":"http:\/\/t.co\/hZtHeBu93U","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/hZtHeBu93U","expanded_url":"http:\/\/twitter.com\/taylorswift13","display_url":"twitter.com\/taylorswift13","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":33053287,"friends_count":110,"listed_count":112437,"created_at":"Sat Dec 06 10:10:54 +0000 2008","favourites_count":0,"utc_offset":null,"time_zone":null,"geo_enabled":false,"verified":true,"statuses_count":1913,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"C0DEED","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/687293757\/6d2ec27f32fa8cc2fcb7e6a9eada9945.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/687293757\/6d2ec27f32fa8cc2fcb7e6a9eada9945.jpeg","profile_background_tile":false,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/1825696714\/image_normal.jpg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/1825696714\/image_normal.jpg","profile_link_color":"0084B4","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDEEF6","profile_text_color":"333333","profile_use_background_image":false,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":12523,"favorite_count":16640,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[],"media":[{"id":371353144195702784,"id_str":"371353144195702784","indices":[82,104],"media_url":"http:\/\/pbs.twimg.com\/media\/BSdPt5YCYAAETtr.jpg","media_url_https":"https:\/\/pbs.twimg.com\/media\/BSdPt5YCYAAETtr.jpg","url":"http:\/\/t.co\/B1V8G55MJM","display_url":"pic.twitter.com\/B1V8G55MJM","expanded_url":"http:\/\/twitter.com\/taylorswift13\/status\/371353144187314177\/photo\/1","type":"photo","sizes":{"large":{"w":594,"h":395,"resize":"fit"},"thumb":{"w":150,"h":150,"resize":"crop"},"small":{"w":340,"h":226,"resize":"fit"},"medium":{"w":594,"h":395,"resize":"fit"}}}]},"favorited":false,"retweeted":false,"possibly_sensitive":false,"lang":"en"}, +{"created_at":"Sat Aug 24 19:11:06 +0000 2013","id":371348962243919872,"id_str":"371348962243919872","text":"RT @elliegoulding: Still blown away by how incredible the @taylorswift13 show is and how lucky I feel to have been a part of that last night","source":"\u003ca href=\"http:\/\/twitter.com\/download\/iphone\" rel=\"nofollow\"\u003eTwitter for iPhone\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":17919972,"id_str":"17919972","name":"Taylor Swift","screen_name":"taylorswift13","location":"","description":"Happy. Free. Confused. Lonely. \nAt the same time.","url":"http:\/\/t.co\/hZtHeBu93U","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/hZtHeBu93U","expanded_url":"http:\/\/twitter.com\/taylorswift13","display_url":"twitter.com\/taylorswift13","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":33053287,"friends_count":110,"listed_count":112437,"created_at":"Sat Dec 06 10:10:54 +0000 2008","favourites_count":0,"utc_offset":null,"time_zone":null,"geo_enabled":false,"verified":true,"statuses_count":1913,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"C0DEED","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/687293757\/6d2ec27f32fa8cc2fcb7e6a9eada9945.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/687293757\/6d2ec27f32fa8cc2fcb7e6a9eada9945.jpeg","profile_background_tile":false,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/1825696714\/image_normal.jpg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/1825696714\/image_normal.jpg","profile_link_color":"0084B4","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDEEF6","profile_text_color":"333333","profile_use_background_image":false,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweeted_status":{"created_at":"Sat Aug 24 17:50:45 +0000 2013","id":371328739692793856,"id_str":"371328739692793856","text":"Still blown away by how incredible the @taylorswift13 show is and how lucky I feel to have been a part of that last night","source":"\u003ca href=\"http:\/\/www.echofon.com\/\" rel=\"nofollow\"\u003eEchofon\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":20565284,"id_str":"20565284","name":"Ellie Goulding","screen_name":"elliegoulding","location":"London","description":"Do you want my heart between your teeth?","url":"http:\/\/t.co\/wuCRjYFgLH","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/wuCRjYFgLH","expanded_url":"http:\/\/www.elliegoulding.com","display_url":"elliegoulding.com","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":1711103,"friends_count":280,"listed_count":5462,"created_at":"Wed Feb 11 02:15:58 +0000 2009","favourites_count":13,"utc_offset":-18000,"time_zone":"Quito","geo_enabled":false,"verified":true,"statuses_count":9603,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"C0DEED","profile_background_image_url":"http:\/\/a0.twimg.com\/images\/themes\/theme1\/bg.png","profile_background_image_url_https":"https:\/\/si0.twimg.com\/images\/themes\/theme1\/bg.png","profile_background_tile":false,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000124644860\/f6360999eb47d372a235b0da3923b9d3_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000124644860\/f6360999eb47d372a235b0da3923b9d3_normal.jpeg","profile_link_color":"0084B4","profile_sidebar_border_color":"C0DEED","profile_sidebar_fill_color":"DDEEF6","profile_text_color":"333333","profile_use_background_image":true,"default_profile":true,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":4635,"favorite_count":5536,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"taylorswift13","name":"Taylor Swift","id":17919972,"id_str":"17919972","indices":[39,53]}]},"favorited":false,"retweeted":false,"lang":"en"},"retweet_count":4635,"favorite_count":0,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"elliegoulding","name":"Ellie Goulding","id":20565284,"id_str":"20565284","indices":[3,17]},{"screen_name":"taylorswift13","name":"Taylor Swift","id":17919972,"id_str":"17919972","indices":[58,72]}]},"favorited":false,"retweeted":false,"lang":"en"}, +{"created_at":"Sat Aug 24 07:41:13 +0000 2013","id":371175345254170625,"id_str":"371175345254170625","text":"RT @elliegoulding: So.much.fun. Love that girl http:\/\/t.co\/AzmX6SsQeb","source":"\u003ca href=\"http:\/\/twitter.com\/download\/iphone\" rel=\"nofollow\"\u003eTwitter for iPhone\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":17919972,"id_str":"17919972","name":"Taylor Swift","screen_name":"taylorswift13","location":"","description":"Happy. Free. Confused. Lonely. \nAt the same time.","url":"http:\/\/t.co\/hZtHeBu93U","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/hZtHeBu93U","expanded_url":"http:\/\/twitter.com\/taylorswift13","display_url":"twitter.com\/taylorswift13","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":33053287,"friends_count":110,"listed_count":112437,"created_at":"Sat Dec 06 10:10:54 +0000 2008","favourites_count":0,"utc_offset":null,"time_zone":null,"geo_enabled":false,"verified":true,"statuses_count":1913,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"C0DEED","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/687293757\/6d2ec27f32fa8cc2fcb7e6a9eada9945.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/687293757\/6d2ec27f32fa8cc2fcb7e6a9eada9945.jpeg","profile_background_tile":false,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/1825696714\/image_normal.jpg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/1825696714\/image_normal.jpg","profile_link_color":"0084B4","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDEEF6","profile_text_color":"333333","profile_use_background_image":false,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweeted_status":{"created_at":"Sat Aug 24 06:46:29 +0000 2013","id":371161572628242432,"id_str":"371161572628242432","text":"So.much.fun. Love that girl http:\/\/t.co\/AzmX6SsQeb","source":"\u003ca href=\"http:\/\/instagram.com\" rel=\"nofollow\"\u003eInstagram\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":20565284,"id_str":"20565284","name":"Ellie Goulding","screen_name":"elliegoulding","location":"London","description":"Do you want my heart between your teeth?","url":"http:\/\/t.co\/wuCRjYFgLH","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/wuCRjYFgLH","expanded_url":"http:\/\/www.elliegoulding.com","display_url":"elliegoulding.com","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":1711103,"friends_count":280,"listed_count":5462,"created_at":"Wed Feb 11 02:15:58 +0000 2009","favourites_count":13,"utc_offset":-18000,"time_zone":"Quito","geo_enabled":false,"verified":true,"statuses_count":9603,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"C0DEED","profile_background_image_url":"http:\/\/a0.twimg.com\/images\/themes\/theme1\/bg.png","profile_background_image_url_https":"https:\/\/si0.twimg.com\/images\/themes\/theme1\/bg.png","profile_background_tile":false,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000124644860\/f6360999eb47d372a235b0da3923b9d3_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000124644860\/f6360999eb47d372a235b0da3923b9d3_normal.jpeg","profile_link_color":"0084B4","profile_sidebar_border_color":"C0DEED","profile_sidebar_fill_color":"DDEEF6","profile_text_color":"333333","profile_use_background_image":true,"default_profile":true,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":4879,"favorite_count":4568,"entities":{"hashtags":[],"symbols":[],"urls":[{"url":"http:\/\/t.co\/AzmX6SsQeb","expanded_url":"http:\/\/instagram.com\/p\/dYukOeTfdB\/","display_url":"instagram.com\/p\/dYukOeTfdB\/","indices":[28,50]}],"user_mentions":[]},"favorited":false,"retweeted":false,"possibly_sensitive":false,"lang":"en"},"retweet_count":4879,"favorite_count":0,"entities":{"hashtags":[],"symbols":[],"urls":[{"url":"http:\/\/t.co\/AzmX6SsQeb","expanded_url":"http:\/\/instagram.com\/p\/dYukOeTfdB\/","display_url":"instagram.com\/p\/dYukOeTfdB\/","indices":[47,69]}],"user_mentions":[{"screen_name":"elliegoulding","name":"Ellie Goulding","id":20565284,"id_str":"20565284","indices":[3,17]}]},"favorited":false,"retweeted":false,"possibly_sensitive":false,"lang":"en"}, +{"created_at":"Sat Aug 24 07:11:11 +0000 2013","id":371167788435394560,"id_str":"371167788435394560","text":"So.. Anything could happen at one of our LA shows. @elliegoulding showed up to sing 'anything could happen'! 15,000 person dance party.","source":"\u003ca href=\"http:\/\/twitter.com\/download\/iphone\" rel=\"nofollow\"\u003eTwitter for iPhone\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":17919972,"id_str":"17919972","name":"Taylor Swift","screen_name":"taylorswift13","location":"","description":"Happy. Free. Confused. Lonely. \nAt the same time.","url":"http:\/\/t.co\/hZtHeBu93U","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/hZtHeBu93U","expanded_url":"http:\/\/twitter.com\/taylorswift13","display_url":"twitter.com\/taylorswift13","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":33053287,"friends_count":110,"listed_count":112437,"created_at":"Sat Dec 06 10:10:54 +0000 2008","favourites_count":0,"utc_offset":null,"time_zone":null,"geo_enabled":false,"verified":true,"statuses_count":1913,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"C0DEED","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/687293757\/6d2ec27f32fa8cc2fcb7e6a9eada9945.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/687293757\/6d2ec27f32fa8cc2fcb7e6a9eada9945.jpeg","profile_background_tile":false,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/1825696714\/image_normal.jpg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/1825696714\/image_normal.jpg","profile_link_color":"0084B4","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDEEF6","profile_text_color":"333333","profile_use_background_image":false,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":9416,"favorite_count":11018,"entities":{"hashtags":[],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"elliegoulding","name":"Ellie Goulding","id":20565284,"id_str":"20565284","indices":[51,65]}]},"favorited":false,"retweeted":false,"lang":"en"}, +{"created_at":"Fri Aug 23 01:07:20 +0000 2013","id":370713835423805440,"id_str":"370713835423805440","text":"RT @MTVNews: #IKnewYouWereTrouble co-star @reevecarney takes us through @taylorswift13's #VMA-nom vid frame-by-frame! http:\/\/t.co\/3JhEJt34tH","source":"\u003ca href=\"http:\/\/twitter.com\/download\/iphone\" rel=\"nofollow\"\u003eTwitter for iPhone\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":17919972,"id_str":"17919972","name":"Taylor Swift","screen_name":"taylorswift13","location":"","description":"Happy. Free. Confused. Lonely. \nAt the same time.","url":"http:\/\/t.co\/hZtHeBu93U","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/hZtHeBu93U","expanded_url":"http:\/\/twitter.com\/taylorswift13","display_url":"twitter.com\/taylorswift13","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":33053287,"friends_count":110,"listed_count":112437,"created_at":"Sat Dec 06 10:10:54 +0000 2008","favourites_count":0,"utc_offset":null,"time_zone":null,"geo_enabled":false,"verified":true,"statuses_count":1913,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"C0DEED","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/687293757\/6d2ec27f32fa8cc2fcb7e6a9eada9945.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/687293757\/6d2ec27f32fa8cc2fcb7e6a9eada9945.jpeg","profile_background_tile":false,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/1825696714\/image_normal.jpg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/1825696714\/image_normal.jpg","profile_link_color":"0084B4","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDEEF6","profile_text_color":"333333","profile_use_background_image":false,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweeted_status":{"created_at":"Thu Aug 22 23:25:36 +0000 2013","id":370688232658567168,"id_str":"370688232658567168","text":"#IKnewYouWereTrouble co-star @reevecarney takes us through @taylorswift13's #VMA-nom vid frame-by-frame! http:\/\/t.co\/3JhEJt34tH","source":"\u003ca href=\"http:\/\/www.hootsuite.com\" rel=\"nofollow\"\u003eHootSuite\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":40076725,"id_str":"40076725","name":"MTV News","screen_name":"MTVNews","location":"","description":"Music, movie and celebs news fresh to your stream. You follow?\r\nhttp:\/\/t.co\/BblMJWnRgz","url":"http:\/\/t.co\/xXjjZBisRH","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/xXjjZBisRH","expanded_url":"http:\/\/www.mtv.com\/news\/","display_url":"mtv.com\/news\/","indices":[0,22]}]},"description":{"urls":[{"url":"http:\/\/t.co\/BblMJWnRgz","expanded_url":"http:\/\/www.facebook.com\/mtvnews","display_url":"facebook.com\/mtvnews","indices":[64,86]}]}},"protected":false,"followers_count":2187433,"friends_count":8026,"listed_count":8371,"created_at":"Thu May 14 20:33:18 +0000 2009","favourites_count":272,"utc_offset":-14400,"time_zone":"Eastern Time (US & Canada)","geo_enabled":true,"verified":true,"statuses_count":36500,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"00BBE4","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/847394289\/924b156780de156f7cbb0a2a3d778fb3.gif","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/847394289\/924b156780de156f7cbb0a2a3d778fb3.gif","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/378800000182065288\/d38422abc7ff0be9396608dda335069e_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/378800000182065288\/d38422abc7ff0be9396608dda335069e_normal.jpeg","profile_banner_url":"https:\/\/pbs.twimg.com\/profile_banners\/40076725\/1377106011","profile_link_color":"0084B4","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"C0DFEC","profile_text_color":"333333","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":2771,"favorite_count":2017,"entities":{"hashtags":[{"text":"IKnewYouWereTrouble","indices":[0,20]},{"text":"VMA","indices":[76,80]}],"symbols":[],"urls":[{"url":"http:\/\/t.co\/3JhEJt34tH","expanded_url":"http:\/\/on.mtv.com\/176Q3CJ","display_url":"on.mtv.com\/176Q3CJ","indices":[105,127]}],"user_mentions":[{"screen_name":"reevecarney","name":"Reeve Carney","id":29158294,"id_str":"29158294","indices":[29,41]},{"screen_name":"taylorswift13","name":"Taylor Swift","id":17919972,"id_str":"17919972","indices":[59,73]}]},"favorited":false,"retweeted":false,"possibly_sensitive":false,"lang":"en"},"retweet_count":2771,"favorite_count":0,"entities":{"hashtags":[{"text":"IKnewYouWereTrouble","indices":[13,33]},{"text":"VMA","indices":[89,93]}],"symbols":[],"urls":[{"url":"http:\/\/t.co\/3JhEJt34tH","expanded_url":"http:\/\/on.mtv.com\/176Q3CJ","display_url":"on.mtv.com\/176Q3CJ","indices":[118,140]}],"user_mentions":[{"screen_name":"MTVNews","name":"MTV News","id":40076725,"id_str":"40076725","indices":[3,11]},{"screen_name":"reevecarney","name":"Reeve Carney","id":29158294,"id_str":"29158294","indices":[42,54]},{"screen_name":"taylorswift13","name":"Taylor Swift","id":17919972,"id_str":"17919972","indices":[72,86]}]},"favorited":false,"retweeted":false,"possibly_sensitive":false,"lang":"en"}, +{"created_at":"Thu Aug 22 04:52:01 +0000 2013","id":370407988537733120,"id_str":"370407988537733120","text":"RT @teganandsara: Remember when we played #closer with @taylorswift13 yesterday? Ya. Me too. Living the dream. Seriously. Feel so lucky. Th\u2026","source":"\u003ca href=\"http:\/\/twitter.com\/download\/iphone\" rel=\"nofollow\"\u003eTwitter for iPhone\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":17919972,"id_str":"17919972","name":"Taylor Swift","screen_name":"taylorswift13","location":"","description":"Happy. Free. Confused. Lonely. \nAt the same time.","url":"http:\/\/t.co\/hZtHeBu93U","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/hZtHeBu93U","expanded_url":"http:\/\/twitter.com\/taylorswift13","display_url":"twitter.com\/taylorswift13","indices":[0,22]}]},"description":{"urls":[]}},"protected":false,"followers_count":33053287,"friends_count":110,"listed_count":112437,"created_at":"Sat Dec 06 10:10:54 +0000 2008","favourites_count":0,"utc_offset":null,"time_zone":null,"geo_enabled":false,"verified":true,"statuses_count":1913,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"C0DEED","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/687293757\/6d2ec27f32fa8cc2fcb7e6a9eada9945.jpeg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/687293757\/6d2ec27f32fa8cc2fcb7e6a9eada9945.jpeg","profile_background_tile":false,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/1825696714\/image_normal.jpg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/1825696714\/image_normal.jpg","profile_link_color":"0084B4","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDEEF6","profile_text_color":"333333","profile_use_background_image":false,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweeted_status":{"created_at":"Thu Aug 22 04:32:22 +0000 2013","id":370403043881152512,"id_str":"370403043881152512","text":"Remember when we played #closer with @taylorswift13 yesterday? Ya. Me too. Living the dream. Seriously. Feel so lucky. Thank u. Everyone.","source":"\u003ca href=\"http:\/\/www.twitter.com\" rel=\"nofollow\"\u003eTwitter for BlackBerry\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"user":{"id":21362105,"id_str":"21362105","name":"Tegan and Sara","screen_name":"teganandsara","location":"Vancouver\/Montreal","description":"Our new album Heartthrob is now available worldwide! Get it on iTunes! http:\/\/t.co\/5SB6W5ga","url":"http:\/\/t.co\/UU0T3kcm64","entities":{"url":{"urls":[{"url":"http:\/\/t.co\/UU0T3kcm64","expanded_url":"http:\/\/www.teganandsara.com","display_url":"teganandsara.com","indices":[0,22]}]},"description":{"urls":[{"url":"http:\/\/t.co\/5SB6W5ga","expanded_url":"http:\/\/smarturl.it\/jp19p0","display_url":"smarturl.it\/jp19p0","indices":[71,91]}]}},"protected":false,"followers_count":335942,"friends_count":965,"listed_count":6105,"created_at":"Fri Feb 20 01:32:01 +0000 2009","favourites_count":2,"utc_offset":-25200,"time_zone":"Pacific Time (US & Canada)","geo_enabled":false,"verified":true,"statuses_count":6510,"lang":"en","contributors_enabled":false,"is_translator":false,"profile_background_color":"413837","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/837575683\/a9dd1a071a99fae8d9b2419074b90601.png","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/837575683\/a9dd1a071a99fae8d9b2419074b90601.png","profile_background_tile":true,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/3634227844\/80ec9e2b7f34deb4723eca0b6615c061_normal.jpeg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/3634227844\/80ec9e2b7f34deb4723eca0b6615c061_normal.jpeg","profile_banner_url":"https:\/\/pbs.twimg.com\/profile_banners\/21362105\/1365451128","profile_link_color":"7B6BA0","profile_sidebar_border_color":"FFFFFF","profile_sidebar_fill_color":"DDFFCC","profile_text_color":"333333","profile_use_background_image":true,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":false,"notifications":null},"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":2840,"favorite_count":3188,"entities":{"hashtags":[{"text":"closer","indices":[24,31]}],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"taylorswift13","name":"Taylor Swift","id":17919972,"id_str":"17919972","indices":[37,51]}]},"favorited":false,"retweeted":false,"lang":"en"},"retweet_count":2840,"favorite_count":0,"entities":{"hashtags":[{"text":"closer","indices":[42,49]}],"symbols":[],"urls":[],"user_mentions":[{"screen_name":"teganandsara","name":"Tegan and Sara","id":21362105,"id_str":"21362105","indices":[3,16]},{"screen_name":"taylorswift13","name":"Taylor Swift","id":17919972,"id_str":"17919972","indices":[55,69]}]},"favorited":false,"retweeted":false,"lang":"en"} +] diff --git a/Android/06-Notifications/Notifications/res/values/dimens.xml b/Android/06-Notifications/Notifications/res/values/dimens.xml new file mode 100644 index 0000000..55c1e59 --- /dev/null +++ b/Android/06-Notifications/Notifications/res/values/dimens.xml @@ -0,0 +1,7 @@ +<resources> + + <!-- Default screen margins, per the Android Design guidelines. --> + <dimen name="activity_horizontal_margin">16dp</dimen> + <dimen name="activity_vertical_margin">16dp</dimen> + +</resources> diff --git a/Android/06-Notifications/Notifications/res/values/strings.xml b/Android/06-Notifications/Notifications/res/values/strings.xml new file mode 100644 index 0000000..cd1679d --- /dev/null +++ b/Android/06-Notifications/Notifications/res/values/strings.xml @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="utf-8"?> +<resources> + + <string name="app_name">NotificationsLab</string> + <string name="greeting">Please wait while we download the Tweets!</string> + <string name="menu_settings">Settings</string> + <string name="title_activity_friends_fragment">FriendsFragment</string> + <string name="title_activity_feed_fragment">FeedFragment</string> + <string name="title_activity_test_front_end">TestFrontEndActivity</string> + <string name="action_settings">Settings</string> + <string name="hello_world">Hello world!</string> + <string name="start_main_activity">Start Main Activity</string> + <string name="make_tweets_old">Make Tweets Old</string> + <string name="make_tweets_new">Make Tweets New</string> + +</resources>
\ No newline at end of file diff --git a/Android/06-Notifications/Notifications/res/values/styles.xml b/Android/06-Notifications/Notifications/res/values/styles.xml new file mode 100644 index 0000000..4a10ca4 --- /dev/null +++ b/Android/06-Notifications/Notifications/res/values/styles.xml @@ -0,0 +1,20 @@ +<resources> + + <!-- + Base application theme, dependent on API level. This theme is replaced + by AppBaseTheme from res/values-vXX/styles.xml on newer devices. + --> + <style name="AppBaseTheme" parent="android:Theme.Light"> + <!-- + Theme customizations available in newer API levels can go in + res/values-vXX/styles.xml, while customizations related to + backward-compatibility can go here. + --> + </style> + + <!-- Application theme. --> + <style name="AppTheme" parent="AppBaseTheme"> + <!-- All customizations that are NOT specific to a particular API-level can go here. --> + </style> + +</resources>
\ No newline at end of file diff --git a/Android/06-Notifications/Notifications/src/course/labs/notificationslab/DownloaderTask.java b/Android/06-Notifications/Notifications/src/course/labs/notificationslab/DownloaderTask.java new file mode 100644 index 0000000..b792b38 --- /dev/null +++ b/Android/06-Notifications/Notifications/src/course/labs/notificationslab/DownloaderTask.java @@ -0,0 +1,217 @@ +package course.labs.notificationslab; + +import java.io.BufferedReader; +import java.io.BufferedWriter; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.io.OutputStreamWriter; +import java.io.PrintWriter; +import java.net.URL; + +import android.app.Activity; +import android.app.Notification; +import android.app.NotificationManager; +import android.app.PendingIntent; +import android.content.BroadcastReceiver; +import android.content.Context; +import android.content.Intent; +import android.os.AsyncTask; +import android.util.Log; +import android.widget.RemoteViews; + +public class DownloaderTask extends AsyncTask<String, Void, String[]> { + + private static final int SIM_NETWORK_DELAY = 5000; + private static final String TAG = "Lab-Notifications"; + private final int MY_NOTIFICATION_ID = 11151990; + private String mFeeds[] = new String[3]; + private MainActivity mParentActivity; + private Context mApplicationContext; + + // Change this variable to false if you do not have a stable network + // connection + private static final boolean HAS_NETWORK_CONNECTION = true; + + // Raw feed file IDs used if you do not have a stable connection + public static final int txtFeeds[] = { R.raw.tswift, R.raw.rblack, R.raw.lgaga }; + + // Constructor + public DownloaderTask(MainActivity parentActivity) { + super(); + mParentActivity = parentActivity; + mApplicationContext = parentActivity.getApplicationContext(); + } + + @Override + protected String[] doInBackground(String... urlParameters) { + log("Entered doInBackground()"); + return download(urlParameters); + } + + private String[] download(String urlParameters[]) { + + boolean downloadCompleted = false; + + try { + + for (int idx = 0; idx < urlParameters.length; idx++) { + + URL url = new URL(urlParameters[idx]); + try { + Thread.sleep(SIM_NETWORK_DELAY); + } catch (InterruptedException e) { + e.printStackTrace(); + } + + InputStream inputStream; + BufferedReader in; + + // Alternative for students without + // a network connection + if (HAS_NETWORK_CONNECTION) { + inputStream = url.openStream(); + in = new BufferedReader(new InputStreamReader(inputStream)); + } else { + inputStream = mApplicationContext.getResources().openRawResource(txtFeeds[idx]); + in = new BufferedReader(new InputStreamReader(inputStream)); + } + + String readLine; + StringBuffer buf = new StringBuffer(); + + while ((readLine = in.readLine()) != null) { + buf.append(readLine); + } + + mFeeds[idx] = buf.toString(); + + if (null != in) { + in.close(); + } + } + + downloadCompleted = true; + + } catch (IOException e) { + e.printStackTrace(); + } + + log("Tweet Download Completed:" + downloadCompleted); + + notify(downloadCompleted); + + return mFeeds; + } + + // Call back to the MainActivity to update the feed display + @Override + protected void onPostExecute(String[] result) { + super.onPostExecute(result); + + if (mParentActivity != null) { + mParentActivity.setRefreshed(result); + } + + } + + // If necessary, notifies the user that the tweet downloads are complete. + // Sends an ordered broadcast back to the BroadcastReceiver in MainActivity + // to determine whether the notification is necessary. + private void notify(final boolean success) { + log("Entered notify()"); + final Intent restartMainActivtyIntent = new Intent(mApplicationContext, MainActivity.class); + restartMainActivtyIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + + if (success) { + // Save tweets to a file + saveTweetsToFile(); + } + + // Sends an ordered broadcast to determine whether MainActivity is + // active and in the foreground. Creates a new BroadcastReceiver + // to receive a result indicating the state of MainActivity + + // The Action for this broadcast Intent is MainActivity.DATA_REFRESHED_ACTION + // The result Activity.RESULT_OK, indicates that MainActivity is active and + // in the foreground. + mApplicationContext.sendOrderedBroadcast( + new Intent(MainActivity.DATA_REFRESHED_ACTION), null, new BroadcastReceiver() { + + final String failMsg = "Download has failed. Please retry Later."; + final String successMsg = "Download completed successfully."; + + @Override + public void onReceive(Context context, Intent intent) { + + log("Entered result receiver's onReceive() method"); + + // TODO: Check whether the result code is RESULT_OK + + if (/*change this*/ true) { + + // TODO: If so, create a PendingIntent using the + // restartMainActivityIntent and set its flags + // to FLAG_UPDATE_CURRENT + + final PendingIntent pendingIntent = null; + + // Uses R.layout.custom_notification for the + // layout of the notification View. The xml + // file is in res/layout/custom_notification.xml + RemoteViews mContentView = new RemoteViews( + mApplicationContext.getPackageName(), + R.layout.custom_notification); + + // TODO: Set the notification View's text to + // reflect whether or the download completed + // successfully + + // TODO: Use the Notification.Builder class to + // create the Notification. You will have to set + // several pieces of information. You can use + // android.R.drawable.stat_sys_warning + // for the small icon. You should also setAutoCancel(true). + + Notification.Builder notificationBuilder = null; + + // TODO: Send the notification + + log("Notification Area Notification sent"); + } + } + }, null, 0, null, null); + } + + // Saves the tweets to a file + private void saveTweetsToFile() { + PrintWriter writer = null; + try { + FileOutputStream fos = mApplicationContext.openFileOutput( + MainActivity.TWEET_FILENAME, Context.MODE_PRIVATE); + writer = new PrintWriter(new BufferedWriter(new OutputStreamWriter( + fos))); + + for (String s : mFeeds) { + writer.println(s); + } + } catch (IOException e) { + e.printStackTrace(); + } finally { + if (null != writer) { + writer.close(); + } + } + } + + // Simplified log output method + private void log(String msg) { + try { + Thread.sleep(500); + } catch (InterruptedException e) { + e.printStackTrace(); + } + Log.i(TAG, msg); + } +} diff --git a/Android/06-Notifications/Notifications/src/course/labs/notificationslab/FeedFragment.java b/Android/06-Notifications/Notifications/src/course/labs/notificationslab/FeedFragment.java new file mode 100644 index 0000000..549524a --- /dev/null +++ b/Android/06-Notifications/Notifications/src/course/labs/notificationslab/FeedFragment.java @@ -0,0 +1,35 @@ +package course.labs.notificationslab; + +import android.app.Fragment; +import android.os.Bundle; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.TextView; + +public class FeedFragment extends Fragment { + + private TextView mTextView; + + @Override + public void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + } + + @Override + public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { + return inflater.inflate(R.layout.feed, container, false); + } + + @Override + public void onActivityCreated(Bundle savedInstanceState) { + super.onActivityCreated(savedInstanceState); + mTextView = (TextView) getView().findViewById(R.id.feed_view); + } + + void update(String feed) { + if (null != mTextView) { + mTextView.setText(feed); + } + } +} diff --git a/Android/06-Notifications/Notifications/src/course/labs/notificationslab/FriendsFragment.java b/Android/06-Notifications/Notifications/src/course/labs/notificationslab/FriendsFragment.java new file mode 100644 index 0000000..b90f8d3 --- /dev/null +++ b/Android/06-Notifications/Notifications/src/course/labs/notificationslab/FriendsFragment.java @@ -0,0 +1,44 @@ +package course.labs.notificationslab; + +import android.app.Activity; +import android.app.ListFragment; +import android.os.Bundle; +import android.view.View; +import android.widget.ArrayAdapter; +import android.widget.ListView; + +public class FriendsFragment extends ListFragment { + + private SelectionListener mCallback; + + @Override + public void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setListAdapter(new ArrayAdapter<String>(getActivity(), android.R.layout.simple_list_item_1, MainActivity.FRIENDS)); + } + + @Override + public void onAttach(Activity activity) { + super.onAttach(activity); + + // This makes sure that the container activity has implemented + // the callback interface. If not, it throws an exception + try { + mCallback = (SelectionListener) activity; + } catch (ClassCastException e) { + throw new ClassCastException(activity.toString() + " must implement SelectionListener"); + } + } + + @Override + public void onActivityCreated(Bundle savedInstanceState) { + super.onActivityCreated(savedInstanceState); + getListView().setChoiceMode(ListView.CHOICE_MODE_SINGLE); + } + + @Override + public void onListItemClick(ListView l, View view, int position, long id) { + // Send the event to the host activity + mCallback.onItemSelected(position); + } +} diff --git a/Android/06-Notifications/Notifications/src/course/labs/notificationslab/MainActivity.java b/Android/06-Notifications/Notifications/src/course/labs/notificationslab/MainActivity.java new file mode 100644 index 0000000..eebf924 --- /dev/null +++ b/Android/06-Notifications/Notifications/src/course/labs/notificationslab/MainActivity.java @@ -0,0 +1,235 @@ +package course.labs.notificationslab; + +import java.io.BufferedReader; +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.io.InputStreamReader; + +import org.json.JSONArray; +import org.json.JSONException; +import org.json.JSONObject; + +import android.app.Activity; +import android.app.FragmentManager; +import android.app.FragmentTransaction; +import android.content.BroadcastReceiver; +import android.content.Context; +import android.content.Intent; +import android.content.IntentFilter; +import android.os.Bundle; +import android.util.Log; + +public class MainActivity extends Activity implements SelectionListener { + + public static final String TWEET_FILENAME = "tweets.txt"; + public static final String[] FRIENDS = { "taylorswift13", "msrebeccablack", "ladygaga" }; + public static final String DATA_REFRESHED_ACTION = "course.labs.notificationslab.DATA_REFRESHED"; + + private static final int NUM_FRIENDS = 3; + private static final String URL_LGAGA = "https://d396qusza40orc.cloudfront.net/android%2FLabs%2FUserNotifications%2Fladygaga.txt"; + private static final String URL_RBLACK = "https://d396qusza40orc.cloudfront.net/android%2FLabs%2FUserNotifications%2Frebeccablack.txt"; + private static final String URL_TSWIFT = "https://d396qusza40orc.cloudfront.net/android%2FLabs%2FUserNotifications%2Ftaylorswift.txt"; + private static final String TAG = "Lab-Notifications"; + private static final long TWO_MIN = 2 * 60 * 1000; + private static final int UNSELECTED = -1; + + private FragmentManager mFragmentManager; + private FriendsFragment mFriendsFragment; + private boolean mIsFresh; + private BroadcastReceiver mRefreshReceiver; + private int mFeedSelected = UNSELECTED; + private FeedFragment mFeedFragment; + private String[] mRawFeeds = new String[3]; + private String[] mProcessedFeeds = new String[3]; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_main); + mFragmentManager = getFragmentManager(); + addFriendsFragment(); + // The feed is fresh if it was downloaded less than 2 minutes ago + mIsFresh = (System.currentTimeMillis() - getFileStreamPath( TWEET_FILENAME).lastModified()) < TWO_MIN; + ensureData(); + } + + // Add Friends Fragment to Activity + private void addFriendsFragment() { + mFriendsFragment = new FriendsFragment(); + mFriendsFragment.setArguments(getIntent().getExtras()); + FragmentTransaction transaction = mFragmentManager.beginTransaction(); + transaction.add(R.id.fragment_container, mFriendsFragment); + transaction.commit(); + } + + // If stored Tweets are not fresh, reload them from network + // Otherwise, load them from file + private void ensureData() { + + log("In ensureData(), mIsFresh:" + mIsFresh); + + if (!mIsFresh) { + // TODO: + // Show a Toast Notification to inform user that + // the app is "Downloading Tweets from Network" + log ("Issuing Toast Message"); + + // TODO: + // Start new AsyncTask to download Tweets from network + + // Set up a BroadcastReceiver to receive an Intent when download + // finishes. + mRefreshReceiver = new BroadcastReceiver() { + @Override + public void onReceive(Context context, Intent intent) { + log("BroadcastIntent received in MainActivity"); + // TODO: + // Check to make sure this is an ordered broadcast + // Let sender know that the Intent was received + // by setting result code to RESULT_OK + } + }; + } else { + loadTweetsFromFile(); + parseJSON(); + updateFeed(); + } + } + + // Called when new Tweets have been downloaded + public void setRefreshed(String[] feeds) { + mRawFeeds[0] = feeds[0]; + mRawFeeds[1] = feeds[1]; + mRawFeeds[2] = feeds[2]; + + parseJSON(); + updateFeed(); + mIsFresh = true; + }; + + // Called when a Friend is clicked on + @Override + public void onItemSelected(int position) { + mFeedSelected = position; + mFeedFragment = addFeedFragment(); + + if (mIsFresh) { + updateFeed(); + } + } + + // Calls FeedFragement.update, passing in the + // the tweets for the currently selected friend + void updateFeed() { + if (null != mFeedFragment) + mFeedFragment.update(mProcessedFeeds[mFeedSelected]); + } + + // Add FeedFragment to Activity + private FeedFragment addFeedFragment() { + FeedFragment feedFragment; + feedFragment = new FeedFragment(); + + FragmentTransaction transaction = mFragmentManager.beginTransaction(); + + transaction.replace(R.id.fragment_container, feedFragment); + transaction.addToBackStack(null); + + transaction.commit(); + mFragmentManager.executePendingTransactions(); + return feedFragment; + } + + // Register the BroadcastReceiver + @Override + protected void onResume() { + super.onResume(); + // TODO: + // Register the BroadcastReceiver to receive a + // DATA_REFRESHED_ACTION broadcast + } + + @Override + protected void onPause() { + // TODO: + // Unregister the BroadcastReceiver + super.onPause(); + } + + // Convert raw Tweet data (in JSON format) into text for display + public void parseJSON() { + + JSONArray[] JSONFeeds = new JSONArray[NUM_FRIENDS]; + + for (int i = 0; i < NUM_FRIENDS; i++) { + try { + JSONFeeds[i] = new JSONArray(mRawFeeds[i]); + } catch (JSONException e) { + e.printStackTrace(); + } + + String name = ""; + String tweet = ""; + + JSONArray tmp = JSONFeeds[i]; + + // string buffer for twitter feeds + StringBuffer tweetRec = new StringBuffer(""); + + for (int j = 0; j < tmp.length(); j++) { + try { + tweet = tmp.getJSONObject(j).getString("text"); + JSONObject user = (JSONObject) tmp.getJSONObject(j).get( + "user"); + name = user.getString("name"); + + } catch (JSONException e) { + e.printStackTrace(); + } + + tweetRec.append(name + " - " + tweet + "\n\n"); + } + mProcessedFeeds[i] = tweetRec.toString(); + } + } + + // Retrieve feeds text from a file + // Store them in mRawTextFeed[] + private void loadTweetsFromFile() { + BufferedReader reader = null; + + try { + FileInputStream fis = openFileInput(TWEET_FILENAME); + reader = new BufferedReader(new InputStreamReader(fis)); + String s = null; + int i = 0; + while (null != (s = reader.readLine()) && i < NUM_FRIENDS) { + mRawFeeds[i] = s; + i++; + } + } catch (FileNotFoundException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } finally { + if (null != reader) { + try { + reader.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + } + + // Simplified log output method + private void log(String msg) { + try { + Thread.sleep(500); + } catch (InterruptedException e) { + e.printStackTrace(); + } + Log.i(TAG, msg); + } +} diff --git a/Android/06-Notifications/Notifications/src/course/labs/notificationslab/SelectionListener.java b/Android/06-Notifications/Notifications/src/course/labs/notificationslab/SelectionListener.java new file mode 100644 index 0000000..87c9dbe --- /dev/null +++ b/Android/06-Notifications/Notifications/src/course/labs/notificationslab/SelectionListener.java @@ -0,0 +1,5 @@ +package course.labs.notificationslab; + +public interface SelectionListener { + public void onItemSelected(int position); +} diff --git a/Android/06-Notifications/Notifications/src/course/labs/notificationslab/TestFrontEndActivity.java b/Android/06-Notifications/Notifications/src/course/labs/notificationslab/TestFrontEndActivity.java new file mode 100644 index 0000000..72b1a6f --- /dev/null +++ b/Android/06-Notifications/Notifications/src/course/labs/notificationslab/TestFrontEndActivity.java @@ -0,0 +1,114 @@ +package course.labs.notificationslab; + +import java.io.BufferedReader; +import java.io.BufferedWriter; +import java.io.File; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.io.InputStreamReader; +import java.io.OutputStreamWriter; +import java.io.PrintWriter; + +import android.app.Activity; +import android.content.Context; +import android.content.Intent; +import android.content.res.Resources; +import android.os.Bundle; +import android.view.View; +import android.view.View.OnClickListener; +import android.widget.Button; + +public class TestFrontEndActivity extends Activity { + + private final static long DAWN_OF_TIME = 0; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_test_front_end); + + Button ageTweetsButton = (Button) findViewById(R.id.age_tweets_button); + ageTweetsButton.setOnClickListener(new OnClickListener() { + @Override + public void onClick(View v) { + setFileAge(DAWN_OF_TIME); + } + }); + + Button rejuvTweetsButton = (Button) findViewById(R.id.rejuv_tweets_button); + rejuvTweetsButton.setOnClickListener(new OnClickListener() { + @Override + public void onClick(View v) { + setFileAge(System.currentTimeMillis()); + } + }); + + Button startMainActivityButton = (Button) findViewById(R.id.start_main_button); + startMainActivityButton.setOnClickListener(new OnClickListener() { + @Override + public void onClick(View v) { + startActivity(new Intent(TestFrontEndActivity.this, + MainActivity.class)); + } + }); + createTweetFileIfMissing(); + } + + private void createTweetFileIfMissing() { + + String fname = TestFrontEndActivity.this.getFilesDir() + "/" + MainActivity.TWEET_FILENAME; + + File file = new File(fname); + if (!file.exists()) { + + PrintWriter out = null; + BufferedReader in = null; + + try { + out = new PrintWriter(new BufferedWriter( + new OutputStreamWriter(openFileOutput( + MainActivity.TWEET_FILENAME, + Context.MODE_PRIVATE)))); + + for (int resId : DownloaderTask.txtFeeds) { + in = new BufferedReader(new InputStreamReader( + getResources().openRawResource(resId))); + + String line; + StringBuffer buffer = new StringBuffer(); + + while ((line = in.readLine()) != null) { + buffer.append(line); + } + out.println(buffer); + } + } catch (FileNotFoundException e) { + e.printStackTrace(); + } catch (Resources.NotFoundException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } finally { + try { + if (null != in) { + in.close(); + } + if (null != out) { + out.close(); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + } + } + + private void setFileAge(long timestamp) { + String fname = TestFrontEndActivity.this.getFilesDir() + "/" + MainActivity.TWEET_FILENAME; + File file = new File(fname); + if (file.exists()) { + file.setLastModified(timestamp); + } + } + +} diff --git a/Android/06-Notifications/Notifications/tests/AndroidManifest.xml b/Android/06-Notifications/Notifications/tests/AndroidManifest.xml new file mode 100644 index 0000000..7137f9d --- /dev/null +++ b/Android/06-Notifications/Notifications/tests/AndroidManifest.xml @@ -0,0 +1,21 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- package name must be unique so suffix with "tests" so package loader doesn't ignore us --> +<manifest xmlns:android="http://schemas.android.com/apk/res/android" + package="course.labs.notificationslab.tests" + android:versionCode="1" + android:versionName="1.0"> + <!-- We add an application tag here just so that we can indicate that + this package needs to link against the android.test library, + which is needed when building test cases. --> + <application> + <uses-library android:name="android.test.runner" /> + </application> + <!-- + This declares that this application uses the instrumentation test runner targeting + the package of course.labs.notificationslab. To run the tests use the command: + "adb shell am instrument -w course.labs.notificationslab.tests/android.test.InstrumentationTestRunner" + --> + <instrumentation android:name="android.test.InstrumentationTestRunner" + android:targetPackage="course.labs.notificationslab" + android:label="Tests for course.labs.notificationslab"/> +</manifest> diff --git a/Android/06-Notifications/Notifications/tests/ant.properties b/Android/06-Notifications/Notifications/tests/ant.properties new file mode 100644 index 0000000..836edf0 --- /dev/null +++ b/Android/06-Notifications/Notifications/tests/ant.properties @@ -0,0 +1,18 @@ +# This file is used to override default values used by the Ant build system. +# +# This file must be checked into Version Control Systems, as it is +# integral to the build system of your project. + +# This file is only used by the Ant script. + +# You can use this to override default values such as +# 'source.dir' for the location of your java source folder and +# 'out.dir' for the location of your output folder. + +# You can also use it define how the release builds are signed by declaring +# the following properties: +# 'key.store' for the location of your keystore and +# 'key.alias' for the name of the key to use. +# The password will be asked during the build when you use the 'release' target. + +tested.project.dir=../ diff --git a/Android/06-Notifications/Notifications/tests/build.xml b/Android/06-Notifications/Notifications/tests/build.xml new file mode 100644 index 0000000..5759f55 --- /dev/null +++ b/Android/06-Notifications/Notifications/tests/build.xml @@ -0,0 +1,92 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project name="NotificationsTests" default="help"> + + <!-- The local.properties file is created and updated by the 'android' tool. + It contains the path to the SDK. It should *NOT* be checked into + Version Control Systems. --> + <property file="local.properties" /> + + <!-- The ant.properties file can be created by you. It is only edited by the + 'android' tool to add properties to it. + This is the place to change some Ant specific build properties. + Here are some properties you may want to change/update: + + source.dir + The name of the source directory. Default is 'src'. + out.dir + The name of the output directory. Default is 'bin'. + + For other overridable properties, look at the beginning of the rules + files in the SDK, at tools/ant/build.xml + + Properties related to the SDK location or the project target should + be updated using the 'android' tool with the 'update' action. + + This file is an integral part of the build system for your + application and should be checked into Version Control Systems. + + --> + <property file="ant.properties" /> + + <!-- if sdk.dir was not set from one of the property file, then + get it from the ANDROID_HOME env var. + This must be done before we load project.properties since + the proguard config can use sdk.dir --> + <property environment="env" /> + <condition property="sdk.dir" value="${env.ANDROID_HOME}"> + <isset property="env.ANDROID_HOME" /> + </condition> + + <!-- The project.properties file is created and updated by the 'android' + tool, as well as ADT. + + This contains project specific properties such as project target, and library + dependencies. Lower level build properties are stored in ant.properties + (or in .classpath for Eclipse projects). + + This file is an integral part of the build system for your + application and should be checked into Version Control Systems. --> + <loadproperties srcFile="project.properties" /> + + <!-- quick check on sdk.dir --> + <fail + message="sdk.dir is missing. Make sure to generate local.properties using 'android update project' or to inject it through the ANDROID_HOME environment variable." + unless="sdk.dir" + /> + + <!-- + Import per project custom build rules if present at the root of the project. + This is the place to put custom intermediary targets such as: + -pre-build + -pre-compile + -post-compile (This is typically used for code obfuscation. + Compiled code location: ${out.classes.absolute.dir} + If this is not done in place, override ${out.dex.input.absolute.dir}) + -post-package + -post-build + -pre-clean + --> + <import file="custom_rules.xml" optional="true" /> + + <!-- Import the actual build file. + + To customize existing targets, there are two options: + - Customize only one target: + - copy/paste the target into this file, *before* the + <import> task. + - customize it to your needs. + - Customize the whole content of build.xml + - copy/paste the content of the rules files (minus the top node) + into this file, replacing the <import> task. + - customize to your needs. + + *********************** + ****** IMPORTANT ****** + *********************** + In all cases you must update the value of version-tag below to read 'custom' instead of an integer, + in order to avoid having your file be overridden by tools such as "android update project" + --> + <!-- version-tag: 1 --> + <import file="${sdk.dir}/tools/ant/build.xml" /> + +</project> diff --git a/Android/06-Notifications/Notifications/tests/libs/robotium-solo-5.0.2-SNAPSHOT.jar b/Android/06-Notifications/Notifications/tests/libs/robotium-solo-5.0.2-SNAPSHOT.jar Binary files differnew file mode 100644 index 0000000..1df1903 --- /dev/null +++ b/Android/06-Notifications/Notifications/tests/libs/robotium-solo-5.0.2-SNAPSHOT.jar diff --git a/Android/06-Notifications/Notifications/tests/local.properties b/Android/06-Notifications/Notifications/tests/local.properties new file mode 100644 index 0000000..12a0114 --- /dev/null +++ b/Android/06-Notifications/Notifications/tests/local.properties @@ -0,0 +1,10 @@ +# This file is automatically generated by Android Tools. +# Do not modify this file -- YOUR CHANGES WILL BE ERASED! +# +# This file must *NOT* be checked into Version Control Systems, +# as it contains information specific to your local configuration. + +# location of the SDK. This is only used by Ant +# For customization when using a Version Control System, please read the +# header note. +sdk.dir=/opt/android-sdk diff --git a/Android/06-Notifications/Notifications/tests/proguard-project.txt b/Android/06-Notifications/Notifications/tests/proguard-project.txt new file mode 100644 index 0000000..f2fe155 --- /dev/null +++ b/Android/06-Notifications/Notifications/tests/proguard-project.txt @@ -0,0 +1,20 @@ +# To enable ProGuard in your project, edit project.properties +# to define the proguard.config property as described in that file. +# +# Add project specific ProGuard rules here. +# By default, the flags in this file are appended to flags specified +# in ${sdk.dir}/tools/proguard/proguard-android.txt +# You can edit the include path and order by changing the ProGuard +# include property in project.properties. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# Add any project specific keep options here: + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} diff --git a/Android/06-Notifications/Notifications/tests/project.properties b/Android/06-Notifications/Notifications/tests/project.properties new file mode 100644 index 0000000..ce39f2d --- /dev/null +++ b/Android/06-Notifications/Notifications/tests/project.properties @@ -0,0 +1,14 @@ +# This file is automatically generated by Android Tools. +# Do not modify this file -- YOUR CHANGES WILL BE ERASED! +# +# This file must be checked in Version Control Systems. +# +# To customize properties used by the Ant build system edit +# "ant.properties", and override values to adapt the script to your +# project structure. +# +# To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home): +#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt + +# Project target. +target=android-18 diff --git a/Android/06-Notifications/Notifications/tests/src/course/labs/notificationslab/NewFeedTest.java b/Android/06-Notifications/Notifications/tests/src/course/labs/notificationslab/NewFeedTest.java new file mode 100644 index 0000000..57e1a75 --- /dev/null +++ b/Android/06-Notifications/Notifications/tests/src/course/labs/notificationslab/NewFeedTest.java @@ -0,0 +1,94 @@ +package course.labs.notificationslab.test; + +import course.labs.notificationslab.TestFrontEndActivity; +import com.robotium.solo.*; +import android.test.ActivityInstrumentationTestCase2; + +public class NewFeedTest extends +ActivityInstrumentationTestCase2<TestFrontEndActivity> { + private Solo solo; + + public NewFeedTest() { + super(TestFrontEndActivity.class); + } + + public void setUp() throws Exception { + solo = new Solo(getInstrumentation()); + getActivity(); + } + + @Override + public void tearDown() throws Exception { + solo.finishOpenedActivities(); + } + + public void testRun() { + int shortDelay = 2000; + + // Wait for activity: + // 'course.labs.notificationslab.TestFrontEndActivity' + solo.waitForActivity(course.labs.notificationslab.TestFrontEndActivity.class, 2000); + + solo.sleep(shortDelay); + + // Click on Make Tweets New + solo.clickOnView(solo.getView(course.labs.notificationslab.R.id.rejuv_tweets_button)); + + solo.sleep(shortDelay); + + // Click on Start Main Activty + solo.clickOnView(solo.getView(course.labs.notificationslab.R.id.start_main_button)); + + // Wait for activity: 'course.labs.notificationslab.MainActivity' + assertTrue( + "course.labs.notificationslab.MainActivity is not found!", + solo.waitForActivity(course.labs.notificationslab.MainActivity.class)); + + solo.sleep(shortDelay); + + // Click on taylorswift13 + solo.clickOnView(solo.getView(android.R.id.text1)); + + // Assert that: 'feed_view' is shown + assertTrue("feed_view not shown!", solo.waitForView(solo.getView(course.labs.notificationslab.R.id.feed_view))); + + // Assert that: 'Taylor Swift' is shown + assertTrue("'Taylor Swift' is not shown!", solo.searchText("Taylor Swift")); + + solo.sleep(shortDelay); + + // Press menu back key + solo.goBack(); + + solo.sleep(shortDelay); + + // Click on msrebeccablack + solo.clickOnView(solo.getView(android.R.id.text1, 1)); + + // Assert that: 'feed_view' is shown + assertTrue( + "'Rebecca Black' is not shown!", + solo.waitForView(solo + .getView(course.labs.notificationslab.R.id.feed_view))); + + // Assert that: 'feed_view' is shown + assertTrue("'Rebecca Black' is not shown!", solo.searchText("Rebecca Black")); + + solo.sleep(shortDelay); + + // Press menu back key + solo.goBack(); + + // Click on ladygaga + solo.clickOnView(solo.getView(android.R.id.text1, 2)); + + // Assert that: 'feed_view' is shown + assertTrue( + "'feed_view' is not shown!", + solo.waitForView(solo + .getView(course.labs.notificationslab.R.id.feed_view))); + + // Assert that: 'Lady Gaga' is shown + assertTrue("'Lady Gaga' is not shown!", solo.searchText("Lady Gaga")); + } +} diff --git a/Android/06-Notifications/Notifications/tests/src/course/labs/notificationslab/OldFeedNoNotificationTest.java b/Android/06-Notifications/Notifications/tests/src/course/labs/notificationslab/OldFeedNoNotificationTest.java new file mode 100644 index 0000000..d2f3c19 --- /dev/null +++ b/Android/06-Notifications/Notifications/tests/src/course/labs/notificationslab/OldFeedNoNotificationTest.java @@ -0,0 +1,108 @@ +package course.labs.notificationslab.test; + +import course.labs.notificationslab.TestFrontEndActivity; +import com.robotium.solo.*; +import android.test.ActivityInstrumentationTestCase2; + +public class OldFeedNoNotificationTest extends +ActivityInstrumentationTestCase2<TestFrontEndActivity> { + private Solo solo; + + public OldFeedNoNotificationTest() { + super(TestFrontEndActivity.class); + } + + public void setUp() throws Exception { + solo = new Solo(getInstrumentation()); + getActivity(); + } + + @Override + public void tearDown() throws Exception { + solo.finishOpenedActivities(); + } + + public void testRun() { + + int shortDelay = 2000; + int longDelay = 20000; + + // Wait for activity: + // 'course.labs.notificationslab.TestFrontEndActivity' + solo.waitForActivity(course.labs.notificationslab.TestFrontEndActivity.class, 2000); + + // Click on Make Tweets Old + solo.clickOnView(solo.getView(course.labs.notificationslab.R.id.age_tweets_button)); + + solo.sleep(shortDelay); + + // Click on Start Main Activty + solo.clickOnView(solo.getView(course.labs.notificationslab.R.id.start_main_button)); + + // Wait for activity: 'course.labs.notificationslab.MainActivity' + assertTrue( + "course.labs.notificationslab.MainActivity is not found!", + solo.waitForActivity(course.labs.notificationslab.MainActivity.class)); + + solo.sleep(shortDelay); + + // Click on taylorswift13 + solo.clickOnView(solo.getView(android.R.id.text1)); + + // Assert that: 'feed_view' is shown + assertTrue("feed_view' is not shown!", solo.waitForView(solo.getView(course.labs.notificationslab.R.id.feed_view))); + + // Assert that: 'Please wait while we download the Tweets!' is shown + assertTrue("'Please wait while we download the Tweets!' is not shown!", + solo.searchText("Please wait while we download the Tweets!")); + + solo.sleep(shortDelay); + + // Press menu back key + solo.goBack(); + + // Sleep for 20 seconds while URLs are downloaded + solo.sleep(longDelay); + + // Click on taylorswift13 + solo.clickOnView(solo.getView(android.R.id.text1)); + + // Assert that: 'feed_view' is shown + assertTrue("feed_view not shown!", solo.waitForView(solo.getView(course.labs.notificationslab.R.id.feed_view))); + + // Assert that: 'Taylor Swift' is shown + assertTrue("'Taylor Swift' is not shown!",solo.searchText("Taylor Swift")); + + solo.sleep(shortDelay); + + // Press menu back key + solo.goBack(); + + solo.sleep(shortDelay); + + // Click on msrebeccablack + solo.clickOnView(solo.getView(android.R.id.text1, 1)); + + // Assert that: 'feed_view' is shown + assertTrue("'Rebecca Black' is not shown!", solo.waitForView(solo.getView(course.labs.notificationslab.R.id.feed_view))); + + // Assert that: 'feed_view' is shown + assertTrue("'Rebecca Black' is not shown!",solo.searchText("Rebecca Black")); + + solo.sleep(shortDelay); + + // Press menu back key + solo.goBack(); + + solo.sleep(shortDelay); + + // Click on ladygaga + solo.clickOnView(solo.getView(android.R.id.text1, 2)); + + // Assert that: 'feed_view' is shown + assertTrue("'feed_view' is not shown!", solo.waitForView(solo.getView(course.labs.notificationslab.R.id.feed_view))); + + // Assert that: 'Lady Gaga' is shown + assertTrue("'Lady Gaga' is not shown!", solo.searchText("Lady Gaga")); + } +} diff --git a/Android/06-Notifications/Notifications/tests/src/course/labs/notificationslab/OldFeedWithNotificationTest.java b/Android/06-Notifications/Notifications/tests/src/course/labs/notificationslab/OldFeedWithNotificationTest.java new file mode 100644 index 0000000..542a554 --- /dev/null +++ b/Android/06-Notifications/Notifications/tests/src/course/labs/notificationslab/OldFeedWithNotificationTest.java @@ -0,0 +1,77 @@ +package course.labs.notificationslab.test;
+
+import course.labs.notificationslab.TestFrontEndActivity;
+import com.robotium.solo.*;
+import android.test.ActivityInstrumentationTestCase2;
+
+public class OldFeedWithNotificationTest extends
+ActivityInstrumentationTestCase2<TestFrontEndActivity> {
+ private Solo solo;
+
+ public OldFeedWithNotificationTest() {
+ super(TestFrontEndActivity.class);
+ }
+
+ public void setUp() throws Exception {
+ solo = new Solo(getInstrumentation());
+ getActivity();
+ }
+
+ @Override
+ public void tearDown() throws Exception {
+ solo.finishOpenedActivities();
+ }
+
+ public void testRun() {
+ int shortDelay = 2000;
+ int longDelay = 20000;
+
+ // Wait for activity:
+ // 'course.labs.notificationslab.TestFrontEndActivity'
+ solo.waitForActivity(course.labs.notificationslab.TestFrontEndActivity.class, 2000);
+
+ solo.sleep(shortDelay);
+
+ // Click on Make Tweets Old
+ solo.clickOnView(solo.getView(course.labs.notificationslab.R.id.age_tweets_button));
+
+ solo.sleep(shortDelay);
+
+ // Click on Start Main Activty
+ solo.clickOnView(solo.getView(course.labs.notificationslab.R.id.start_main_button));
+
+ // Wait for activity: 'course.labs.notificationslab.MainActivity'
+ assertTrue(
+ "course.labs.notificationslab.MainActivity is not found!",
+ solo.waitForActivity(course.labs.notificationslab.MainActivity.class));
+
+ solo.sleep(shortDelay);
+
+ // Click on taylorswift13
+ solo.clickOnView(solo.getView(android.R.id.text1));
+
+ // Assert that: 'Please wait while we download the Tweets!' is shown
+ assertTrue("'Please wait while we download the Tweets!' is not shown!",
+ solo.waitForView(solo
+ .getView(course.labs.notificationslab.R.id.feed_view)));
+
+ solo.sleep(shortDelay);
+
+ // Press menu back key
+ solo.goBack();
+
+ solo.sleep(shortDelay);
+
+ // Press menu back key
+ solo.goBack();
+
+ // Wait for activity:
+ // 'course.labs.notificationslab.TestFrontEndActivity'
+ assertTrue(
+ "course.labs.notificationslab.TestFrontEndActivity is not found!",
+ solo.waitForActivity(course.labs.notificationslab.TestFrontEndActivity.class));
+
+ // Sleep while twitter feed loads
+ solo.sleep(longDelay);
+ }
+}
diff --git a/Android/06-Notifications/NotificationsLab.pdf b/Android/06-Notifications/NotificationsLab.pdf Binary files differnew file mode 100644 index 0000000..4fe3601 --- /dev/null +++ b/Android/06-Notifications/NotificationsLab.pdf |