2013-01-09 111 views
2

我試圖創建一個應用程序,symply打開Gmail。我用兩個功能:startApplication和launchApp:從Android應用程序打開Gmail

public void startApplication(String packageName){ 
      try 
      { 
       Intent intent = new Intent("android.intent.action.MAIN"); 
       intent.addCategory("android.intent.category.LAUNCHER"); 
       intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION); 
       List<ResolveInfo> resolveInfoList = getPackageManager().queryIntentActivities(intent, 0); 

       for(ResolveInfo info : resolveInfoList) 
        if(info.activityInfo.packageName.equalsIgnoreCase(packageName)) 
        { 
         toast = Toast.makeText(MainActivity.this, "Gmail opened", Toast.LENGTH_LONG); 
         toast.show(); 
         launchApp(info.activityInfo.packageName, info.activityInfo.name); 
         return; 
        } 
      } 
      catch (Exception e) 
      { 
       toast = Toast.makeText(MainActivity.this, "Can't find Gmail", Toast.LENGTH_LONG); 
       toast.show(); 
      } 
     } 

這是launchApp功能:

private void launchApp(String packageName, String name) 
    { 
     Intent intent = new Intent("android.intent.action.MAIN"); 
     intent.addCategory("android.intent.category.LAUNCHER"); 
     intent.setComponent(new ComponentName(packageName, name)); 
     intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
     startActivity(intent); 
    } 

我從我的MainActivity中的onCreate功能

startApplication( 「com.gmail」)調用;

我嘗試在模擬器和智能手機上運行此應用程序,但程序崩潰。什麼是錯誤?

+0

後烏爾logcat的.. – Gridtestmail

+1

_Are你問我們要告訴錯誤_?你有logcat,爲什麼不告訴我們這個錯誤。 –

+0

我的logcat位於http://pastebin.com/cJutP0HJ – hasmet

回答

2

最後我解決了改變startApplication("com.gmail")startApplication("com.google.android.gm")

相關問題