Android Question ShareFileWithProvider Example

mddmx

Member
Licensed User
Longtime User
I am trying to learn the new way of sharing a file. I have been trying to run the posted example ShareFileWithProvider.zip example on my Android P device and I get this error. Which is the same error I get in my project. What is wrong? Thank you for your thoughts

*** Service (starter) Create ***
** Service (starter) Start **
** Activity (main) Create, isFirst = true **
** Activity (main) Resume **
Error occurred on line: 58 (Main)
java.lang.reflect.InvocationTargetException
at java.lang.reflect.Method.invoke(Native Method)
at anywheresoftware.b4j.object.JavaObject.RunMethod(JavaObject.java:131)
at b4a.example.main._createfileprovideruri(main.java:489)
at b4a.example.main._button1_click(main.java:441)
at java.lang.reflect.Method.invoke(Native Method)
at anywheresoftware.b4a.shell.Shell.runMethod(Shell.java:738)
at anywheresoftware.b4a.shell.Shell.raiseEventImpl(Shell.java:357)
at anywheresoftware.b4a.shell.Shell.raiseEvent(Shell.java:260)
at java.lang.reflect.Method.invoke(Native Method)
at anywheresoftware.b4a.ShellBA.raiseEvent2(ShellBA.java:144)
at anywheresoftware.b4a.BA.raiseEvent2(BA.java:175)
at anywheresoftware.b4a.BA.raiseEvent(BA.java:171)
at anywheresoftware.b4a.objects.ViewWrapper$1.onClick(ViewWrapper.java:80)
at android.view.View.performClick(View.java:6597)
at android.view.View.performClickInternal(View.java:6574)
at android.view.View.access$3100(View.java:778)
at android.view.View$PerformClick.run(View.java:25885)
at android.os.Handler.handleCallback(Handler.java:873)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:193)
at android.app.ActivityThread.main(ActivityThread.java:6669)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
Caused by: java.lang.IllegalArgumentException: Failed to find configured root that contains /storage/emulated/0/Android/data/b4a.example/files/shared/1.bal
at android.support.v4.content.FileProvider$SimplePathStrategy.getUriForFile(FileProvider.java:679)
at android.support.v4.content.FileProvider.getUriForFile(FileProvider.java:378)
... 24 more
** Activity (main) Pause, UserClosed = true **
 

mddmx

Member
Licensed User
Longtime User
Thank you for responding, I am getting desperate. I am running the example posted with no modifications on the latest version 8.5. Even tried using the updated debug.jar file. This is an essential phone running Android P also fails on my Pixel with P. Crashes every time.

Caused by: java.lang.IllegalArgumentException: Failed to find configured root that contains /storage/emulated/0/Android/data/b4a.example/files/shared/b4a.png
 
Upvote 0

mddmx

Member
Licensed User
Longtime User
The error comes from the following line in CreateFileProviderUri

Return FileProvider.RunMethod("getUriForFile", Array(context, Application.PackageName & ".provider", f))
 
Upvote 0
Top