アプリケーションのホームページを含むアンドロイドのアプリケーションがあります。ハードウェアのホーム ボタンをオーバーライドして、API レベル 10 以下のアプリケーションのホームページに戻ります。
私のアプリケーションは、Android バージョン 3.0 および 4.0 で正常に動作します。問題はホームボタンを無効にすることです。ホーム画面を何らかの方法で実装する方法を含むディスカッション ( Android ICS (4.0) でホーム ボタンを無効にする ) を見つけました。@Chalaman によって提案されています。
私はまだ要点を理解していません。いくつかのコードを提供することで、私をもっと助けることができる人はいますか?
使用する場合:
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.HOME" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
マニフェスト ファイルでは、ホーム ボタンをクリックするとダイアログがポップアップします。これには、ホームの電話ページ アイコンとアプリケーション アイコンが含まれます。私たちは選択することができます。アプリケーション アイコンを選択すると、アプリケーションにとどまります。問題は、私たちも同じ活動にとどまっていることです。別のアクティビティ (アプリケーションのホームページ) に移動するにはどうすればよいですか?
API レベル 10 以下で実現できます。
@Override
public void onAttachedToWindow() {
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.HONEYCOMB)
this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);
super.onAttachedToWindow();
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
switch (keyCode) {
case KeyEvent.KEYCODE_HOME:
loadStartPage();
break;
}
return super.onKeyDown(keyCode, event);
}
private void loadStartPage() {
Intent intent = new Intent(getApplicationContext(), StartActivity.class);
intent.putExtra("user", user);
intent.putExtra("user_id", user_id);
intent.putExtra("server", server);
intent.putExtra("password", password);
main_activity.startActivity(intent);
}
API レベル 11 以降でスタート ページを読み込むには?