2017-03-08 37 views
0

我在eclipse中的java文件中編寫了以下代碼,以通過我的應用程序在我的android設備上啓動snapchat應用程序。但是當我在Android設備上運行它時,它顯示「沒有應用程序可以執行此操作」。意向implimantation錯誤

if(view.getId()==R.id.LaunchSnapchat){ 
    intent= new Intent(android.content.Intent.ACTION_VIEW); 
    intent.setData(Uri.parse("snapchat://details?id=com.snapchat.android&hl=en&rdid=com.snapchat.android")); 
    chooser=Intent.createChooser(intent,"Launch Snapchat"); 
    startActivity(chooser); 
} 

什麼是解決方案?

+0

如果要直接啓動snapchat,請將package設置爲您的意圖。 –

+0

檢查我的答案 –

回答

0

試試這個

Intent intent = new Intent(Intent.ACTION_SEND); 
    intent.setType("*/*"); 
    intent.setPackage("com.snapchat.android"); 
    startActivity(Intent.createChooser(intent, "Open Snapchat")); 

也行這是因爲馬貝你沒有snapchat安裝(模擬器)

if(view.getId()==R.id.LaunchSnapchat){ 
    intent= new Intent(android.content.Intent.ACTION_VIEW); 
    intent.setData(Uri.parse("snapchat://details?id=com.snapchat.android&hl=en&rdid=com.snapchat.android")); 
    chooser=Intent.createChooser(intent,"Launch Snapchat"); 
    startActivity(chooser); 
} 
0

答案很簡單,因爲從here

如果採取您不知道主要活動,那麼可以使用軟件包名稱來啓動應用程序。

Intent launchIntent = getPackageManager().getLaunchIntentForPackage("com.snapchat.android"); 
if (launchIntent != null) { 
    startActivity(launchIntent);//null pointer check in case package name was not found 
}