I want to open a pdf file in app inventor

Can't anyone help me? With this huge volume Technology?!!! ...

Where is the pdf you want to view?

  • online
  • in your assets
  • in your ASD
  • in your sdcard somewhere

if you want to use the activity starter solution, then you must copy your pdf files from the assets to shared storage and open it from there

Taifun

I want to store pdfs with my apk.User read them in the app after installing. I am not very expert in building app and I don't have enough information about file storage ,copy , read ,address of files or difference between Asset , Asd and ... . I didn't find a good reference about working with files specially . I don't expect you very much and I am not rude but I apply to you for help .If you can write a code and send me apk and aia for underestanding what I must do,else show me a good reference for working with files.I read several times code of pdf extensions and wrote them and built apk but there was no result.If Activity Starter is better help me about this possibility.

What do you want ? it's not clear and you never answer questions.

Try this simple aia project, using my ViewPDF extension. This will not work in companion, you will need to compile it.

SCREEN
image

BLOCKS

AIA
View3PDFs.aia (2.1 MB)

APK (link)
View3PDFs

1 Like

This version works also with Companion:
View3PDFs_2.aia (2.1 MB)

Summary

Why we can not view them from asset ?

Because I didn't include that option in the extension.

Can I use your ext with shared folders ?

I do not see why not, the extension should take an absolute or full path to the folder/file. You may need the read permission?
(for assets there is a need to call the assetsPath inside the extension)

Full path (doesn't work):

Summary

Absolute path (works):

Summary

This works without WRITE / READ permissions on Android 11+:

2 Likes

Note: When you test with Companion first, you must delete the PDFs while running Companion on Android 11+. Otherwise you'll not able to test with the APK, because the PDF files are then created by another app (Companion) and connot be overwritten with the new app (APK).

Also you must request WRITE permission on devices with Android < 11.

Summary

It runs

@Anke
Is there an absolute file path to assets for a compiled app under Android 11+ ?
Your chart indicates:

/data/data/<pkg_name>

or is the only way to use assetPath in an extension ?

I don't get it. Where is the problem or what are you getting at?

For example if I have an asset: image1.png, I can set a path to it:

/data/data/<pkg_name>/image1.png

I tried this but the image did not show in an image component

I am aware that for such components you can use the helper blocks or //, just interested in a path to assets....

Thank you very much.But I have some questions.Excuse me for talkative.One : I read the code but I dont see a list!"for each item in list" refers to which list?Two:what is ASD?excuse me I am novice.Three:please show me a reference about working with files:storage ,copy,read, delete,pick and so on.From where did you learn "copy to asd"?Four :Can I put the "copy to ASD" on initialize of apk ? for no engaging with this by user?
Thank you again and I don't force you to answer to my questions .You have more important works. But I hope!

did you read suggested link ?

1 Like

You can copy the PDFs from the assets (internal storage) to the PrivateDir (internal storage)

/data/user/0/<packageName>/files/

without storage permissions on all Android versions (with Companion & the APK):

Left (APK) .......................................... right (Companion):