Открыть PDF защищенный паролем файл в программе просмотра в Android

1

Я разрабатываю PDF-ридер, так как у андроида нет встроенного средства просмотра PDF файлов, поэтому мне нужно использовать сторонний просмотрщик PDF файлов. в этом случае я выбрал Adobe pdf viewer для Android. Я могу открыть файл pdf, который хранится в SD-карте моего устройства. Теперь я хочу открыть файл PDF, защищенный паролем, из моего приложения. Если пользователь хочет открыть PDF файл с защитой паролем вручную, используйте для этого пароль при открытии. но я хочу открыть этот pdf файл с паролем из моего приложения без подсказки пароля. Приложение предоставляет пароль, [apps знает пароль] и без подсказки пароля, откроется pdf.

в настоящее время, если я хочу открыть любой защищенный паролем pdf файл из моего приложения, появится запрос пароля и ему потребуется пароль для его открытия.

Я использую этот код, чтобы открыть pdf из моих сохраненных файлов PDF в SDCARD.

====

File pdfFile = new File(fileLocation); 
if (pdfFile.exists()) 
{ 
    Uri pdfFilepathUri = Uri.fromFile(pdfFile); 
    Intent intent = new Intent(Intent.ACTION_VIEW);    

    intent.setDataAndType(pdfFilepathUri, "application/pdf");      
    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
    try 
    { 
        startActivity(intent);
    } 
    catch (ActivityNotFoundException e) 
    { 
        Toast.makeText(this,"No Application Available to View PDF : "+fileLocation,Toast.LENGTH_LONG).show(); 
    } 
} 
 else 
Toast.makeText(this,"File cannot found : "+fileLocation,Toast.LENGTH_SHORT).show(); 

====

кто-нибудь, пожалуйста, помогите, как я могу предоставить пароль из приложения, чтобы он мог автоматически открыть PDF файл без запроса окна пароля. ?

Теги:
pdf

2 ответа

1

Если пользователь хочет открыть PDF файл с защитой паролем вручную, используйте для этого пароль при открытии. но я хочу открыть этот pdf файл с паролем из моего приложения без подсказки пароля.

Вы можете связаться с авторами различных приложений просмотра PDF, чтобы увидеть, если они поддерживают принятие пароля PDF через Intent дополнительного или что - то. В документально ACTION_VIEW протоколе ACTION_VIEW, предназначенном для поддержки этого сценария, нет ничего.

0

Короче говоря, вы не можете. Там нет читателей в формате PDF, которые я знаю о том, что они поддерживают это, но даже если это было, вы не можете полагаться на пользователя, у которого установлен этот конкретный читатель, поэтому нет способа заставить его работать повсеместно.

Однако вы можете обойти это, используя библиотеку, которая обрабатывает весь тяжелый подъем PDF-рендеринга, чтобы создать свой собственный основной вид PDF в вашем приложении, а затем использовать это представление для открытия PDF файла. Некоторые из таких библиотек, как связанная с библиотекой AndroidPdfViewer позволяют указать пароль, например:

pdfView.fromFile(file)
    .password("password123")
    .load();

Это позволит вам предлагать универсальное решение для отображения файлов PDF с защитой паролем, а также иметь дополнительное преимущество безопасности, чтобы не утечка пароля между контекстами.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню