Meu dispositivo Android é o Nexus One. Mas isso deve se aplicar a todos os dispositivos Android atuais.
Como altero o nome do meu dispositivo Android?
Quando me conecto às tabelas de clientes do meu roteador sem fio, meus dispositivos Android são listados, por exemplo, como: android_1234567890abedfc. Eu gostaria de dar um nome mais legível.
Respostas:
Para alterar o nome do host (nome do dispositivo), você deve usar o terminal (como root):
Para Eclair (2.1): echo MYNAME> / proc / sys / kernel / hostname
Para o Froyo (2.2): (funciona também na maioria dos 2.3) setprop net.hostname MYNAME
Em seguida, reinicie o seu wi-fi. Para ver a alteração, digite uname -a
alguns dispositivos precisam ser reiniciados para o trabalho!
fonte
uname -a
não mostra o nome do host para mim, apesar de dizerlocalhost
. o que você espera que ele mostre?Resumo:
getprop net.hostname
(Nome do host do sistema Android, provavelmente nome do tipo android_24412414)echo $HOSTNAME
(nome do host shell / terminal / env, provavelmente ro.product.device de build.prop)cat /proc/sys/kernel/hostname
(Nome do host do sistema Linux, provavelmente localhost )head /etc/hosts
(Nome do host do sistema Linux, provavelmente localhost )hostname
(O comando nem sempre instalado, se instalado pela caixa de ocupado, lê / proc / sys / kernel / hostname )Depende da versão do Android que você possui.
Android 4.0 e superior
As versões mais recentes usarão a
build.prop
entrada correta . Bem, isto é, o Android lê obuild.prop
processo de inicialização normal. Depois que o Serviço de Conectividade é executado, ele verifica se net.hostname está definido nas Configurações e, se estiver vazio, ele usa o "android_" + ID do Android (permanente). Então é tudo o que você precisa fazer.Adicionar
net.hostname=HOSTNAMEHERE
a/system/build.prop
(raiz pode ser necessária). Deixe uma linha em branco no final do arquivo.ConnectivityService.java de Kitkat, observe a instrução IF isEmpty :
Android 2.3 e abaixo
Versões mais antigas, Gingerbread, Froyo, etc, acabam com ele. Não se preocupa em verificar. Ele definirá net.hostname como android_24412414 ... não importa o quê. Portanto, você precisará alterá-lo após o término do carregamento do Serviço de Conectividade. Felizmente, ele executa a inicialização apenas uma vez, não em todas as novas conexões. Então, só precisamos correr
setprop net.hostname HOSTNAMEHERE
atrás disso para que ele permaneça. Infelizmente, ele é executado bastante tarde no processo de inicialização, portanto, você precisa de algo que faça as alterações no boot_complete. Provavelmente, um aplicativo é executado por si só.ConnectivityService.java do Froyo :
Mas depois há outra questão.
A configuração net.hostname não é copiada para todo o sistema! Se você usar um aplicativo de console / terminal, talvez não obtenha o mesmo nome de host. Meu telefone, um Samsung Sidekick 4G (baseado no semi-Galaxy S), possui um init.rc que é executado
hostname localhost
, portanto, todos os comandos abaixo não verão seu nome de host build.prop ou o nome de host android_id! Então você precisa definir isso também.Nota: Dependendo de como você está fazendo isso, você precisará executar o comando acima como root para que ele funcione. O Init.rc normalmente está na partição do sistema somente leitura, portanto, é necessário acesso root para editá-lo.
O comando dhcpcd, que é executado para obter um endereço dhcp, não será atualizado para um nome de host fornecido pelo servidor (isso pode ser corrigido adicionando os dhcpcd-run-hooks e dhcpcd.conf) e não fornecerá um nome de host ao servidor dhcp se
$(hostname)
(O comando hostname) estiver em branco ou localhost, e ele não usar internamente net.hostname. libnetutils é usado para chamar dhcpcd com -h "net.hostname", mas se por algum motivo decidir não ligar com -h, o DHCPCD AINDA ENVIARÁ O NOME DO HOSTNAME DO SISTEMA via gethostname (), desde que não seja "(nenhum) "," localhost "ou vazio. Em Stock Froyo de qualquer maneira. A Samsung ferrou o cão em alguns dispositivos como o meu. Nenhum nome de host passa, tempo de rede forçado etc.Minha solução para Gingerbread e abaixo da Samsung, edite a configuração do DHCP Client Daemon:
A última coisa que você pode fazer é editar o /etc/dhcpcd/dhcpcd.conf. Se você adicionar
hostname YOURHOSTNAME
ao arquivo, ele será usado, a menos que um nome de host seja fornecido na linha de comando. Isso não corrigirá o problema do android_234etc, mas sim se o nome do host for localhost (problema meu, já que a Samsung ferrou libnetutils e localhost no init.rc). Você precisará do Root, mas isso funciona nas reinicializações. Isso não funcionará se o dhcpcd for chamado com a opção -h Hostname.fonte
Eu encontrei uma maneira de fazer isso no meu Nexus 7 com 4.2.2. A configuração é salva persistentemente e funciona durante as reinicializações.
Fonte: http://nileshgr.com/2012/10/13/how-to-change-wifi-host-name-of-your-android-device
fonte
setprop
comando por meio de um shell raiz no dispositivo: por exemplosetprop net.hostname NewHostName
Isso funciona no CyanogenMod e provavelmente em outras ROMs modificadas, mas não em ROMs AOSP:
Vá para Configurações> Opções do desenvolvedor e role para baixo até Nome do host do dispositivo . Raiz não é necessária.
(Clique na imagem para ampliar)
fonte
Não tenho estoque há muito tempo, mas em Configurações do aplicativo> Desenvolvimento, você verá a opção 'Nome do host do dispositivo'.
fonte
Vá para a Google Play Store. Pesquise "hostname" e faça o download do aplicativo de alteração de hostname .
Deve estar enraizado.
fonte
O nome do host é usado para identificar e lembrar facilmente os hosts conectados a uma rede. É definido na inicialização, por exemplo,
/etc/hostname
em sistemas baseados em Linux. O nome do host também faz parteDHCPREQUEST
(padronizado como código 12 pelo IETF) que um cliente DHCP (dispositivo Android no nosso caso) faz no servidor DHCP (roteador WiFi) para obter um endereço IP atribuído. O servidor DHCP armazena os nomes de host para oferecer serviços como DNS .O Android - em vez de usar o serviço de nome de host do kernel do Linux - usava a propriedade
net.hostname
para definir um nome de host exclusivo para cada dispositivo baseado no ID do Android. Essa propriedade hostname também foi usada para handshake DHCP. Contudo, desde Android 5 - quando o nativodhcpcd
foi abandonada em favor de cliente Java DHCP - hostname é nula noDHCPREQUEST
. nãonet.hostname
é definido nem avaliado pelo cliente DHCP. Portanto, os roteadores WiFi não mostram nomes de host para dispositivos Android mais recentes, nem podemos defini-lo / desmarcá-lo / alterá-lo.fonte