Como posso alterar o comportamento dos botões de volume versus a orientação da tela

19

No Acer Iconia A200, quando você altera a orientação da tela, a função do controle de volume muda. No modo paisagem, com o botão de volume no lado direito e na parte superior, você descobre que 'para baixo' no botão reduz o volume.

Agora, vire o dispositivo 90 graus para a esquerda na orientação de portait, com o botão de volume no canto superior esquerdo. Agora, a mesma impressora que estava "abaixada" antes é "certa" e aumenta o volume.

Em outras palavras, a ação do controle de volume é sensível à orientação do dispositivo.

Ainda não encontrei nenhuma maneira de controlar isso nas configurações - existe alguma maneira de alterar esse comportamento? Acabarei me acostumando, mas no momento isso está me deixando maluca.

Adicionado: Depois de ver a resposta de Zuul falando sobre o arquivo gpio_keys.kl E obter um teclado bluetooth, fiz algumas experiências. Ao usar um teclado bluetooth, os botões para aumentar / diminuir o volume do bluetooth são independentes da orientação do tablet. Portanto, um pouco de software verifica de onde a chave vem e remapeia ou não é o apropriado, OU a troca está acontecendo em uma camada inferior (ou seja, antes de se tornar um código de chave).

Michael Kohne
fonte

Respostas:

2

Como as coisas funcionam atualmente

O sistema operacional Android usa um arquivo para mapear os botões de volume para saber o que fazer quando pressionados:

O arquivo:

/system/usr/keylayout/gpio-keys.kl

Contém duas linhas para os botões de volume:

key 115 VOLUME_UP WAKE_DROPPED
key 114 VOLUME_DOWN WAKE_DROPPED

Eles não são "sensíveis à orientação", assim como sua posição física no dispositivo.

O problema que você enfrenta, muitos outros proprietários de tablets, que tem a ver com a posição lógica da ação. Se pressionarmos a parte inferior do botão, o volume deverá diminuir, mas, dependendo da orientação, a parte inferior aumentará o volume.

Eu acredito que a rotação do dispositivo deve ser responsável por fatores como esse, para impedir que os usuários tenham que "criar" hábitos estranhos para uma simples ação "diminuir o volume". Por outro lado, é por isso que os botões de volume do tablet são pontuados por três pontos levantados para facilitar o reconhecimento tátil.


Solução possível para dispositivos raiz

Como esses botões para serem alterados precisam ser alterados no "nível do sistema", a ação deve ser executada com privilégios de root no dispositivo.

Embora as duas soluções a seguir não possam lidar com cenários específicos de orientação, eles são úteis para remapear os botões para ajustá-los à orientação da mesa gráfica na qual ficamos mais confusos:

  1. Aplicativo: ButtonRemapper - Beta v0.2.4

    Ferramenta para remapear os botões de hardware. Ou melhor: uma ferramenta genérica para editar o arquivo de mapa de layout de chaves que o Android usa para mapear as chaves.

    Tópico do fórum XDA Developers com detalhes detalhados do autor

    ButtonRemapper Capturas de tela


  2. Edição manual do arquivo gpio-keys.kl::

    1. Com um gerenciador de arquivos raiz, vá /system/usr/keylayoute toque no arquivo gpio-keys.kl;
    2. No menu pop-up, selecione "Propriedades";
    3. Altere as permissões de arquivo para rw-rw-rw-para poder alterar seu conteúdo;
    4. Após ter as novas permissões, abra o arquivo com um editor de texto;
    5. Pesquise no arquivo as duas linhas a seguir:

      key 115 VOLUME_UP WAKE_DROPPED
      key 114 VOLUME_DOWN WAKE_DROPPED
      
    6. Atualize as linhas trocando os números das chaves para que elas se tornem:

      key 114 VOLUME_UP WAKE_DROPPED
      key 115 VOLUME_DOWN WAKE_DROPPED
      
    7. Salve as alterações e reinicie seu tablet.

    Agora você deve alternar as ações dos botões de aumentar / diminuir o volume, da forma que melhor se ajustam à orientação do retrato.

    Para desfazê-lo, basta inverter essas instruções.

    Os créditos para a solução de edição de arquivos são atribuídos ao usuário jbeige do thriveforums.org .


Depois de ler o manual do dispositivo , outros manuais do tablet e as especificações do sistema operacional Android, essas são as melhores soluções que eu consegui encontrar para solucionar seu problema.

Zuul
fonte
1
Acho que você perdeu um pouco a pergunta. Você vê, neste dispositivo, eles são sensíveis à orientação. Eu tenho dois botões - '1' e '2'. Quando o tablet está no modo paisagem com os botões na parte superior, '2' diminui o volume e '1' aumenta. Quando o tablet está no modo retrato, com os botões à direita, '1' diminui o volume e '2' aumenta. Essa sensibilidade à orientação é uma dor GRAVE no pescoço, porque eu tenho outros dispositivos que NÃO possuem esse recurso, tornando diabolicamente difícil alterar o volume quando troco de dispositivo. Além disso, veja minhas edições sobre teclados bluetooth.
precisa saber é o seguinte
1

Esse recurso é incorporado à ROM, por isso é totalmente dependente do que o chef cozinhou na ROM.

Você pode encontrar ROMs como CM9 e AOKP que têm várias opções para o controle de volume - mas forçar os dispositivos a permanecerem estáticos em dispositivos como este, onde as alterações não são as que eu já vi.

rm-vanda
fonte
2
Por favor, não ligue para as cozinhas CM e AOKP e seus chefs de desenvolvimento. Cozinhar uma rom é modificá-la com uma ferramenta zip - algo que é trivial e menosprezado.
RR
0

O Button Saviour é uma aplicação que fornece teclas de função no ecrã para todas as teclas de atalho do seu dispositivo. Embora exija um dispositivo enraizado, afirma-se que alguns recursos estão funcionando com dispositivos não enraizados. A versão paga permitirá que você personalize as teclas programáveis, incluindo sua posição. Por favor, tente.

Narayanan
fonte
Não é a solução para mim - não gosto de adicionar controles extras na tela.
22630 Michael Kohne