Archive for the ‘ Programação ’ Category

Preparando seu Zenfone 5 para desenvolvimento

Esse post trata de explicar todos os passos para usar um Zenfone 5 para desenvolvimento Android (duh!) em ambiente Windows.

O primeiro passo é habilitar o USB Debugging seu telefone, para que seu Eclipse/Android Studio consiga enxergá-lo.

Essa opção fica bem escondida.  Você precisa ir em Configurações > Sobre > Informações do Software e lá, tocar várias vezes em Número da versão até que uma mensagem confirme que você ganhou é um desenvolvedor. Aí surgirá a Opções do Desenvolvedor no menu. Basta entrar e ativar a Depuração USB.

(Em inglês, o caminho seria Configurations > About > Software Information > Build Number)

android

Feito isso, seu Windows tentará instalar os drives automaticamente do novo hardware encontrado. E falhará.

Agora você precisa instalar os drivers USB do seu Zenfone. Baixe aqui, descompacte, abra o Gerenciador de Dispositivos…

android2… selecione o diretório onde baixou e instale.

Se fez tudo certo, agora seu Zenfone será reconhecido pela sua plataforma de desenvolvimento.

android3

android4

Flash Develop: Erro no code hint do Math.atan2

Estava eu a criar uns exemplos de trigonometria pra postar aqui, usando o Flash Develop 3.2.2 pra codar e notei esse erro,  que a primeira vista achei ter sido mudança de sintaxe, apesar de que desde os tempos do AS2, o método estático atan2 sempre foi o mesmo, Math.atan2(y:Number, x:Number).

O code hint aparece com os parâmetros trocados:

Conferindo no Flash IDE:

Você pode simplesmente usar do jeito correto, ignorando o code hint, mas caso você queira consertar basta usar o goto declaration (F4 no método), localizar o SWC com os ASDOC, descompactá-lo, consertar e compactá-lo novamente.

PS.: Esse erro já foi corrigido nas versões posteriores.

 

Usando CKEditor + CKFinder com o CodeIgniter

CKEditor

Caso você não conheça, o CKEditor (antigo FCKEditor) é visto como um dos melhores editores WYSIWYG open source para HTML, outra boa opção é o TinyMCE. Com eles você pode criar uma caixa de texto “rico”, com formatação de texto, inserção de links, imagens. Você pode até criar formulários.
Ambos funcionam só com Javascript, e são compatíveis com versões variadas dos browsers mais comuns. Como optei por usar o CKEditor, é dele que vou falar.

ckeditor

Com o CKEditor What You See Is What You Get (talvez não com o IE6)

CKFinder

Já o CKFinder é um plugin para o CKEditor, permitindo um gerenciamento completo de arquivos. Com ele você pode navegar nos diretórios do seu servidor e fazer upload de arquivos variados.
O único problema é que ele é pago, mas você pode baixar uma versão demo com a ausência de algumas features.

( Quase ) tudo é traduzido automaticamente. A mensagem da versão demo não foi.

Feitas as devidas apresentações, vamos ao trabalho.
Leia mais

AMFPHP: Error #2044: Unhandled NetStatusEvent: level=error, code=NetConnection.Call.BadVersion

Estou com uma idéia de projeto interessante e esta semana comecei a pesquisar as plataformas que poderiam atender essa idéia. Comecei com famoso AMFPHP.

Baixei a versão mais recente e fui assistir uma palestra de introdução ao AMF, mas logo num teste dos mais básicos, ao Flash tentar chamar um método do PHP acontece o erro, maldito erro!

Error #2044: Unhandled NetStatusEvent: level=error, code=NetConnection.Call.BadVersion

Tá bom, Unhandled NetStatusEvent é solucionável, basta adcionar um listener pro NET_STATUS, mas realmente acontece um erro de NetConnection. Procurando pelos fóruns, não se encontra uma solução racional, simplesmente em cada incidência do erro é apontada uma solução diferente.
Eu tentei trocar nomes de classes, conferir urls e paths, desinstalar e instalar módulos do apache, do php, e nada.

O que funcionou pra mim foi baixar uma versão anterior à última:  amfphp-1.9.beta.20080120, seguindo a dica do Danilo Castilho {ASDevs}. Ainda não sei o porque da versão mais recente ter esse problema, mas pretendo descobrir.

Mas outras soluções podem ser:

  • Tirar espaços em branco, antes e depois das tags php.
  • Comentar a linha “$gateway->disableStandalonePlayer();” no gateway.php, que impede a comunicação quando se está usando por um player isolado.
  • Problemas com a versão do encoding de AMF usado: myService.objectEncoding = ObjectEncoding.AMF0; // .AMF3

Conversão de HTML Entities – AS3

As HTML Entities ( “Entidades HTML” ) são códigos, oriundos de uma tabela de conversão, que representam caracteres e símbolos não tão comuns quanto letras e números. Pra ficar mais fácil de entender…

Caracter Descrição Nome da Entidade Número da Entidade
espaço não separável    
< menor do que &lt; &#60;
> maior do que &gt; &#62;
& e comercial &amp; &#38;
aspas &quot; &#34;

Recentemente fiz alguns projetos em AS3 que carregavam dados de umRSS, e em quase todos os símbolos estavam convertidos às suas entidades HTML, para converter em seus símbolos é super simples.

?View Code ACTIONSCRIPT
public function htmlUnescape(str:String):String
{
    return new XMLDocument(str).firstChild.nodeValue;
}
 
// exemplo:
trace(htmlUnescape("Cachorro &amp; gato"));  // Cachorro & gato

Caso você precise converter os símbolos em entidades:

?View Code ACTIONSCRIPT
public function htmlEscape(str:String):String
{
    return XML( new XMLNode( XMLNodeType.TEXT_NODE, str ) ).toXMLString();
}
 
// exemplo:
trace(htmlUnescape("Cachorro & gato"));  // Cachorro &amp; gato

E caso você ainda viva no mundo pré-histórico do AS2, também há solução:

?View Code ACTIONSCRIPT
function htmlUnescape(str:String):String
{
    return new XML(str).firstChild.nodeValue;
}
 
function htmlEscape(str:String):String
{
    return new XMLNode( 3, str ).toString();
}

Créditos: http://www.razorberry.com/blog/archives/2007/11/02/converting-html-entities-in-as3/