Tôi đang nghiên cứu một dự án nghiên cứu cho trường đại học của mình. Ứng dụng sẽ không bao giờ được đưa ra thị trường và chỉ được sử dụng cho nghiên cứu.Tắt nút Trang chủ trong ứng dụng Màn hình chính?
Tôi đã tạo một ứng dụng màn hình chính bằng cách sử dụng mã mẫu Google Màn hình chính. Ở đó, tôi đã thực hiện một hoạt động là một màn hình khóa. Khi ở trong đó, người dùng không thể thoát ra khỏi khóa bằng cách nhấn Home, Back, vv Nút Back có vẻ bị tắt, nhưng Home-Button thì không. Tôi đã thử một số giải pháp từ internet và stackoverflow, tất cả đều không hoạt động.
Đây là mã quan trọng:
(Thông báo: Logcat lãm "Nút nhấn: 4"! Cho Back-Button nhưng không cho nút home)
Trong Hoạt động Lock-Screen của tôi :
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
Log.v(TAG, "BUTTON PRESSED: " + new Integer(keyCode).toString());
if ((keyCode == KeyEvent.KEYCODE_BACK)) {
return true;
} else if ((keyCode == KeyEvent.KEYCODE_CALL)) {
return true;
}
else if ((keyCode == KeyEvent.KEYCODE_HOME)){
return true;
}
return super.onKeyDown(keyCode, event);
}
@Override
public void onAttachedToWindow() {
this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);
super.onAttachedToWindow();
}
Nó có vẻ như các onAttachedToWindow() Phương pháp không hoạt động kể từ Android phiên bản 4. Làm thế nào tôi có thể vô hiệu hóa các homebutton?
EDIT: Manifest file:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.android.home" >
<uses-permission android:name="android.permission.CALL_PHONE" />
<uses-permission android:name="android.permission.GET_TASKS" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.SET_WALLPAPER" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.EXPAND_STATUS_BAR" />
<uses-permission android:name="android.permission.NFC" />
<uses-permission android:name="android.permission.DISABLE_KEYGUARD" />
<permission android:name="android.permission.WRITE_SECURE_SETTINGS" >
</permission>
<application
android:icon="@drawable/ic_launcher_home"
android:label="@string/home_title" >
<service android:name=".MyService" >
</service>
<activity
android:name="Home"
android:launchMode="singleInstance"
android:stateNotNeeded="true"
android:theme="@style/Theme" >
<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>
<receiver android:name=".ScreenReceiver" >
<intent-filter>
<action android:name="android.intent.action.SCREEN_ON" />
<action android:name="android.intent.action.SCREEN_OFF" />
<action android:name="android.intent.action.USER_PRESENT" />
</intent-filter>
</receiver>
</activity>
<activity
android:name="Wallpaper"
android:icon="@drawable/bg_android_icon"
android:label="Wallpaper" >
<intent-filter>
<action android:name="android.intent.action.SET_WALLPAPER" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
<activity android:name=".LockPage" >
<intent-filter>
<action android:name="android.intent.action.SCREEN_ON" />
<action android:name="android.intent.action.SCREEN_OFF" />
<action android:name="android.intent.action.USER_PRESENT" />
<action android:name="android.nfc.action.NDEF_DISCOVERED" />
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.HOME" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.MONKEY" />
<category android:name="android.intent.category.DEFAULT" />
<action android:name="android.intent.action.MAIN" />
<data android:mimeType="text/plain" />
</intent-filter>
<intent-filter>
<action android:name="android.nfc.action.NDEF_DISCOVERED" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="http" />
</intent-filter>
</activity>
</application>
</manifest>
http://stackoverflow.com/questions/3898876/how-to -disable-the-home-key/8889913 # 8889913 – user370305
Điều này dường như chỉ đến chính xác điều tôi đã đăng? Hoặc tôi đang thiếu điểm bạn đang cố gắng thực hiện? – hamena314
Bạn đã thử [one?] Này (http://stackoverflow.com/questions/10025660/override-home-and-back-button-is-case-a-boolean-is-true/10025904#10025904) –