Após vários dias escavando os arquivos certos para usar, descobri finalmente como o celular trabalha com aplicativos instalados na memória interna. Para aplicativos em JAVA fica fácil, pois na instalação você seleciona Flash ou MMC. Porém, com programas nativos, os pacotes PKG, o negócio é mais em baixo. Então aqui vai um passo-a-passo de como realizar este procedimento sem troca de firmware.
Bom, dentre as vantagens e desvantagens de se ter programas nativos instalados na memória do celular, temos:
Vantagens
1. Você não vai precisar reinstalá-los sempre que trocar de cartão de memória
2. Quando usado como Unidade USB, o celular bloqueia todos os aplicativos instalados no cartão de memória e eles não poderão ser executados. Agora não, você terá os programas rodando da memória do celular e este inconveniente não existirá.
3. Poderá tirar proveito de programas espiões, que se autoiniciam com o celular e rodam em modo oculto e até mesmo nem aparecem na listagem de programas. Mesmo trocando de CHIP ou Cartão de memória, o programa permanecerá lá (é uma viagem, mas em caso de roubo, isso é bem possível)
4. O SmartAsst, caso instalado na memória do celular, continuará instalando e desinstalando os pacotes do cartão de memória. É uma vantagem pois a memória do aparelho é muito mais limitada.
Desvantagens
1. O espaço é mais limitado, portanto você só poderá instalar programas que considerar essenciais
2. Caso queira desinstalar um programa terá de fazê-lo manualmente, pois a atual versão do SmartAsst não desinstala da memória do celular.
Prosseguindo
Local
/ezx_user/download/appwrite/am
Arquivos e funções
InstalledDB - Equivalente ao CardRegistry do cartão de memória, porém com função na memória do celular. Armazena uma lista de aplicativos instalados, suas IDs e parâmetros para exibição
UserMenuTree - Armazena os identificadores dos programas e os grupos aos quais pertence.
Após vários testes, notei que apenas estes dois arquivos são necessários para exibição e execução do aplicativo corretamente, embora outros façam menção a todos os aplicativos. São eles: PlugCardRegistry e UserConfig.
Local para armazenamento dos aplicativos
/ezx_user/download/QTDownLoad
Para armazenamento dos arquivos, o procedimento é exatamente igual ao cartão de memória. Basta copiar a pasta do programa completa para este local.
Creio que também seja possível usar a pasta /ezxlocal/download/QTDownLoad para armazenamento dos programas, visto que os arquivos InstalledDB e UserMenuTree fazem apenas referência ao programa, então pouco importa o local de armazenamento.
Vamos lá:
Vou usar como exemplo o programa SYSInfo.
Pegue o arquivo sysinfo-0.1.pkg e troque a extensão para ZIP. Depois descompacte. Você verá que ele descompactou um arquivo exatamente igual, de extensão PKG. Repita o procedimento, trocando a extensão novamente para ZIP. Descompacte. Agora você verá uma pasta com o nome do programa, sysinfo.
Feito isso, você copia essa pasta para dentro de /ezx_user/download/QTDownLoad e para isso você tem várias opções. Algumas são:
netcontrol, acessando seu celular como dispositivo de rede
SSH, tipo telnet, mas eu nunca mexi com isso
eKonsole, copiando a pasta que você acabou de descompactar para o cartão de memória e depois movendo ela para dentro de /ezx_user/download/QTDownLoad.
Bom, a seguir você precisará editar os arquivos InstalledDB e UserMenuTree que se encontram em /ezx_user/download/appwrite/am. Copie ambos para o seu computador e faça um backup dos dois arquivos.
É melhor você usar programas do tipo UltraEdit, TextPad, EditPad, para editar os arquivos. NÃO use o Notepad, Wordpad, Word nem nada do tipo pra não modificar a codificação do arquivo e o bagunçar com seu aparelho.
Abra o arquivo InstalledDB e cole isso no final do arquivo:
[77777777-7777-7777-7777-777777777777]
AniIcon =
AppID = {77777777-7777-7777-7777-777777777777}
Args =
Attribute = 2
BigIcon = sysinfo.png
Daemon = 0
Directory = /ezx_user/download/QTDownLoad/sysinfo
Eraseable = 1
Exec = sysinfo.sh
FixedAllPosition = 0
FixedPosition = 0
GroupID = ezx
Icon = sysinfo-sm.png
InstalledDate =
JavaId = -1
MassStorageStatus = 0
MpkgFile =
Name = EZXSysInfo
OsVersion = 1.1
Shared = 0
Size = 256K
Type = 2
UserID = ezx
Visible = 1
Salve.
Agora abra o arquivo UserMenuTree
Este arquivo armazena os grupos e os programas pertencentes a eles, separados por ; (ponto e vírgula)
Localize a chave [cb839c8f-72c3-42ac-bf17-b01080cb5705] e, em Items, vá para o final da LINHA e acrescente ;77777777-7777-7777-7777-777777777777
Esta chave representa o grupo TODOS e é o suficiente para ter o seu programa exibido na tela do celular.
Após isso, salve.
Agora um detalhe importante: eu aqui usei o identificador 77777777-7777-7777-7777-777777777777, mas nada impede que você use qualquer outra seqüência em hexadecimal. O mais importante é que você JAMAIS repita este id, pois é o mesmo que ter dois arquivos com o mesmo nome na mesma pasta. Portanto, verifique antes se o id já está em uso.
Depois copie de volta os arquivos alterados para /ezx_user/download/appwrite/am, substituindo os atuais. Reinicie o celular ou, caso tenha o eKonsole instalado, execute o comando
/sbin/start-stop-daemon --stop -n am
Este comando reinicia somente a interface gráfica.
E é isso! Agora você tem seu aplicativo rodando eternamente na memória do celular, não importa o cartão de memória ou condições climáticas, e tudo isso sem precisar trocar de Firmware.
Abraços!



Responder com Citação




Favoritos