Pessoal, consegui resolver o problema do Push aqui no meu.
Como é um recurso que utilizo bastante (twitter, email, msn), tava sentindo bastante falta disso.
a mensagem ficou grande, mas quis explicar exatamente o que fiz. não me responsabilizo por nada. se não souber atualizar o firmware e nem utilizar o cydia, nem perca tempo fazendo isso.
Pesquisando um pouco, cheguei a uma conclusão (é só especulação, não deem isso como certeza absoluta):
todo iphone deve possuir um certificado unico e exclusivo. esse certificado é gerado na hora que você conecta o iphone no itunes. o certificado é gerado no seu iphone e passado pra apple tbm.
dae toda vez que vc utiliza o push, o seu certificado é enviado para a apple, afim de verificar se tudo está correto.
a solução encontrada no cydia funcionaria em teoria, já que gera um certificado, porem, esse certificado é sempre igual pra todo mundo, e a apple acaba verificando que várias pessoas estão utilizando o mesmo certificado e acaba 'bloqueando' o push nesses celulares. acho que essa verificação é recente, já que antes funcionava numa boa e parou do nada, sem nenhuma modificação.
só que esse problema ocorre somente depois de desbloquear o iphone para qualquer operadora (ultrasn0w).
a solução seria 'roubar' o certificado de um iphone bloqueado e colocar no meu. mas como eu não tenho acesso a um iphone bloqueado pensei no seguinte:
- bloquear meu iphone
- ativar
- copiar o certificado pro pc
- desbloquear
- colocar o certificado anterior
resultado! funcionou!!! to a dois dias com o push funcionando.
infelizmente vc terá que aplicar um novo firmware, e apagar tudo. não sei se pode restaurar o backup depois, acredito que não, pois iria sobreescrever os certificados. na dúvida, acabei não restaurando o backup, já que eu deixo tudo sincronizado com os servidores do goole (gmail, calendar, etc).
como fazer:
primeira coisa, vc precisa possuir um chip que funcione com seu iphone bloqueado. por sorte eu tinha um chip da at&t em casa. acredito que o chip esteja bloqueado, mas mesmo assim funcionou. o importante é, se o seu iphone original funcionava só com chip da at&t, você deve possuir um chip da at&t, se funcionava só com chip da vivo, você deve possuir um chip da vivo.
retire o chip atual, coloque o chip que seu iphone era original, e aplique um firmware sem o ultrasn0w! no caso, eu acabei aplicando um firmware custom feito pelo eunoba (
http://www.iphonemod.com.br/forum/problemas-com-o-blackra1n-ou-iphone-desbloqueado-oficial-t15057.html) seguindo todo aquele procedimento no tópico.
depois, fiz as atualizações do cydia, instalei o openssh, e um aplicativo qualquer que utilize o PUSH (no caso, usei o Meebo Free).
se no itunes, pedir pra autenticar/registrar (não lembro bem como aparece) o iphone, faça-o. (não lembro se apareceu no meu, eu acabei confirmando uma mensagem qualquer que apareceu bem na hora que eu tava 'clicando' em outra coisa e não deu tempo de ler).
conectei na rede sem fio, e fiz um teste com qualquer aplicativo push para ver se o push está funcionando corretamente.
funcionando, comecei o processo de 'extrair' o certificado.
fiz o download desse arquivo
http://glitch.myhostclub.com/PushTestPack.zip e extrai em uma pasta qualquer.
copiei o arquivo 'nimble' para o iphone, na pasta /private/var/Keychains, e alterei a permissão pra 0755.
verifiquei se existia um arquivo chamado 'keychain-2.db' na mesma pasta (/private/var/Keychains) e atraves do putty, executei o arquivo nimble (isso no iphone).
foi criado 4 arquivos:
youtube-cert.bin
youtube-key.bin
push-cert.bin
push-key.bin
copiei esses arquivos pro pc.
agora, comecei o processo de desbloquear para qualquer operadora.
não sei se isso realmente é necessário, mas acabei aplicando novamente um firmware, e dessa vez instalei o ultrasn0w. quem sabe deve funcionar somente instalando o ultrasn0w no firmware que estava utilizando nos passos anteriores, mas em via das dúvidas, o que fiz foi:
retirei o chip da at&t, e coloquei meu chip da vivo.
apliquei um novo firmware no iphone (nessa caso, esse aqui:
http://www.iphonemod.com.br/forum/firmware-custom-2g-3g-3g-by-euoba-t15044.html) - NÃO RESTAUREI BACKUP e fiz todo o procedimento do tópico.
depois de aplicado, atualizei o cydia, instalei o openssh, ultrasn0w, e o briphone! - NÃO INSTALEI NENHUM APLICATIVO COM PUSH AINDA
agora, atraves do ssh, copiei os 4 arquivos criados anteriormente (youtube-cert.bin, youtube-key.bin, push-cert.bin, push-key.bin) e tambem os arquivos 'inject' e 'nimble' (daquele arquivo que fiz o download).
alterei a permissão dos arquivos 'inject' e 'nimble' pra 0755
fiz uma copia de segurança do arquivo 'keychain-2.db', e executei o inject
instalei um aplicativo qualquer com push (Meebo free e echofon).
testei, e tudo funcionando até agora (2 dias).