{"id":29,"date":"2012-11-29T09:26:41","date_gmt":"2012-11-29T13:26:41","guid":{"rendered":"http:\/\/cloud.cnpgc.embrapa.br\/sac-mobile\/?page_id=29"},"modified":"2012-12-03T10:03:12","modified_gmt":"2012-12-03T14:03:12","slug":"documentacao","status":"publish","type":"page","link":"https:\/\/cloud.cnpgc.embrapa.br\/sac-mobile\/documentacao\/","title":{"rendered":"Documenta\u00e7\u00e3o"},"content":{"rendered":"<p style=\"text-align: justify;\">O aplicativo S.A.C. Gado de Corte foi desenvolvido utilizando o SDK do Android (nativo, sem o uso de bibliotecas de terceiros). Mais especificamente foi utilizada a vers\u00e3o 2.1 da plataforma disponibilizada pelo Android Open Source Project (API Level 7), garantindo sua compatibilidade com mais de 2.100 dispositivos do mercado.<\/p>\n<p style=\"text-align: justify;\">Para integr\u00e1-lo ao sistema Web do S.A.C. da Gado de Corte optou-se por uma arquitetura baseada em webservices. Desta forma, foi criada uma camada de software independente que conecta-se ao banco de dados do sistema Web do S.A.C. (utilizando <a href=\"http:\/\/en.wikipedia.org\/wiki\/Representational_state_transfer\" target=\"_blank\">REST<\/a>) e processa as informa\u00e7\u00f5es gerando uma sa\u00edda em <a href=\"http:\/\/www.json.org\/\" target=\"_blank\">JSON<\/a>. O aplicativo mobile acessa esta camada recebendo, inicialmente, a lista de categorias de perguntas. Em seguida, o aplicativo envia para o webservice uma <a href=\"http:\/\/en.wikipedia.org\/wiki\/Unix_time\" target=\"_blank\">Unix Timestamp<\/a> com a data da \u00faltima sincroniza\u00e7\u00e3o realizada e recebe como resposta a lista de perguntas e respostas alteradas ou criadas desde esta \u00faltima sincroniza\u00e7\u00e3o.<\/p>\n<p style=\"text-align: center;\"><a href=\"http:\/\/cloud.cnpgc.embrapa.br\/sac-mobile\/files\/2012\/11\/schema.png\"><img fetchpriority=\"high\" decoding=\"async\" class=\" wp-image-51 aligncenter\" style=\"margin: 0 auto;\" title=\"Arquitetura de comunica\u00e7\u00e3o\" src=\"http:\/\/cloud.cnpgc.embrapa.br\/sac-mobile\/files\/2012\/11\/schema1.png\" alt=\"\" width=\"514\" height=\"337\" \/><\/a><\/p>\n<p style=\"text-align: justify;\">No caso espec\u00edfico da Embrapa Gado de Corte, o sistema Web do S.A.C. foi criado, assim como este site de documenta\u00e7\u00e3o, como uma inst\u00e2ncia do <a href=\"http:\/\/codex.wordpress.org\/Create_A_Network\" target=\"_blank\">WordPress Multisite Network<\/a> e est\u00e1 dispon\u00edvel em:<\/p>\n<p style=\"text-align: center;\"><a href=\"http:\/\/cloud.cnpgc.embrapa.br\/sac\" target=\"_blank\">http:\/\/cloud.cnpgc.embrapa.br\/sac<\/a><\/p>\n<p style=\"text-align: justify;\">O sistema Web do S.A.C. da Embrapa Gado de Corte utiliza o tema <a href=\"http:\/\/premium.wpmudev.org\/project\/help-support-and-faq-theme\/\" target=\"_blank\">Edu Knows<\/a> para <a href=\"http:\/\/wordpress.org\/\" target=\"_blank\">WordPress<\/a>, um tema livre direcionado para a cria\u00e7\u00e3o de p\u00e1ginas de ajuda online e F.A.Q.. O banco de dados nativo deste sistema \u00e9 o MySQL e a linguagem de programa\u00e7\u00e3o utilizada \u00e9 o PHP. Por ser baseado no WordPress, o banco de dados do sistema est\u00e1 organizado em dentro do dom\u00ednio de blogs, e n\u00e3o para o dom\u00ednio de neg\u00f3cio de um software S.A.C.. Assim, foi necess\u00e1rio abstrair por meio de consultas SQL os dados para sincroniza\u00e7\u00e3o da aplica\u00e7\u00e3o.<\/p>\n<p style=\"text-align: center;\"><a href=\"http:\/\/cloud.cnpgc.embrapa.br\/sac-mobile\/files\/2012\/11\/der_wordpress.png\"><img decoding=\"async\" class=\"size-full wp-image-61  aligncenter\" style=\"margin: 0px auto;\" title=\"DER WordPress\" src=\"http:\/\/cloud.cnpgc.embrapa.br\/sac-mobile\/files\/2012\/11\/der_wordpress.png\" alt=\"DER do SAC em WordPress\" width=\"551\" height=\"292\" srcset=\"https:\/\/cloud.cnpgc.embrapa.br\/sac-mobile\/files\/2012\/11\/der_wordpress.png 551w, https:\/\/cloud.cnpgc.embrapa.br\/sac-mobile\/files\/2012\/11\/der_wordpress-300x158.png 300w\" sizes=\"(max-width: 551px) 100vw, 551px\" \/><\/a><\/p>\n<p style=\"text-align: center;\"><strong>DER do banco de dados da inst\u00e2ncia do WordPress utilizado para o S.A.C. da Gado de Corte<\/strong><\/p>\n<p style=\"text-align: justify;\">O banco de dados da aplica\u00e7\u00e3o mobile, no entanto, possui entidades alinhadas ao dom\u00ednio do neg\u00f3cio S.A.C.. Assim, teremos uma tabela para as categorias e, relacionada a esta, teremos a tabela de perguntas e respostas.<\/p>\n<p style=\"text-align: center;\"><a href=\"http:\/\/cloud.cnpgc.embrapa.br\/sac-mobile\/files\/2012\/11\/der_sac.jpg\"><img decoding=\"async\" class=\"aligncenter  wp-image-66\" style=\"margin: 0 auto;\" title=\"DER S.A.C. Mobile\" src=\"http:\/\/cloud.cnpgc.embrapa.br\/sac-mobile\/files\/2012\/11\/der_sac.jpg\" alt=\"\" width=\"361\" height=\"108\" srcset=\"https:\/\/cloud.cnpgc.embrapa.br\/sac-mobile\/files\/2012\/11\/der_sac.jpg 361w, https:\/\/cloud.cnpgc.embrapa.br\/sac-mobile\/files\/2012\/11\/der_sac-300x89.jpg 300w\" sizes=\"(max-width: 361px) 100vw, 361px\" \/><\/a><\/p>\n<p style=\"text-align: center;\"><strong>DER do banco de dados da aplica\u00e7\u00e3o S.A.C. Mobile<\/strong><\/p>\n<p style=\"text-align: justify;\">Para sincronizar os dados do banco de dados do WordPress na aplica\u00e7\u00e3o mobile s\u00e3o utilizados dois webservices, o primeiro sincroniza todas as categorias e o segundo sincroniza as perguntas de forma incremental (apenas as que foram modificadas desde a \u00faltima sincroniza\u00e7\u00e3o). Os webservices do S.A.C. Gado de Corte foram implementados em PHP e podem ser obtidos pelo link abaixo:<\/p>\n<p style=\"text-align: center;\"><a href=\"http:\/\/cloud.cnpgc.embrapa.br\/sac-mobile\/files\/2012\/12\/ws-20121203.zip\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter  wp-image-69\" style=\"margin: 0 auto;\" title=\"Webservices do S.A.C. Gado de Corte\" src=\"http:\/\/cloud.cnpgc.embrapa.br\/sac-mobile\/files\/2012\/11\/sac-mobile_download_export.png\" alt=\"\" width=\"500\" height=\"70\" srcset=\"https:\/\/cloud.cnpgc.embrapa.br\/sac-mobile\/files\/2012\/11\/sac-mobile_download_export.png 500w, https:\/\/cloud.cnpgc.embrapa.br\/sac-mobile\/files\/2012\/11\/sac-mobile_download_export-300x42.png 300w\" sizes=\"(max-width: 500px) 100vw, 500px\" \/><\/a><\/p>\n<p style=\"text-align: justify;\">O pacote compactado cont\u00e9m 6 arquivos:<\/p>\n<ul style=\"text-align: justify;\">\n<li><strong>config.inc.php:<\/strong> Arquivo com as configura\u00e7\u00f5es (p.e. servidor, nome, login e senha do banco de dados).<\/li>\n<li><strong>db.php:<\/strong> Arquivo que abre uma conex\u00e3o com o banco de dados da aplica\u00e7\u00e3o Web do S.A.C. (\u00e9 utilizada a <a href=\"http:\/\/php.net\/manual\/en\/book.pdo.php\" target=\"_blank\">biblioteca PDO<\/a>).<\/li>\n<li><strong>error.php:<\/strong> Neste arquivo est\u00e3o as classes de exce\u00e7\u00f5es que tratam erros da aplica\u00e7\u00e3o emitindo cabe\u00e7alhos com mensagens tratadas (padr\u00e3o <a href=\"http:\/\/en.wikipedia.org\/wiki\/Representational_state_transfer\" target=\"_blank\">REST<\/a>).<\/li>\n<li><strong>function.php:<\/strong> Arquivo com fun\u00e7\u00f5es auxiliares.<\/li>\n<li><strong>category.php:<\/strong> L\u00ea as categorias do banco de dados da aplica\u00e7\u00e3o Web e converte para uma array em JSON.<\/li>\n<li><strong>question.php:<\/strong> Recebe uma Unix Timestamp e a utiliza para ler do banco de dados da aplica\u00e7\u00e3o Web todas as perguntas e respostas criadas ou editadas ap\u00f3s a data passada. Retorna o resultado desta consulta convertido para uma array em JSON.<\/li>\n<\/ul>\n<p style=\"text-align: justify;\">\n","protected":false},"excerpt":{"rendered":"<p>O aplicativo S.A.C. Gado de Corte foi desenvolvido utilizando o SDK do Android (nativo, sem o uso de bibliotecas de terceiros). Mais especificamente foi utilizada a vers\u00e3o 2.1 da plataforma [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"open","ping_status":"open","template":"","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"footnotes":""},"class_list":["post-29","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/cloud.cnpgc.embrapa.br\/sac-mobile\/wp-json\/wp\/v2\/pages\/29","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cloud.cnpgc.embrapa.br\/sac-mobile\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/cloud.cnpgc.embrapa.br\/sac-mobile\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/cloud.cnpgc.embrapa.br\/sac-mobile\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cloud.cnpgc.embrapa.br\/sac-mobile\/wp-json\/wp\/v2\/comments?post=29"}],"version-history":[{"count":20,"href":"https:\/\/cloud.cnpgc.embrapa.br\/sac-mobile\/wp-json\/wp\/v2\/pages\/29\/revisions"}],"predecessor-version":[{"id":50,"href":"https:\/\/cloud.cnpgc.embrapa.br\/sac-mobile\/wp-json\/wp\/v2\/pages\/29\/revisions\/50"}],"wp:attachment":[{"href":"https:\/\/cloud.cnpgc.embrapa.br\/sac-mobile\/wp-json\/wp\/v2\/media?parent=29"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}