Android - можно ли определить, присутствует ли кнопка физической камеры? - PullRequest
1 голос
/ 27 января 2012

Я пишу приложение, в котором я хотел бы предложить пользователю возможность переназначить аппаратную кнопку камеры для выполнения какой-либо другой функции. Однако, если на устройстве нет кнопки аппаратной камеры, я бы хотел скрыть эту опцию.

Есть ли способ обнаружить наличие кнопки камеры на устройстве?

Ответы [ 2 ]

2 голосов
/ 27 января 2012

Мое предложение было бы попросить пользователя нажать кнопку камеры, чтобы переназначить ее. Таким образом, только пользователи с кнопкой камеры смогут переназначить ее. На экране, который просит пользователя нажать кнопку камеры, может появиться сообщение «Пожалуйста, нажмите кнопку камеры. Не на всех устройствах есть кнопка камеры. Если у вас ее нет, нажмите кнопку Назад, чтобы отменить».

1 голос
/ 27 января 2012

К сожалению, я не думаю, что это возможно.Класс PackageManager может дать вам информацию о разных вещах, но наличие жесткой кнопки камеры не входит в их число.Вы можете сделать что-то вроде:

boolean hasCamera = 
        getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA);

Но, к сожалению, нет ничего лучше PackageManager.FEATURE_CAMERA_BUTTON

Однако вы можете сделать жесткий код в связке проверок для определенных устройств, которые вы знаете, чтобыесть аппаратные кнопки камеры, например.

public boolean hasCameraButton() {
if(android.os.Build.MODEL.equals("droid1")) return true;
//more code here
}

где droid1 должен быть фактическим идентификатором .. я не знаю, что это такое

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...