Ola Pessoal,
preciso criar um leitor de pdf em android para evitar o compartilhamento dos arquivos e uma série de outras coisas, existe alguma biblioteca específica para isso??
Ola Pessoal,
preciso criar um leitor de pdf em android para evitar o compartilhamento dos arquivos e uma série de outras coisas, existe alguma biblioteca específica para isso??
Hum hum hum, você quer criar uma solução de DRM com PDF rodando sob Android? Acho que você está atrasado.
Procure por DRM PDF Android e vai ver várias soluções que as pessoas vendem hoje em dia.
A parte do envio do arquivo é tranquilo, o meu problema é visualizar o arquivo no tablet, se o usuário abrir o arquivo com o Adobe PDF por exemplo ele vai ter a opção de compartilhar o arquivo e é esse tipo de recurso que não posso deixar passar, ou seja, o arquivo deve ser visualizado por um leitor de pdf específico (no caso estou querendo criar um) que não permita nenhum tipo de compartilhamento no arquivo, ou exclusão.
Pode tentar pegar o fonte de algum leitor de pdf ( como este aqui: http://www.mupdf.com/ ) e adaptá-lo.
Procure por: “open source pdf reader android”
Lembre que escrever sozinho um leitor de PDF do zero é uma tarefa quase impossível - veja como é o leitor de PDFs do Mozilla Firefox a partir da versão 20 ou 21, não sei qual delas - esse leitor não é completo e não consegue visualizar corretamente muitos PDFs.
Não estou nem tentando achar um em Java para você - não sei se existe algum desses que não seja excessivamente pesado: por exemplo, se quiser usar o visualizador de PDFs que funciona direitinho em Java SE ( iReport Preview ) não deve funcionar no Android.
Existem projetos para portar o iReport Preview para Android, mas sem sucesso.
O mupdf funciona lindamente mas ele é GPL e as licenças comerciais são bem caras.
E em nenhum dos casos eles protegem o arquivo do PDF, voce precisa de uma biblioteca de DRM como o RMSDK da Adobe para isso.
O que eu realmente preciso é de uma maneira de colocar o PDF no tablet e impedir que esse arquivo seja compartilhado (usb, bluetooth, etc). Foi por isso que eu pensei que deveria fazer o próprio leitor de PDF, vocês têm outra ideia de como fazer isso?
Voê tem acesso a gravar o arquivo na pasta privada da aplicação (getPrivateStorage) mas nada garante que um usuario com acesso root pegue-os da memoria interna do dispositivo.
Isso eu já consigo fazer, mas depois de guardar na Private Storage como eu vou vizualizar o PDF?
Por esse motivo eu estou estou querendo fazer uma aplicação que leia o PDF.
Acho que não vamos ter esse problema de usuário Root porque a aplicação vai ser instalada somente em dispositivos conhecidos (empresariais) eles não tem root habilitado.
Mas o meu problema principal problema é realmente visualizar o PDF que eu colocar no dispositivo.
Mesmo que consiga criar esse programa que ler PDF, nada impede que o usuário instale o adobe e abra por ele :]
se eu gravar na memória interna do aplicativo, alterar a extensão do arquivo PDF, ter um programa próprio para ler os arquivos e garantir que o usuário não terá root no dispositivo já dificulta bastante o compartilhamento do arquivo.
É claro que maneiras de burlar os sistemas sempre existem, mas se agente cercar as maneiras mais prováveis já resolve o nosso problema.
É… criar um leitor é razoavelmente dificil (levei só 1 ano e meio para fazer um) a não ser que você compre um pronto essa tarefa vai ser demorada e as bibliotecas são extremamente caras.
Não sei se Intents de ACTION_VIEW podem abrir arquivos do private storage de outra aplicação.
Eu baixei o código do MuPDF, acho que vou conseguir fazer as alterações nele para abrir os arquivos que estiverem no private storage.
Vlw pela ajuda.
O mupdf consegue ler sim, e ele funciona extremamente bem.
Mas lembrando, ele não é gratuito para uso comercial.
E usando o RMSDK você também garante que mesmo um arquivo compartilhado não possa ser aberto por ninguem.