PHP agora funciona no Android: PhpForAndroid

Uma descoberta interessante que chama a atenção de desenvolvedores PHP como eu. Uma versão do PHP foi criado pela empresa Irontec para funcionar através do interpretador para Android ASE (Android Scripting Environment) que já conta com outras linguagens interpretadas (Python, Perl, JRuby, Lua, BeanShell, JavaScript, Tcl, e Shell) e acessa alguns recursos do Android (mensagens do sistema, sensores, rede, etc.). Segundo Iván Mosquera, engenheiro de software da Irontec, a empresa começou a desenvolver aplicativos para Android feitos em Java, mas o foco principal dos projetos da Irontec era PHP. Sabendo da existência do ASE, que ainda não contava com PHP, eles iniciaram a criação do suporte ao PHP no ASE.

Como a última versão do ASE (r25) ainda não era apropriada para usar o PHP,  os engenheiros da Irontec criaram uma versão r26 não oficial que funciona perfeitamente com a biblioteca PHP criada pela empresa(PHPForAndroid). Não há necessidade de um webserver, já que o PHPForAndroid conta com CLI (commando Line Interface). Não é possível ainda criar aplicações apartir do PHPForAndroid, mas é um bom incentivo aos desenvolvedores php a conhecer melhor a plataforma do Google.

A versão r26 do ASE, criada pela Irontec está disponível pra download no site oficial do PhpForAndroid, assim como o .apk para instalação do PhpForAndroid que vem com alguns scripts de exemplo. A interface do ASE é simples e fácil de usar. Esperamos que isso ainda tenha um bom futuro.

Fonte: http://www.phpclasses.org/blog/post/125-Developing-PHP-applications-to-run-natively-on-Android-phones.html

Real Terminators – robôs exterminadores que dão medo

Não é só na ficção que robôs exterminadores dão medo. Essa série mostra projetos de futuros andróides que poderão ser usados pelo exército americano.

Me deu  medo =[

Google poderá remover aplicativos do Android Market

Foi anunciado recentemente no blog oficial dos desenvolvedores Android que uma tecnologia de remoção de aplicativos que violam as normas do Android Market. Além disso, aplicativos que foram removidos mas que ainda estão instalados nos aparelhos dos usuários poderão ser desinstalados remotamente.

“Every now and then, we remove applications from Android Market due to violations of our Android Market Developer Distribution Agreement or Content Policy. In cases where users may have installed a malicious application that poses a threat, we’ve also developed technologies and processes to remotely remove an installed application from devices. If an application is removed in this way, users will receive a notification on their phone.” -  Tim Bray, do blog oficial Android Developers.

Parece ser uma medida radical, mas isso pode garantir aplicativos mais confiáveis no Android Market.

Confira mais no Blog  Android Developers.

Adicionando papéis de parede da National Geographic no Linux

Pra quem já viu, as fotos da National Geographic mundo afora são magníficas. A maioria delas foram disponibilizadas em tamanho grande para servir de wallpaper. FREE.

Os scripts a seguir baixam diversos papeis de parede da NatGeo (2008 e 2009).

http://dl.dropbox.com/u/7702099/natgeo2008.sh

http://dl.dropbox.com/u/7702099/natgeo2009.sh

Crie uma pasta para armazenar os wallpapers, entre na pasta e execute os scripts.

1
2
3
4
mkdir NatGeo
cd NatGeo
sh caminho/para/o/script/natgeo2008.sh
sh caminho/para/o/script/natgeo2009.sh

Agora é só escolher a imagem e definir como plano de fundo.

Lançada versão beta do LogmeIn para Android

Chamada de Ignition, a prometida versão Android do aplicativo de acesso remoto online ainda não está disponível para o Market do Android no Brasil. Mas pra quem tem acesso root no Android isso não é obstáculo.

Logmein for Android

Atualização OTA do Milestone da Vivo tem Problemas

Os donos do Milestone da Vivo que atualizaram via OTA (Over The Air) o firmware do Android para a versão 2.1 tiveram problemas ao usar o dockstation e o Motonav. Com o dockstatios, após retirar o aparelho da base a tela não volta para a home, ou leva algum tempo para voltar. Com o Motonav é mais grave. O aplicativo simplesmente some, mesmo aqueles que foram comprados. Quem pagou 60 dólares pelo aplicativo ficou bem nervoso.

Mas felizmente é possível recuperar o Android desses problemas. No site Norbies há instruções de como recuperar o Android após a atualização desastrosa da Vivo. Para quem ainda vai atualizar lembre-se que há a opção de colocar um firmware retail (sem vínculo com operadora) disponível tanto para aparelhos de operadoras quanto os retail.

Transforme seu Android num scanner

Há alguns meses atrás ouvi falar do Scan2PDF, que transforma uma imagem capturada pela câmera num arquivo PDF. Mas nem dei importância. Essa semana resolvi testar e vi que o aplicativo é uma mão na roda quando o assunto é escanear documentos. O mais interessante é que o Scan2PDF já cria um arquivo único com todas as páginas escaneadas ou retiradas da galeria de imagens do Android.

Basta posicionar o aparelho de forma que toda a página esteja na tela. Depois é só disparar e clicar em “Make PDF”. Mais simples do que usar uma multifuncional num desktop.

Para baixar, clique aqui

Criando Plugins no CakePHP

Criar plugins para o CakePHP não e muito diferente de criar uma aplicação CakePHP. Os plugins nada mais são que elementos adicionais da aplicação CakePHP (models, views, controllers, behaviors, etc) e não é necessário criar o trio model-controller-view para que o plugin funcione, porém, conforme a necessidade do plugin, os elementos básicos de uma aplicação e outros elementos coadjuvantes (helpers, components, behaviors) poderão ser adicionados.

1. Criando o diretório do plugin
Numa aplicação aplicação CakePHP qualquer crie um diretório com o nome do plugin.

../plugins/nome_do_plugin

Use de preferência um nome em minúsculo, separando as palavras por underscore. Tenha certeza que o nome do plugin seja diferente do nome de algum controlador existente na aplicação. A hierarquia de diretórios segue o mesmo padrão de uma aplicação CakePHP

2 . Criando um controlador
Para que o plugin possa ser acessado por uma url, é necessária a criação de um controlador e algumas views. Antes de criar o controlador, um controlador base deve ser criado. No diretório do plugin, crie um arquivo chamado nome_do_plugin_app_controller.php com o seguinte conteúdo:

1
2
3
4
5
6
7
8
<?php

class NomeDoPluginAppController extends AppController
{
//algumas actions e callbacks
}

?>

Não é necessário colocar métodos no controlador, porém você poderá definir as ações que serão utilizadas apenas pelo plugin. Opcionalmente, caso haja necessidade de se usar models, crie um model base “nome_do_plugin_app_model.php”

1
2
3
4
5
6
7
8
<?php

class NomeDoPluginAppModel extends AppModel
{
    //alguns métodos
}

?>

3. Criando controladores e views
Para criar os controllers do seu plugin, crie um diretório “controllers” no diretório do plugin. O nome do controlador não precisa do nome do plugin como prefixo, porém tente criar um nome particularmente único. O controlador deverá estender o controlador base do plugin:

1
2
3
4
5
6
7
8
<?php

class MeuControladorController extends NomeDoPluginAppController
{
//...
}

?>

O resto é o que normalmente é feito para se visualizar uma action. Crie um diretório “views/meu_controlador” para inserir as views das actions correspondentes.

Para adicionar um model de um plugin em sua aplicação, é necessário chamar o model com o nome do plugin prefixado, separado por “.” (ponto). Por exemplo, para chamar o model “Pie” do plugin “Bakery” no seu controlador, escreva:

1
2
3
//...
var $uses = array('Bakery.Pie');
//...

Para adicionar outros componentes do plugin, adicione sempre o prefixo do nome do plugin separado por ponto.

Root no Motorola Milestone (2.0.1)

ATENÇÃO: Faça por sua conta em risco. Observe os passos cuidadosamente.

Para habilitar o super-usuário no Milestone 2.0.1 (ou qualquer outra versão) e personalizar algumas definições originais do Android (papéis de parede, temas, plugins de audio, etc..) , realize o procecimento a seguir.

1. Baixar o update.zip

Esse arquivo deve ser colocado no diretório raiz do cartão de memória com o nome de “update.zip” . Baixe o arquivo de update pro Milestone com Android 2.0.1 nesse link.

2. Reinicie o telefone

Desligue o telefone, e em seguida ligue ele, segurando o botão do flash ao mesmo tempo.Solte o botão power assim que o telefone ligar e continue segurando o botão do flash até que um triângulo com um ! apareça. Em seguida aperte o botão de aumentar o volume e junto com ele o botão do flash.

3. Aplicar update

Um menu com um fundo escura vai aparecer. Com as teclas direcionais do teclado fisico, escolha a opção “apply update.zip”. Ao finalizar o processo, selecione o menu “reboot”.

4. Whitelist

Quando o telefone religar, verifique se o aplicativo “Superuser Whitelist” está instalado. Se sim, seu telefone está com o root habilitado.

Comitiva: gerenciador de eventos em PHP

Com a organização do 3° Workshop PHPMS por alguns integrantes da lista do PHPMS no Google Groups, surgiu a necessidade de se fazer um sistema de controle de eventos, inscrições e pagamentos. Foi assim que surgiu o Comitiva, no qual eu tive a oportunidade de colaborar

O Comitiva é um projeto Open Source, usando o framework CakePHP que conta com tela de cadastro de usuários, inscrições em eventos,e administração de eventos e pagamentos. Colaboraram com o projeto os membros do PHPMS, além de mim, o Cauan Cabral, owner da Radig Soluções em TI, onde também trabalho, o Felipe Rigo, formado em C. Computação na UFMS e meu veterano e nosso amigo e co-fundador do grupo PHPMS, Bruno “Porkaria”.

O Comitiva foi testado e atendeu bem as expectativas durante a realização do 3° Workshop PHPMS. Mas o projeto não pára e está aberto para ser melhorado ou ser usado de base para novos projetos.

O projeto atualmente está no GitHub e pode ser obtido usando o git: github.comCauanCabral/

Mais informações:

PHPMS: http://phpms.org/artigos/4-codigo/226-comitiva
Bruno “Porkaria”: http://www.porkaria.com.br/
Cauan Cabral: http://cauancabral.net/

Switch to our mobile site