2016-11-26 12 views
-2

Gmailのメールボックスをと私のアンドロイドアプリに入れて、でを開くImageViewボタンがあります。 以前は同じコードを開いていました。ボタンをクリックしてアンドロイドアプリからgmailを開くとクラッシュする

imageView3.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       Intent send=new Intent(Intent.ACTION_VIEW); 
       send.setType("plain/text"); 
       send.setData(Uri.parse("[email protected]")); 
       send.setClassName("com.google.android.gm", "com.google.android.gm.ComposeActivityGmail"); 
       startActivity(send); 

      } 
     }); 

ここで、ボタンをクリックするとアプリケーションがクラッシュします。

+0

にするために、コードのその部分のために本当に多忙でした。 –

+0

@vishal、申し訳ありませんが私はエミュレータを使用していません – Sarthakpandit

+0

あなたのIDE(AndroidスタジオやEclipseのような)にエラーログをチェックすることができます@Sarthakpandit –

答えて

0

最終的に私は答えを得た、それはここにあなたのクラッシュログを貼り付けてくださいその仕事

 Intent intent = new Intent(android.content.Intent.ACTION_SEND); 
      intent.setType("text/html"); 
      final PackageManager pm = getPackageManager(); 
      final List<ResolveInfo> matches = pm.queryIntentActivities(intent, 0); 
      ResolveInfo best = null; 
      for (final ResolveInfo info : matches) { 
       if (info.activityInfo.packageName.endsWith(".gm") || info.activityInfo.name.toLowerCase().contains("gmail")) { 
        best = info; 
        break; 
       } 
      } 
      if (best != null) { 
       intent.setClassName(best.activityInfo.packageName, best.activityInfo.name); 
      } 

      intent.setData(Uri.parse("mailto:[email protected]")); 


      try { 
       startActivity(intent); 

      } catch (android.content.ActivityNotFoundException ex) { 
       Toast.makeText(MainActivity.this, "Error Sending Email,Try Later.", Toast.LENGTH_SHORT).show(); 
      } 
0

あなたのコードをこれに置き換えてください。アプリがクラッシュしなくなった場合は、Android搭載端末にGmailアプリがないことを意味します。

imageView3.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) 
      { 
       try 
       { 
        Intent send=new Intent(Intent.ACTION_VIEW); 
        send.setType("plain/text"); 
        send.setData(Uri.parse("[email protected]")); 
        send.setClassName("com.google.android.gm", "com.google.android.gm.ComposeActivityGmail"); 
        startActivity(send); 
       } 
       catch (ActivityNotFoundException ex) 
       { 
        ex.printStackTrace(); 
       } 

     } 
    }); 
+0

アプリがクラッシュすることはありません。電話がルーツになるまで、はいのGmailをアンインストールすることはできません。私の場合はそうではありません。 – Sarthakpandit

+0

ここにあなたのクラッシュログを置くまであなたを助けることはできません。 –

関連する問題