2011-07-25 3 views
0

私がしたいのは、ウィジェットが押されたときに単に別のアプリケーションを起動するウィジェットを作成することです。しかし、アプリケーションは、私が作成したものではなく、マーケットアプリ、ブラウザ、そのようなものです。私はすでにAppWidgetProviderをセットアップしており、マニフェストとそのすべてのものをすべて変更しました。私はクラス/ Javaソースファイルに追加する必要があることを知る必要があります。どんな助けでも感謝しています!アンドロイドウィジェットから別のアプリを起動しますか?

+0

可能重複[アンドロイドからアクティビティを起動する方法ホーム画面ウィジェット](http://stackoverflow.com/questions/2706464/how-to-launch-activity-from-android-home-screen-widget) –

答えて

2

これをやってみてください。

String packageName = "com.package"; 
String className = "com.package.MainActivity"; 
Intent intent = new Intent(Intent.ACTION_MAIN); 
intent.setComponent(new ComponentName(packageName, className)); 
startActivity(intent); 

UPDATE:これは、アプリケーションを起動するより良い方法のように見えます

PackageManager pm = getPackageManager(); 
try 
{ 
    String packageName = "com.example.package"; 
    Intent launchIntent = pm.getLaunchIntentForPackage(packageName); 
    startActivity(launchIntent); 
} 
catch (Exception e1) 
{ 
} 
+0

私は得るいくつかのエラーがありますが、主なものは "戻り値の型はstartActivityにはありません"、 "インテントは型に解決できません"ということです。開発時にはとても新しいので、 "noobishness" – natehoch96

+0

パッケージ名とクラス名が正しいことを確認してください。また、startActivity(intent)をMyActivity.this.startActivity(intent)に変更してみてください。それがうまくいかない場合は、私のアプリケーションにこのコードを入れても何の問題もなく動作するので、値を入れたときのコードの様子を私に見せてください。 –

+0

それは、感謝のArashを動作するようになった! – natehoch96

関連する問題