aboutsummaryrefslogtreecommitdiff
path: root/notification
diff options
context:
space:
mode:
authorNagesh Susarla <nageshs@google.com>2015-06-11 15:26:36 -0700
committerNagesh Susarla <nageshs@google.com>2015-06-11 15:26:36 -0700
commit501cfdb1d03f8c2b76ed73614e982654f8f470fe (patch)
treef3c8704062a5eb8f4a8247fee1020aa6009c6359 /notification
parentb4617555ffa7011c1aa217eabe4527d4bfc81610 (diff)
downloadandroid-501cfdb1d03f8c2b76ed73614e982654f8f470fe.tar.gz
Don't export broadcast receivers
- receivers are now marked as exported="false" - address issues reported by lint - minor clean up in service to remove stub methods. Bug: 21778002 Change-Id: I7e9929fc46294fe029e62c3b13bbeefa1da89d4f
Diffstat (limited to 'notification')
-rw-r--r--notification/MessagingService/Application/src/main/AndroidManifest.xml8
-rw-r--r--notification/MessagingService/Application/src/main/java/com/example/android/messagingservice/Conversations.java1
-rw-r--r--notification/MessagingService/Application/src/main/java/com/example/android/messagingservice/MessageLogger.java7
-rw-r--r--notification/MessagingService/Application/src/main/java/com/example/android/messagingservice/MessageReadReceiver.java5
-rw-r--r--notification/MessagingService/Application/src/main/java/com/example/android/messagingservice/MessagingFragment.java4
-rw-r--r--notification/MessagingService/Application/src/main/java/com/example/android/messagingservice/MessagingService.java66
-rw-r--r--notification/MessagingService/Application/src/main/res/layout-land/fragment_message_me.xml3
-rw-r--r--notification/MessagingService/Application/src/main/res/layout/fragment_message_me.xml1
-rw-r--r--notification/MessagingService/Application/src/main/res/values/strings.xml2
9 files changed, 48 insertions, 49 deletions
diff --git a/notification/MessagingService/Application/src/main/AndroidManifest.xml b/notification/MessagingService/Application/src/main/AndroidManifest.xml
index f8a5850d..955f8d4f 100644
--- a/notification/MessagingService/Application/src/main/AndroidManifest.xml
+++ b/notification/MessagingService/Application/src/main/AndroidManifest.xml
@@ -37,13 +37,17 @@
<service android:name=".MessagingService">
</service>
- <receiver android:name=".MessageReadReceiver">
+ <receiver
+ android:name=".MessageReadReceiver"
+ android:exported="false">
<intent-filter>
<action android:name="com.example.android.messagingservice.ACTION_MESSAGE_READ"/>
</intent-filter>
</receiver>
- <receiver android:name=".MessageReplyReceiver">
+ <receiver
+ android:name=".MessageReplyReceiver"
+ android:exported="false">
<intent-filter>
<action android:name="com.example.android.messagingservice.ACTION_MESSAGE_REPLY"/>
</intent-filter>
diff --git a/notification/MessagingService/Application/src/main/java/com/example/android/messagingservice/Conversations.java b/notification/MessagingService/Application/src/main/java/com/example/android/messagingservice/Conversations.java
index 7425df49..88ef7aa5 100644
--- a/notification/MessagingService/Application/src/main/java/com/example/android/messagingservice/Conversations.java
+++ b/notification/MessagingService/Application/src/main/java/com/example/android/messagingservice/Conversations.java
@@ -17,7 +17,6 @@
package com.example.android.messagingservice;
import java.util.ArrayList;
-import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.concurrent.ThreadLocalRandom;
diff --git a/notification/MessagingService/Application/src/main/java/com/example/android/messagingservice/MessageLogger.java b/notification/MessagingService/Application/src/main/java/com/example/android/messagingservice/MessageLogger.java
index d1007b5a..3459178d 100644
--- a/notification/MessagingService/Application/src/main/java/com/example/android/messagingservice/MessageLogger.java
+++ b/notification/MessagingService/Application/src/main/java/com/example/android/messagingservice/MessageLogger.java
@@ -19,6 +19,7 @@ package com.example.android.messagingservice;
import android.content.Context;
import android.content.SharedPreferences;
+import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
@@ -27,13 +28,13 @@ import java.util.Date;
* and replies. Don't use this in a real world application. This logger is only
* used for displaying the messages in the text view.
*/
-public class MessageLogger {
+class MessageLogger {
private static final String PREF_MESSAGE = "MESSAGE_LOGGER";
- private static final SimpleDateFormat DATE_FORMAT = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ private static final DateFormat DATE_FORMAT = SimpleDateFormat.getDateTimeInstance();
+ private static final String LINE_BREAKS = "\n\n";
public static final String LOG_KEY = "message_data";
- public static final String LINE_BREAKS = "\n\n";
public static void logMessage(Context context, String message) {
SharedPreferences prefs = getPrefs(context);
diff --git a/notification/MessagingService/Application/src/main/java/com/example/android/messagingservice/MessageReadReceiver.java b/notification/MessagingService/Application/src/main/java/com/example/android/messagingservice/MessageReadReceiver.java
index f28a3a77..63c244f8 100644
--- a/notification/MessagingService/Application/src/main/java/com/example/android/messagingservice/MessageReadReceiver.java
+++ b/notification/MessagingService/Application/src/main/java/com/example/android/messagingservice/MessageReadReceiver.java
@@ -16,7 +16,6 @@
package com.example.android.messagingservice;
-import android.app.NotificationManager;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
@@ -35,8 +34,8 @@ public class MessageReadReceiver extends BroadcastReceiver {
if (conversationId != -1) {
Log.d(TAG, "Conversation " + conversationId + " was read");
MessageLogger.logMessage(context, "Conversation " + conversationId + " was read.");
- NotificationManagerCompat notificationManager = NotificationManagerCompat.from(context);
- notificationManager.cancel(conversationId);
+ NotificationManagerCompat.from(context)
+ .cancel(conversationId);
}
}
}
diff --git a/notification/MessagingService/Application/src/main/java/com/example/android/messagingservice/MessagingFragment.java b/notification/MessagingService/Application/src/main/java/com/example/android/messagingservice/MessagingFragment.java
index f8efcc0c..703bc808 100644
--- a/notification/MessagingService/Application/src/main/java/com/example/android/messagingservice/MessagingFragment.java
+++ b/notification/MessagingService/Application/src/main/java/com/example/android/messagingservice/MessagingFragment.java
@@ -51,7 +51,7 @@ public class MessagingFragment extends Fragment implements View.OnClickListener
private Messenger mService;
private boolean mBound;
- private ServiceConnection mConnection = new ServiceConnection() {
+ private final ServiceConnection mConnection = new ServiceConnection() {
@Override
public void onServiceConnected(ComponentName componentName, IBinder service) {
mService = new Messenger(service);
@@ -67,7 +67,7 @@ public class MessagingFragment extends Fragment implements View.OnClickListener
}
};
- private SharedPreferences.OnSharedPreferenceChangeListener listener =
+ private final SharedPreferences.OnSharedPreferenceChangeListener listener =
new SharedPreferences.OnSharedPreferenceChangeListener() {
@Override
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
diff --git a/notification/MessagingService/Application/src/main/java/com/example/android/messagingservice/MessagingService.java b/notification/MessagingService/Application/src/main/java/com/example/android/messagingservice/MessagingService.java
index f5900610..73199ed5 100644
--- a/notification/MessagingService/Application/src/main/java/com/example/android/messagingservice/MessagingService.java
+++ b/notification/MessagingService/Application/src/main/java/com/example/android/messagingservice/MessagingService.java
@@ -31,41 +31,24 @@ import android.support.v4.app.NotificationManagerCompat;
import android.support.v4.app.RemoteInput;
import android.util.Log;
+import java.lang.ref.WeakReference;
import java.util.Iterator;
public class MessagingService extends Service {
private static final String TAG = MessagingService.class.getSimpleName();
-
- public static final String READ_ACTION =
+ private static final String EOL = "\n";
+ private static final String READ_ACTION =
"com.example.android.messagingservice.ACTION_MESSAGE_READ";
+
public static final String REPLY_ACTION =
"com.example.android.messagingservice.ACTION_MESSAGE_REPLY";
public static final String CONVERSATION_ID = "conversation_id";
public static final String EXTRA_VOICE_REPLY = "extra_voice_reply";
public static final int MSG_SEND_NOTIFICATION = 1;
- public static final String EOL = "\n";
private NotificationManagerCompat mNotificationManager;
- private final Messenger mMessenger = new Messenger(new IncomingHandler());
-
- /**
- * Handler of incoming messages from clients.
- */
- class IncomingHandler extends Handler {
- @Override
- public void handleMessage(Message msg) {
- switch (msg.what) {
- case MSG_SEND_NOTIFICATION:
- int howManyConversations = msg.arg1 <= 0 ? 1 : msg.arg1;
- int messagesPerConv = msg.arg2 <= 0 ? 1 : msg.arg2;
- sendNotification(howManyConversations, messagesPerConv);
- break;
- default:
- super.handleMessage(msg);
- }
- }
- }
+ private final Messenger mMessenger = new Messenger(new IncomingHandler(this));
@Override
public void onCreate() {
@@ -79,18 +62,6 @@ public class MessagingService extends Service {
return mMessenger.getBinder();
}
- @Override
- public int onStartCommand(Intent intent, int flags, int startId) {
- Log.d(TAG, "onStartCommand");
- return START_STICKY;
- }
-
- @Override
- public void onDestroy() {
- super.onDestroy();
- Log.d(TAG, "onDestroy");
- }
-
// Creates an intent that will be triggered when a message is marked as read.
private Intent getMessageReadIntent(int id) {
return new Intent()
@@ -171,4 +142,31 @@ public class MessagingService extends Service {
mNotificationManager.notify(conversation.getConversationId(), builder.build());
}
+
+ /**
+ * Handler for incoming messages from clients.
+ */
+ private static class IncomingHandler extends Handler {
+ private final WeakReference<MessagingService> mReference;
+
+ IncomingHandler(MessagingService service) {
+ mReference = new WeakReference<>(service);
+ }
+
+ @Override
+ public void handleMessage(Message msg) {
+ MessagingService service = mReference.get();
+ switch (msg.what) {
+ case MSG_SEND_NOTIFICATION:
+ int howManyConversations = msg.arg1 <= 0 ? 1 : msg.arg1;
+ int messagesPerConversation = msg.arg2 <= 0 ? 1 : msg.arg2;
+ if (service != null) {
+ service.sendNotification(howManyConversations, messagesPerConversation);
+ }
+ break;
+ default:
+ super.handleMessage(msg);
+ }
+ }
+ }
}
diff --git a/notification/MessagingService/Application/src/main/res/layout-land/fragment_message_me.xml b/notification/MessagingService/Application/src/main/res/layout-land/fragment_message_me.xml
index 6f4f88ba..0cfd1cf0 100644
--- a/notification/MessagingService/Application/src/main/res/layout-land/fragment_message_me.xml
+++ b/notification/MessagingService/Application/src/main/res/layout-land/fragment_message_me.xml
@@ -21,7 +21,8 @@
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
- android:paddingTop="@dimen/activity_vertical_margin">
+ android:paddingTop="@dimen/activity_vertical_margin"
+ android:baselineAligned="false">
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
diff --git a/notification/MessagingService/Application/src/main/res/layout/fragment_message_me.xml b/notification/MessagingService/Application/src/main/res/layout/fragment_message_me.xml
index 29a8c441..404bd4de 100644
--- a/notification/MessagingService/Application/src/main/res/layout/fragment_message_me.xml
+++ b/notification/MessagingService/Application/src/main/res/layout/fragment_message_me.xml
@@ -14,7 +14,6 @@
limitations under the License.
-->
<LinearLayout 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:orientation="vertical"
diff --git a/notification/MessagingService/Application/src/main/res/values/strings.xml b/notification/MessagingService/Application/src/main/res/values/strings.xml
index 001b10ee..3f8390df 100644
--- a/notification/MessagingService/Application/src/main/res/values/strings.xml
+++ b/notification/MessagingService/Application/src/main/res/values/strings.xml
@@ -16,8 +16,6 @@
-->
<resources>
<string name="app_name">Messaging Sample</string>
- <string name="action_settings">Settings</string>
- <string name="title">Messaging Sample</string>
<string name="notification_reply">Reply by Voice</string>
<string name="send_2_conversations">Send 2 conversations with 1 message</string>
<string name="send_1_conversation">Send 1 conversation with 1 message</string>