/*
* Copyright (C) 2008 Esmertec AG.
* Copyright (C) 2008 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.android.mms.ui;
import static android.content.res.Configuration.KEYBOARDHIDDEN_NO;
import static com.android.mms.transaction.ProgressCallbackEntity.PROGRESS_ABORT;
import static com.android.mms.transaction.ProgressCallbackEntity.PROGRESS_COMPLETE;
import static com.android.mms.transaction.ProgressCallbackEntity.PROGRESS_START;
import static com.android.mms.transaction.ProgressCallbackEntity.PROGRESS_STATUS_ACTION;
import static com.android.mms.ui.MessageListAdapter.COLUMN_ID;
import static com.android.mms.ui.MessageListAdapter.COLUMN_MMS_LOCKED;
import static com.android.mms.ui.MessageListAdapter.COLUMN_MSG_TYPE;
import static com.android.mms.ui.MessageListAdapter.PROJECTION;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.regex.Pattern;
import android.app.ActionBar;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.ProgressDialog;
import android.content.ActivityNotFoundException;
import android.content.AsyncQueryHandler;
import android.content.BroadcastReceiver;
import android.content.ContentResolver;
import android.content.ContentUris;
import android.content.ContentValues;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.IntentFilter;
import android.content.DialogInterface.OnClickListener;
import android.content.res.Configuration;
import android.content.res.Resources;
import android.database.Cursor;
import android.database.sqlite.SQLiteException;
import android.database.sqlite.SqliteWrapper;
import android.drm.mobile1.DrmException;
import android.drm.mobile1.DrmRawContent;
import android.graphics.drawable.Drawable;
import android.media.RingtoneManager;
import android.net.Uri;
import android.os.Bundle;
import android.os.Environment;
import android.os.Handler;
import android.os.Message;
import android.os.Parcelable;
import android.os.SystemProperties;
import android.provider.ContactsContract;
import android.provider.ContactsContract.CommonDataKinds.Email;
import android.provider.ContactsContract.Contacts;
import android.provider.DrmStore;
import android.provider.MediaStore;
import android.provider.Settings;
import android.provider.ContactsContract.Intents;
import android.provider.MediaStore.Images;
import android.provider.MediaStore.Video;
import android.provider.Telephony.Mms;
import android.provider.Telephony.Sms;
import android.provider.ContactsContract.CommonDataKinds.Phone;
import android.telephony.PhoneNumberUtils;
import android.telephony.SmsMessage;
import android.text.ClipboardManager;
import android.text.Editable;
import android.text.InputFilter;
import android.text.SpannableString;
import android.text.Spanned;
import android.text.TextUtils;
import android.text.TextWatcher;
import android.text.method.TextKeyListener;
import android.text.style.URLSpan;
import android.text.util.Linkify;
import android.util.Log;
import android.view.ContextMenu;
import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewStub;
import android.view.WindowManager;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.View.OnCreateContextMenuListener;
import android.view.View.OnKeyListener;
import android.view.inputmethod.InputMethodManager;
import android.webkit.MimeTypeMap;
import android.widget.AdapterView;
import android.widget.EditText;
import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.CursorAdapter;
import android.widget.TextView;
import android.widget.Toast;
import com.android.internal.telephony.TelephonyIntents;
import com.android.internal.telephony.TelephonyProperties;
import com.android.mms.LogTag;
import com.android.mms.MmsApp;
import com.android.mms.MmsConfig;
import com.android.mms.R;
import com.android.mms.TempFileProvider;
import com.android.mms.data.Contact;
import com.android.mms.data.ContactList;
import com.android.mms.data.Conversation;
import com.android.mms.data.WorkingMessage;
import com.android.mms.data.WorkingMessage.MessageStatusListener;
import com.google.android.mms.ContentType;
import com.google.android.mms.pdu.EncodedStringValue;
import com.google.android.mms.MmsException;
import com.google.android.mms.pdu.PduBody;
import com.google.android.mms.pdu.PduPart;
import com.google.android.mms.pdu.PduPersister;
import com.google.android.mms.pdu.SendReq;
import com.android.mms.model.SlideModel;
import com.android.mms.model.SlideshowModel;
import com.android.mms.transaction.MessagingNotification;
import com.android.mms.ui.MessageUtils.ResizeImageResultCallback;
import com.android.mms.ui.RecipientsEditor.RecipientContextMenuInfo;
import com.android.mms.util.SendingProgressTokenManager;
import com.android.mms.util.SmileyParser;
import android.text.InputFilter.LengthFilter;
/**
* This is the main UI for:
* 1. Composing a new message;
* 2. Viewing/managing message history of a conversation.
*
* This activity can handle following parameters from the intent
* by which it's launched.
* thread_id long Identify the conversation to be viewed. When creating a
* new message, this parameter shouldn't be present.
* msg_uri Uri The message which should be opened for editing in the editor.
* address String The addresses of the recipients in current conversation.
* exit_on_sent boolean Exit this activity after the message is sent.
*/
public class ComposeMessageActivity extends Activity
implements View.OnClickListener, TextView.OnEditorActionListener,
MessageStatusListener, Contact.UpdateListener {
public static final int REQUEST_CODE_ATTACH_IMAGE = 100;
public static final int REQUEST_CODE_TAKE_PICTURE = 101;
public static final int REQUEST_CODE_ATTACH_VIDEO = 102;
public static final int REQUEST_CODE_TAKE_VIDEO = 103;
public static final int REQUEST_CODE_ATTACH_SOUND = 104;
public static final int REQUEST_CODE_RECORD_SOUND = 105;
public static final int REQUEST_CODE_CREATE_SLIDESHOW = 106;
public static final int REQUEST_CODE_ECM_EXIT_DIALOG = 107;
public static final int REQUEST_CODE_ADD_CONTACT = 108;
public static final int REQUEST_CODE_PICK = 109;
private static final String TAG = "Mms/compose";
private static final boolean DEBUG = false;
private static final boolean TRACE = false;
private static final boolean LOCAL_LOGV = false;
// Menu ID
private static final int MENU_ADD_SUBJECT = 0;
private static final int MENU_DELETE_THREAD = 1;
private static final int MENU_ADD_ATTACHMENT = 2;
private static final int MENU_DISCARD = 3;
private static final int MENU_SEND = 4;
private static final int MENU_CALL_RECIPIENT = 5;
private static final int MENU_CONVERSATION_LIST = 6;
private static fi
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
Android应用源码之Mms-IT计算机-毕业设计.zip (648个子文件)
proguard.flags 60B
ComposeMessageActivity.java 148KB
WorkingMessage.java 59KB
Conversation.java 47KB
Contact.java 43KB
TransactionService.java 38KB
MessageUtils.java 35KB
ConversationList.java 32KB
SlideEditorActivity.java 32KB
MessagingNotification.java 30KB
MessageListItem.java 28KB
SmsReceiverService.java 26KB
SlideshowModel.java 26KB
SmilPlayer.java 25KB
SlideView.java 19KB
Recycler.java 18KB
SmilHelper.java 17KB
MmsConfig.java 16KB
RecipientsEditor.java 16KB
SlideModel.java 16KB
SearchActivity.java 16KB
MessageListAdapter.java 15KB
HttpUtils.java 15KB
UriImage.java 14KB
SlideshowActivity.java 14KB
LongThreadTest.java 14KB
SuggestionsProvider.java 13KB
MessageItem.java 13KB
SlideshowEditActivity.java 13KB
ElementTimeImpl.java 13KB
DeliveryReportActivity.java 13KB
ManageSimMessages.java 12KB
RetryScheduler.java 11KB
SlideshowPresenter.java 11KB
MediaModelFactory.java 11KB
MessagingPreferenceActivity.java 11KB
TimeImpl.java 10KB
RetrieveTransaction.java 10KB
Transaction.java 10KB
MediaModel.java 10KB
SmilMediaElementImpl.java 10KB
SmilRegionElementImpl.java 10KB
RecyclerTest.java 10KB
ImageModel.java 10KB
RecipientsAdapter.java 10KB
NotificationTransaction.java 10KB
DownloadManager.java 10KB
RecipientIdCache.java 10KB
PushReceiver.java 9KB
SmilDocumentImpl.java 9KB
ClassZeroActivity.java 9KB
ConversationListItem.java 8KB
MultiPartSmsTests.java 8KB
LayoutModel.java 8KB
SmileyParser.java 8KB
VideoModel.java 8KB
ComposeMessageActivityTests.java 8KB
NodeImpl.java 8KB
AttachmentEditor.java 8KB
SendTransaction.java 7KB
DraftCache.java 7KB
DrmWrapper.java 6KB
AudioModel.java 6KB
SmilParElementImpl.java 6KB
Event.java 6KB
TempFileProvider.java 6KB
ElementTime.java 6KB
ContactList.java 6KB
TransactionSettings.java 6KB
BasicSlideEditorView.java 6KB
SmsMessageSender.java 6KB
ElementParallelTimeContainerImpl.java 6KB
AudioAttachmentView.java 6KB
SlideshowEditor.java 6KB
EventTarget.java 5KB
MmsMessageSender.java 5KB
SmsSingleRecipientSender.java 5KB
EditSlideDurationActivity.java 5KB
InterceptSendSms.java 5KB
RateController.java 5KB
DocumentImpl.java 5KB
SMILMediaElement.java 5KB
SlideListItemView.java 5KB
ElementTimeControl.java 5KB
Time.java 5KB
ElementImpl.java 5KB
EventTargetImpl.java 5KB
TransactionBundle.java 5KB
SMILAnimation.java 4KB
QuickContactDivot.java 4KB
MmsSystemEventReceiver.java 4KB
SmsSendIntentTestActivity.java 4KB
VideoAttachmentView.java 4KB
MmsApp.java 4KB
LogTag.java 4KB
TextModel.java 4KB
SlideshowAttachmentView.java 4KB
NumberPickerDialog.java 4KB
MessageStatusReceiver.java 4KB
NodeListImpl.java 4KB
共 648 条
- 1
- 2
- 3
- 4
- 5
- 6
- 7
资源评论
芝麻粒儿
- 粉丝: 5w+
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功