InstagramPlugin: Plugin not working on Android 8.0

Hi!

This plugin doesn’t work on Android 8.0, logcat outputs this:

03-16 18:25:01.899  4884  4884 W zygote  : Attempt to remove non-JNI local reference, dumping thread
03-16 18:25:01.966  4884  4970 E PluginManager: Uncaught exception from plugin
03-16 18:25:01.966  4884  4970 E PluginManager: android.os.FileUriExposedException: file:///storage/emulated/0/Android/data/[MY_APP_ID]/files/instagram8756136426115648363.png exposed beyond app through ClipData.Item.getUri()
03-16 18:25:01.966  4884  4970 E PluginManager:         at android.os.StrictMode.onFileUriExposed(StrictMode.java:1958)
03-16 18:25:01.966  4884  4970 E PluginManager:         at android.net.Uri.checkFileUriExposed(Uri.java:2348)
03-16 18:25:01.966  4884  4970 E PluginManager:         at android.content.ClipData.prepareToLeaveProcess(ClipData.java:941)
03-16 18:25:01.966  4884  4970 E PluginManager:         at android.content.Intent.prepareToLeaveProcess(Intent.java:9735)
03-16 18:25:01.966  4884  4970 E PluginManager:         at android.content.Intent.prepareToLeaveProcess(Intent.java:9741)
03-16 18:25:01.966  4884  4970 E PluginManager:         at android.content.Intent.prepareToLeaveProcess(Intent.java:9720)
03-16 18:25:01.966  4884  4970 E PluginManager:         at android.app.Instrumentation.execStartActivity(Instrumentation.java:1609)
03-16 18:25:01.966  4884  4970 E PluginManager:         at android.app.Activity.startActivityForResult(Activity.java:4472)
03-16 18:25:01.966  4884  4970 E PluginManager:         at org.apache.cordova.CordovaActivity.startActivityForResult(CordovaActivity.java:342)
03-16 18:25:01.966  4884  4970 E PluginManager:         at android.app.Activity.startActivityForResult(Activity.java:4430)
03-16 18:25:01.966  4884  4970 E PluginManager:         at org.apache.cordova.CordovaInterfaceImpl.startActivityForResult(CordovaInterfaceImpl.java:66)
03-16 18:25:01.966  4884  4970 E PluginManager:         at com.vladstirbu.cordova.CDVInstagramPlugin.share(CDVInstagramPlugin.java:127)
03-16 18:25:01.966  4884  4970 E PluginManager:         at com.vladstirbu.cordova.CDVInstagramPlugin.execute(CDVInstagramPlugin.java:73)
03-16 18:25:01.966  4884  4970 E PluginManager:         at org.apache.cordova.CordovaPlugin.execute(CordovaPlugin.java:98)
03-16 18:25:01.966  4884  4970 E PluginManager:         at org.apache.cordova.PluginManager.exec(PluginManager.java:132)
03-16 18:25:01.966  4884  4970 E PluginManager:         at org.apache.cordova.CordovaBridge.jsExec(CordovaBridge.java:57)
03-16 18:25:01.966  4884  4970 E PluginManager:         at org.apache.cordova.engine.SystemExposedJsApi.exec(SystemExposedJsApi.java:41)
03-16 18:25:01.966  4884  4970 E PluginManager:         at org.chromium.base.SystemMessageHandler.nativeDoRunLoopOnce(Native Method)
03-16 18:25:01.966  4884  4970 E PluginManager:         at org.chromium.base.SystemMessageHandler.handleMessage(SystemMessageHandler.java:41)
03-16 18:25:01.966  4884  4970 E PluginManager:         at android.os.Handler.dispatchMessage(Handler.java:105)
03-16 18:25:01.966  4884  4970 E PluginManager:         at android.os.Looper.loop(Looper.java:164)
03-16 18:25:01.966  4884  4970 E PluginManager:         at android.os.HandlerThread.run(HandlerThread.java:65)
03-16 18:25:01.968  4884  4884 W cr_Ime  : updateState: type [0->0], flags [0], show [false], 

The problem seems to be easy to solve but Java is not my forte… https://stackoverflow.com/questions/38200282/android-os-fileuriexposedexception-file-storage-emulated-0-test-txt-exposed

Thanks

About this issue

  • Original URL
  • State: closed
  • Created 6 years ago
  • Comments: 49 (18 by maintainers)

Commits related to this issue

Most upvoted comments

Just made a PR to fix this…

Yep, adding

<source-file src="src/android/utils/AssetProvider.java" target-dir="src/com/vladstirbu/cordova" />

after:

<source-file src="src/android/CDVInstagramPlugin.java" target-dir="src/com/vladstirbu/cordova" />

makes it work… and makes sense… not sure how it was working before…? @albertleao opinion? should you add this line …? thanks.

Ok, I will test that on all the things and report back maybe in 1-2 hours or tomorrow…