summaryrefslogtreecommitdiff
path: root/AutoMessagingDemo/app/src/main/java/com/example/android/automessagingdemo/MessagingFragment.java
diff options
context:
space:
mode:
Diffstat (limited to 'AutoMessagingDemo/app/src/main/java/com/example/android/automessagingdemo/MessagingFragment.java')
-rw-r--r--AutoMessagingDemo/app/src/main/java/com/example/android/automessagingdemo/MessagingFragment.java170
1 files changed, 0 insertions, 170 deletions
diff --git a/AutoMessagingDemo/app/src/main/java/com/example/android/automessagingdemo/MessagingFragment.java b/AutoMessagingDemo/app/src/main/java/com/example/android/automessagingdemo/MessagingFragment.java
deleted file mode 100644
index 2fe75c6..0000000
--- a/AutoMessagingDemo/app/src/main/java/com/example/android/automessagingdemo/MessagingFragment.java
+++ /dev/null
@@ -1,170 +0,0 @@
-/*
- * Copyright (C) 2014 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.example.android.automessagingdemo;
-
-import android.app.Fragment;
-import android.content.ComponentName;
-import android.content.Context;
-import android.content.Intent;
-import android.content.ServiceConnection;
-import android.content.SharedPreferences;
-import android.os.Bundle;
-import android.os.IBinder;
-import android.os.Message;
-import android.os.Messenger;
-import android.os.RemoteException;
-import android.text.method.ScrollingMovementMethod;
-import android.util.Log;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.Button;
-import android.widget.TextView;
-
-/**
- * The main fragment that shows the buttons and the text view containing the log.
- */
-public class MessagingFragment extends Fragment implements View.OnClickListener {
-
- private static final String TAG = MessagingFragment.class.getSimpleName();
-
- private Button mSendSingleConversation;
- private Button mSendTwoConversations;
- private Button mSendConversationWithThreeMessages;
- private TextView mDataPortView;
- private Button mClearLogButton;
-
- private Messenger mService;
- private boolean mBound;
-
- private ServiceConnection mConnection = new ServiceConnection() {
- @Override
- public void onServiceConnected(ComponentName componentName, IBinder service) {
- mService = new Messenger(service);
- mBound = true;
- setButtonsState(true);
- }
-
- @Override
- public void onServiceDisconnected(ComponentName componentName) {
- mService = null;
- mBound = false;
- setButtonsState(false);
- }
- };
-
- private SharedPreferences.OnSharedPreferenceChangeListener listener =
- new SharedPreferences.OnSharedPreferenceChangeListener() {
- @Override
- public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
- if (MessageLogger.LOG_KEY.equals(key)) {
- mDataPortView.setText(MessageLogger.getAllMessages(getActivity()));
- }
- }
- };
-
- public MessagingFragment() {
- }
-
- @Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container,
- Bundle savedInstanceState) {
- View rootView = inflater.inflate(R.layout.fragment_message_me, container, false);
-
- mSendSingleConversation = (Button) rootView.findViewById(R.id.send_1_conversation);
- mSendSingleConversation.setOnClickListener(this);
-
- mSendTwoConversations = (Button) rootView.findViewById(R.id.send_2_conversations);
- mSendTwoConversations.setOnClickListener(this);
-
- mSendConversationWithThreeMessages =
- (Button) rootView.findViewById(R.id.send_1_conversation_3_messages);
- mSendConversationWithThreeMessages.setOnClickListener(this);
-
- mDataPortView = (TextView) rootView.findViewById(R.id.data_port);
- mDataPortView.setMovementMethod(new ScrollingMovementMethod());
-
- mClearLogButton = (Button) rootView.findViewById(R.id.clear);
- mClearLogButton.setOnClickListener(this);
-
- setButtonsState(false);
-
- return rootView;
- }
-
- @Override
- public void onClick(View view) {
- if (view == mSendSingleConversation) {
- sendMsg(1, 1);
- } else if (view == mSendTwoConversations) {
- sendMsg(2, 1);
- } else if (view == mSendConversationWithThreeMessages) {
- sendMsg(1, 3);
- } else if (view == mClearLogButton) {
- MessageLogger.clear(getActivity());
- mDataPortView.setText(MessageLogger.getAllMessages(getActivity()));
- }
- }
-
- @Override
- public void onStart() {
- super.onStart();
- getActivity().bindService(new Intent(getActivity(), MessagingService.class), mConnection,
- Context.BIND_AUTO_CREATE);
- }
-
- @Override
- public void onPause() {
- super.onPause();
- MessageLogger.getPrefs(getActivity()).unregisterOnSharedPreferenceChangeListener(listener);
- }
-
- @Override
- public void onResume() {
- super.onResume();
- mDataPortView.setText(MessageLogger.getAllMessages(getActivity()));
- MessageLogger.getPrefs(getActivity()).registerOnSharedPreferenceChangeListener(listener);
- }
-
- @Override
- public void onStop() {
- super.onStop();
- if (mBound) {
- getActivity().unbindService(mConnection);
- mBound = false;
- }
- }
-
- private void sendMsg(int howManyConversations, int messagesPerConversation) {
- if (mBound) {
- Message msg = Message.obtain(null, MessagingService.MSG_SEND_NOTIFICATION,
- howManyConversations, messagesPerConversation);
- try {
- mService.send(msg);
- } catch (RemoteException e) {
- Log.e(TAG, "Error sending a message", e);
- MessageLogger.logMessage(getActivity(), "Error occurred while sending a message.");
- }
- }
- }
-
- private void setButtonsState(boolean enable) {
- mSendSingleConversation.setEnabled(enable);
- mSendTwoConversations.setEnabled(enable);
- mSendConversationWithThreeMessages.setEnabled(enable);
- }
-}