2011-11-11 36 views

Trả lời

2
You can use this but it is for gmail only 

    Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND); 
    emailIntent.setType("plain/text"); 
    startActivity(emailIntent); 
+0

xin lỗi không phải là một nhưng hãy thử sử dụng này một –

+0

MailClient ý định = new Intent (Intent.ACTION_VIEW); mailClient.setClassName ("com.google.android.gm", "com.google.android.gm.ConversationListActivity"); startActivity (mailClient); –

+0

tnx cho câu trả lời của bạn. Tôi vừa mới nhận ra rằng tôi đang cố gắng truy cập ứng dụng thư HTC chứ không phải ứng dụng thư mặc định. Có cách nào để mở hộp thư đó trong hộp thư đến không? hoặc bạn có thể chỉ cho tôi nơi tôi có thể tìm thấy thông tin đó không? –

6

Có, bạn có thể mở hộp thư đến email mặc định của Android.
Sử dụng mã này:

Intent intent = getPackageManager().getLaunchIntentForPackage("com.android.email"); 
startActivity(intent); 


Mã này hoạt động, bạn phải cấu hình Android thư mặc định thiết bị của bạn đầu tiên. Nếu bạn đã định cấu hình thư của mình, nó hoạt động tốt. Nếu không, nó sẽ đóng lại với một NullPointerException.

+1

là mũ thực sự cần thiết? – copolii

+2

bạn biết rằng khi ai đó đưa ra câu trả lời, hãy cố gắng tìm ra đúng hay sai trên ngăn xếp thay vì tìm kiếm mũ hoặc nhỏ, nếu bạn muốn thực hiện điều đó, hãy thử một trang web thú vị khác không phải loại trang web lập trình này –

+2

: Giải pháp giả định rằng người dùng có một ứng dụng với gói "com.android.email" và đó là ứng dụng email mặc định mà họ sử dụng. Nếu tôi có, ví dụ, thư K9 và tôi sử dụng nó làm ứng dụng khách mặc định của tôi, việc mở ứng dụng thư khách hàng không hữu ích đối với tôi. Mục đích không phải là để làm cho niềm vui, có điều này được gọi là "nghi thức internet". Khi bạn gõ vào tất cả các mũ nó được coi là SHOUTING và thô lỗ. Bên cạnh đó nó làm cho văn bản của bạn trông đáng ghét và khó đọc. Có một lý do tại sao có vốn và chữ nhỏ. Văn bản được định dạng đúng cách dễ đọc hơn nhiều so với TẤT CẢ CAPS. – copolii

0

Bạn có thể mở Android client mặc định e-mail sử dụng này:

Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND); 
emailIntent.setType("text/plain"); 
emailIntent.setClassName("com.android.email", "com.android.email.activity.Welcome"); 
emailIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
startActivity(emailIntent); 
+0

điều này tạo một email mới, câu hỏi ban đầu là chỉ cần mở ứng dụng email mặc định. –

1

Mã này làm việc cho tôi. Nó mở ra một bảng chọn với tất cả các ứng dụng email đăng ký thiết bị và thẳng vào Inbox:

Intent emailIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("mailto:")); 
    PackageManager pm = getPackageManager(); 

    List<ResolveInfo> resInfo = pm.queryIntentActivities(emailIntent, 0); 
    if (resInfo.size() > 0) { 
     ResolveInfo ri = resInfo.get(0); 
     // First create an intent with only the package name of the first registered email app 
     // and build a picked based on it 
     Intent intentChooser = pm.getLaunchIntentForPackage(ri.activityInfo.packageName); 
     Intent openInChooser = 
       Intent.createChooser(intentChooser, 
         getString(R.string.user_reg_email_client_chooser_title)); 

     // Then create a list of LabeledIntent for the rest of the registered email apps 
     List<LabeledIntent> intentList = new ArrayList<LabeledIntent>(); 
     for (int i = 1; i < resInfo.size(); i++) { 
      // Extract the label and repackage it in a LabeledIntent 
      ri = resInfo.get(i); 
      String packageName = ri.activityInfo.packageName; 
      Intent intent = pm.getLaunchIntentForPackage(packageName); 
      intentList.add(new LabeledIntent(intent, packageName, ri.loadLabel(pm), ri.icon)); 
     } 

     LabeledIntent[] extraIntents = intentList.toArray(new LabeledIntent[intentList.size()]); 
     // Add the rest of the email apps to the picker selection 
     openInChooser.putExtra(Intent.EXTRA_INITIAL_INTENTS, extraIntents); 
     startActivity(openInChooser); 
    } 
+0

Lỗi này xảy ra khi không thể giải quyết mục đích khởi chạy - cần kiểm tra thêm cho điều đó! –

9

Nếu mục tiêu là để mở ứng dụng email mặc định để xem hộp thư đến, sau đó chính là thêm một loại ý định và sử dụng ACTION_MAIN ý định như vậy:

Intent intent = new Intent(Intent.ACTION_MAIN); 
intent.addCategory(Intent.CATEGORY_APP_EMAIL); 
getActivity().startActivity(intent); 

https://developer.android.com/reference/android/content/Intent.html#CATEGORY_APP_EMAIL

+0

cách dễ dàng để khởi chạy ứng dụng email duy nhất..Cảm ơn rất nhiều !! – TUSHAR

+0

Tôi sẽ bắt chước như thế nào trong phản ứng gốc? – jasan

+0

@ jasan - bạn sẽ cần phải tạo một thành phần tùy chỉnh để kích hoạt logic này từ đất js –

Các vấn đề liên quan