重複の可能性:
起動時にアプリケーションを起動する方法は?
私はAndroidが初めてで、Androidアプリを持っています。Androidモバイルの起動時にアプリを開きたいだけです。これを行う方法を教えてください。Android SDK 2.3.3でEclipseを使用しています
重複の可能性:
起動時にアプリケーションを起動する方法は?
私はAndroidが初めてで、Androidアプリを持っています。Androidモバイルの起動時にアプリを開きたいだけです。これを行う方法を教えてください。Android SDK 2.3.3でEclipseを使用しています
マニフェストで許可を与える.....
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
レシーバーでこれをインテントフィルターに渡します...
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
レシーバークラスでこのコードを試してください.....
@Override
public void onReceive(Context context, Intent intent) {
if ("android.intent.action.BOOT_COMPLETED".equals(intent.getAction())) {
Intent serviceIntent = new Intent("*package name*.*Receivername*");
context.startService(serviceIntent);
}
}
現実的にやりたいなら
<receiver android:name=".MyServiceManager"
android:enabled="true" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</receiver>
次に、このコードをマニフェスト ファイルのアプリケーション タグに追加し、マニフェスト ファイルに使用許可を追加します。
それで
public class MyServiceManager extends BroadcastReceiver
{
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if(action.equalsIgnoreCase("android.intent.action.BOOT_COMPLETED"))
{
Intent myIntent=new Intent(context,package.YourActivity.class);
myIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(myIntent);
}
}
このクラスをプロジェクトに追加します。パッケージ名とクラス名を確認し、適宜変更してください。それでも問題が解決しない場合は、私に書いてください。