Facebook API – SDK PHP na prática e preview de como aprovar seu aplicativo

Recentemente o Facebook anunciou que sua API seria atualizada para a versão 4.0 e a mesma sofreria fortes mudanças. Eis que esse dia chegou, pff! A principal dessas mudanças foi a extinção do suporte ao FQL (Facebook Query Language – uma maneira linda de fazer requisões na API) e que os aplicativos que exigissem permições

Recentemente o Facebook anunciou que sua API seria atualizada para a versão 4.0 e a mesma sofreria fortes mudanças. Eis que esse dia chegou, pff!

A principal dessas mudanças foi a extinção do suporte ao FQL (Facebook Query Language – uma maneira linda de fazer requisões na API) e que os aplicativos que exigissem permições de publicar na timeline e outras coisas, passariam por um processo de aprovação, parecido com o que ocorre com a AppStore. O novo SDK faz uso de namespaces e roda no PHP 5.4 ou superior.

Isso para os desenvolvedores foi um caos, mas para os usuários isso é bem interessante, colocando em ordem a casa e protegendo um pouco mais sua privacidade.

Farei uso da API com o exemplo prático de um aplicativo que pega as fotos do usuários e depois faz um compartilhamento em sua própria timeline. Por fim mostrarei os passos para aprovar o aplicativo. Clique aqui ou aqui para baixar o SDK e vamos lá!

Criando o App

Primeira coisa que você deve fazer é ir no painel de aplicativos do Facebook Developer e criar um novo aplicativo. É um processo bem simples e por isso vou pular essa parte. Quando solicitado a plataforma do seu app, selecione Site (www). E lá em Settings altere o “Website -> Site URL” para a URL da sua aplicação, pode ser https://localhost/ .

Login

Em sua aplicação de Facebook você pode realizar o login do usuário usando o SDK JavaScript ou PHP. Não gosto muito de realizar o login via PHP porque já tive alguns problemas com o tal da URL Redirect (não lembro exatamente o porque rsrs, isso foi no boom das abas de fanpage e ações promocionais chovendo em sua timeline), devido a isso vou demonstrar das duas maneiras.

Login via JavaScript

Na linha 2 eu simulei que a solicitação veio através de um clique num link . Na linha 5 guardamos o destino do link para uso posterior. Na linha 7 fazemos a chamada ao método FB.login() que irá abrir uma caixa de diálogo na tela solicitando permissão ao usuário. Caso o usuário permita o login nas linhas 9 e 10 deixamos salvo o ID do usuário e o token da permissão para uso futuro. Deixei num cookie, mas fica a vontade para guardar isso da maneira que julgar melhor. E por fim na linha 11 envio o usuário para a página de destino do link, a página principal da aplicação quando logado.

É importante observar a linha 15, onde mencionamos todas as permissões que vamos precisar do usuário. Clique aqui pra ver a lista de permissões.

Ah, lembre-se de adicionar a chamada ao SDK JavaScript colocando o código abaixo antes do fechamento da tag .

Lembre-se de trocar o APP_ID pelo ID da sua aplicação.

Login via PHP

Não vou entrar em detalhes nesses arquivos de login via PHP porém mais abaixo tudo é explanado. Lembre-se de trocar APP_ID, APP_SECRET e URL_ARQUIVO_2 pelos seus respectivos valores.

Pegando as fotos do usuário

Nas linhas iniciais nos chamados o autoload da API para evitar ficar dando milhões de include e logo depois chamamos as classes do SDK que iremos utilizar. Na linha 8 setamos as configurações do nosso aplicativo, substitua APP_ID e APP_SERCRET pelos do seu aplicativo.

Da linha 10 à 18, verificamos se o usuários está logado. Lembra que no login eu guardei o token num cookie? Olha ele aí na linha 13.

Da linha 24 à 36 pegamos os dados do usuário logado para caso queira guardar num banco de dados, etc. Dê um var_dump na variável $object e veja o que ele contém.

Para pegar as fotos do usuário primeiro vamos pegar os álbuns e aí depois as fotos contida neles. Antigamente você pegava todas as fotos com apenas uma requisição =/ Da linha 40 à 43 pegamos os IDs dos álbuns e nas linhas 47 à 54 pegamos as fotos e exibimos na tela. Mais uma você pode dar um var_dump em $fotos e ver os dados que ela contém, são vários.

Compartilhando na timeline

Mais uma vez nas linhas iniciais nos chamados o autoload da API setamos as configurações do nosso aplicativo e logo verificamos se o mesmo está logado. Na linha 29 nos colocamos o realpath do caminho da imagem que iremos compartilhar (caso a versão do seu PHP seja inferior a 5.5, altere a linha 36 para: ‘source’ => ‘@‘. $img). Na linha 30 temos uma frase que irá acompanhar a postagem/foto escrita pelo próprio usuário. Não é obrigado conter uma frase, pode deixar em branco. O que não pode é deixar um texto pré-definido. Caso isso ocorra o seu app não será aprovado.

Aprovando o aplicativo

Enviar o aplicativo para aprovação não é um bicho de sete cabeças. Dá um pouco de trabalho porque você precisa tirar alguns printscreen, escrever um passo a passo e mais algumas informações. Para alguns – e principalmente agências de publicidade, isso é um inferno porque para precisaríamos de todo o layout já pronto, mas você pode dar um jeito de adiantar esse processo fazendo você mesmo um pré-layout baseado no wireframe que já serve, não precisa estar lindão, só precisa ter o protótipo do seu aplicativo com um bom gosto no css que já é o suficiente!

O Facebook deixou um página dedicada a isso bem explicada e com imagens ilustrando e tudo mais. Lá no painel em Status & Review quando você clicar em Start a Submission ele vai apontar para você que está faltando e daí você vai fazendo, etc.

Lembre-se de deixar o seu aplicativo visível para o todos (público) para facilitar, mas pelo que vi você pode deixar privado e designar um usuário de teste para eles testarem.

Em App Details você precisa preencher a maioria dos campos, em português mesmo. Também precisa de pelo menos 3 screenshots do seu aplicativo bem como a maioria das imagens de capa, baner, ícone, etc.

É importante observar que como mencionei anteriormente, não podemos deixar uma frase de compartilhamento pré-definida, o que um dia foi um prática comum da maioria das marcas. Caso isso ocorra seu aplicativo não será aprovado.

O Facebook diz que pode precisar de até 15 dias úteis para aprovar, mas nesse exemplo que apresentei aqui ele pedio 5 dias e terminou aprovando em apenas 1 dia 🙂

Então é isso, e boa sorte na aprovação!

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *