Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Image Picker for Android [Released]

Discussion in 'Assets and Asset Store' started by Freezy, Jul 16, 2013.

  1. Freezy

    Freezy

    Joined:
    Jul 15, 2012
    Posts:
    234
    Version 12 just got accepted into the asset store and is available now.
     
  2. Freezy

    Freezy

    Joined:
    Jul 15, 2012
    Posts:
    234
    Issue noticed:

    Video functions and cropping are not compatible with version 9, recommend all users of this plugin to use minimum supported SDK to 10. (2.3 = 9, 2.3.3 = 10).

    I will update the code in version 13 to include failsafes.
    I just noticed this when attempting to migrate the plugin to Android Studio, at this point I don't even know if Unity supports building with aar files, I will find out in a bit now won't I? ;-).

    Update:
    Fixed in version 13

    Android Studio research:
    As aar files are not yet supported I will not be using them, but the exercise with Android Studio might still prove useful in the future. As it has become 'the official' google android IDE, might as well get ahead of the curve and see why they abandoned Eclipse. So far it's a good IDE, on par with Eclipse, although setup of a library project is more difficult then it should be.
     
    Last edited: Jan 9, 2015
  3. Freezy

    Freezy

    Joined:
    Jul 15, 2012
    Posts:
    234
    Version 13 wip:
    Working on multithreaded rendering compatibility.
    Any customers wishing to help with testing please contact me.
     
  4. Freezy

    Freezy

    Joined:
    Jul 15, 2012
    Posts:
    234
    Version 13 wip:
    - Camera only option (now there are 5 picker options: camera, gallery, both, default camera, default gallery)
    - Changed the picker option selection to a single enum instead of using two booleans

    I am still working on the multi threaded support.

    Known issue due to new threaded approach:
    - image retrieval fails due to configuration changes (like screen orientation), reproducing the error seems device dependent, working on it.

    I am also considering publishing version 13 and above only on Unity 5, Unity 4 will still be supported, but using the 5 uGUI features I could really clean up the example scenes and code.
     
  5. lavz24

    lavz24

    Joined:
    Mar 14, 2013
    Posts:
    45
    Hi,

    I have a problem with Moto G first gen, which not have external storage
     
  6. Freezy

    Freezy

    Joined:
    Jul 15, 2012
    Posts:
    234
    I also replied to your e-mail, but felt it would be important to answer here as well (for other customers).
    To accurately diagnose this device specific issue I would need a bit more information, preferably a logcat excerpt and perhaps a description of the settings being used.
    E-mail is the preferred method of contacting me as I check that more often then this forum thread.

    The plugin should 'just work' without external storage, most likely the issue is being caused by a third party app, but without more information it is just a guess.
     
  7. Freezy

    Freezy

    Joined:
    Jul 15, 2012
    Posts:
    234
    Here are all the WIP notes so far, if you are interested in helping me test this version, please contact me.

    Version 13 wip:
    - Camera only option (now there are 5 picker options: camera, gallery, both, default camera, default gallery)
    - Changed the picker option selection to a single enum instead of using two booleans
    - Re-factored a lot of code
    - Solved all threaded issues by changing it into a service
    - Unity 5 AAR support is working

    Notes:
    - During the code refactoring I smoothed out logic into multiple subclasses. Making it easier for me to implement the service as well as increase the maintainability of the code. I even fixed some more bugs (that might or might not originate from implementing the background thread and other patches since version 12).
    - The new service requires a few additional lines in the manifest but overall offers improved speed and stability.
    - Due to limitations in the Unity/android toolchain. Changing any of the files would require manually changing the contents of the AAR file (which is a just a zip file).

    Native texture updates in GLES20 still don't want to play nice with multi-threading. :-(
    I built a GL.IssuePluginEvent DLL but it causes a crash on closing the application as well as not doing what it should.
    All the code seems to process, so there is at least some progress here. The limitations of this API makes this near impossible.
    Perhaps I can implement the GL update as a command buffer in Unity 5, it would depend on whether those are actually run in the rendering thread, which I somewhat doubt.
    Thus for now multi-threaded rendering is still only supported when using the regular texture updates using a cache/temporary file.
    GL texture updates only works when not in multi-threaded rendering (this also does not require an additional render event plugin).
    I am currently running low on things to try and resolve this problem, at least until I can find a working example of C# -> DLL -> JNI/Java -> OpenGL, ugh...

    No new demo apk at the moment, as it has a nasty crash due to the rendering event plugin, I will either resolve the issue or remove it until it can be fixed in a later version.

    If you have any feature requests, or would like to help test version 13, please contact me ;-)
     
  8. zootsutjeff

    zootsutjeff

    Joined:
    Mar 28, 2014
    Posts:
    1
    Hey I'm wondering, does this plugin work with images on Google Drive? When I use the image picker from my app, i can see and select images on my google drive account, but the callback then returns a null string and an invalid file error. Am I doing something wrong? or is loading files from google drive not implemented?
     
  9. Freezy

    Freezy

    Joined:
    Jul 15, 2012
    Posts:
    234
    It should work, it might be a device specific problem, or google might have hanged the way it works.
    I checked on all my devices to see if I can reproduce the problem.

    Google drive did not show up as an image picker, I could send files via share and those loaded fine.
    Could you send me more details on the problem via ImagePicker@elicitice.com ?
    Device(s) with the problem, version of Android used, logcat with ImagePicker debug set to 3.
    Could you also check if the same also happens with the Demo APK, it would rule out any problems caused by your code.
     
  10. lavz24

    lavz24

    Joined:
    Mar 14, 2013
    Posts:
    45
    I have this problem too
     
  11. Freezy

    Freezy

    Joined:
    Jul 15, 2012
    Posts:
    234
    Please follow the given instructions to debug the issue.
     
  12. Freezy

    Freezy

    Joined:
    Jul 15, 2012
    Posts:
    234
    No e-mails with further details were received as of yet. Is the problem fixed or did my spam filter do something wrong?
     
  13. lavz24

    lavz24

    Joined:
    Mar 14, 2013
    Posts:
    45
    Sorry, for my production time I didnt have the time to given instructions for debug. For the record, the plugin work but some android didnt work, like Moto E 2014 with Android 4
     
  14. DerrickBarra

    DerrickBarra

    Joined:
    Nov 19, 2013
    Posts:
    210
    Hey Freezy, I just noticed that the plugin is not returning a filepath to the photo when taking a picture on my Nexus 4 device. This occurs on the provided demo scenes. The Nexus 4 is running the latest OS available (5.1.1).
     
  15. Freezy

    Freezy

    Joined:
    Jul 15, 2012
    Posts:
    234
    Please try a different camera application. I have yet to get my hands on a Android 5 device.
    A quick search on Nexus 4 Camera path failure comes up with multiple people noticing the same behaviour.
    Try a reboot, some said that helps.

    Hopefully I can find a solution to this device specific issue.
    If you could e-mail me more information (debug logcat) I will look into the issue as soon as I can.
     
  16. DerrickBarra

    DerrickBarra

    Joined:
    Nov 19, 2013
    Posts:
    210
    I restarted my device to see if that would help, but it didn't. But I did get you a logcat readout (attached), I didn't spot anything unusual on it myself, but perhaps you'll see something unusual.
     

    Attached Files:

    • 1.PNG
      1.PNG
      File size:
      31.9 KB
      Views:
      768
  17. Freezy

    Freezy

    Joined:
    Jul 15, 2012
    Posts:
    234
    A screenshot is not very helpful, please save it to a text file and send it via e-mail.
     
  18. DerrickBarra

    DerrickBarra

    Joined:
    Nov 19, 2013
    Posts:
    210
    Hey Freezy, sorry for the delay, I sent you two logcat txt files. One is for the Nexus 4 camera problem, and another is for an issue I noticed when trying to load .gif images off of the users phone (the file path gets a .jpg extension appended to the end of it and fails to load).

    I've also uploaded the two logcat files here in case you don't get the email.
     

    Attached Files:

  19. DerrickBarra

    DerrickBarra

    Joined:
    Nov 19, 2013
    Posts:
    210
    Hey Freezy I wanted to clarify the .gif issue. I noticed that you append the .jpg extension as a way of allowing non-animated .gif images to be displayed via the converted .jpg image. However I'm using a Unity extension called ZneGif that allows animated .gif support (which is used heavily in the application I'm working on), which is why I need access to the path string of the original .gif image so that it can be loaded into Unity.
     
  20. Freezy

    Freezy

    Joined:
    Jul 15, 2012
    Posts:
    234
    I received your e-mails, I will try to get back to you as soon as I can.

    If you just need the filepath / file data you can bypass the downsizing portion of the plugin.
    Just grab the raw file path using the options in ImagePickerData and calling the appropriate ImagePicker function.
    Then ZneGIF should/would hopefully help in squishing large size images down to prevent unity from crashing. Though I have never seen animated gifs of 4k+, so that might be something you will never have to actually deal with/care about.

    Image Picker Plugin allows for picking any file types and handles the downsizing of JPEG and PNG images as well as grab previews from videos the device can play natively (device dependant).

    I will look into how hard animated gif support will be, perhaps I can add it as well.
     
  21. DerrickBarra

    DerrickBarra

    Joined:
    Nov 19, 2013
    Posts:
    210
    Would you mind providing a code snippet to show me what variable to access in ImagePickerData to grab the file path?
     
  22. Freezy

    Freezy

    Joined:
    Jul 15, 2012
    Posts:
    234
    Currently on vacation, I will get back to you asap in the next couple of days. Sorry for the delay

    I believe it is detailed in ImagePickerData.Mode, the callback should then receive the raw file path.

    Recalling it from my memory here, try a search for rawpath in ImagePicker.cs, it should be one of the functions that describes the raw mechanism in the code comments. There are some functions there if you need to process a Android Bitmap compatible image (like bmp, jpg and png).

    One of the example scenes also reads the rawpath first, then processes it when you manually hit the button.
    I believe it is the example that also shows the save to gallery function off.
     
  23. DerrickBarra

    DerrickBarra

    Joined:
    Nov 19, 2013
    Posts:
    210
    Sorry for the long delay, I was just on vacation myself.

    Changing the mode was exactly what I needed. After that the .gif images loaded perfectly, thanks!
     
    Freezy likes this.
  24. Orfen

    Orfen

    Joined:
    Aug 3, 2013
    Posts:
    8
    Hey Freezy,

    great plugin. I have a short question, i'm using the example no5 script for our application, and i noticed that after picking a couple of images the app cache started to get pretty big, which in turn turned into some app restarts on my really old test device. I was wondering if there is an easy way to disable caching for images. Thanks
     
  25. Freezy

    Freezy

    Joined:
    Jul 15, 2012
    Posts:
    234
    You could delete the image after you are done loading it (using the File.Delete Method), or you could supply a fixed path & filename and the plugin will then reuse that single file as it's cache.
    Alternatively you could create a viewer for the cache folders you are using and let the user clean it up when required.

    Image cache size should not cause app restarts, though old devices might suffer from severe memory limitations.

    I researched if it was possible to get information from the Android OS for how much you may use/are using, but the information proved to be hard to get and unreliable. There is no programmer friendly function to get a straight answer.
    Android partitions your device memory into heaps, size is based on system configuration and varies per device, rom and could be changed by a rooted user. This is then used for anything and everything related to your application, including all kinds of process stacks. Your actual application is in one of these and does not get access to all the relevant information without additional permissions that would give information on all processes.
    [more info on getting heap size, you could call all these calls through JNI in C# as well]
    I could not find a reliable method to get memory usage data, if anyone has, please share ;-)

    Ultimately the best way is to use the current display size as limits for texture size (or clamp it down even further if you know it will never fill the entire screen).
    Limit the number of textures loaded on limited devices (small display size and SystemInfo.systemMemorySize and SystemInfo.graphicsMemorySize ).

    Release textures after you are done (just set texture to null). You could even call the garbage collector manually if you want memory back right away at the cost of a slight FPS drop.
    You might get even better results by switching scenes (forcing you to create a save/reload mechanism as well as making Unity clean everything up), a small scene to just load a large texture, then you compress it and send the optimized texture back to the game/application (freshly resumed to a sane state).



    Sorry for the long reply ;-)
    I hope it helps
     
  26. Orfen

    Orfen

    Joined:
    Aug 3, 2013
    Posts:
    8
    Thanks, that was very informative. So in essence providing a file path and file name will force the app to use the same "space" for every image picked, overwritting the previous one if i understood correctly? After we pick the image it gets uploaded somewhere and then it gets requested whenever its needed, so i guess the WWW call also caches the images but we seem to have a memory issue only when picking an image. In any case, thanks for all of your suggestions, we will need to think it through to see what we can use in our app.
     
  27. Freezy

    Freezy

    Joined:
    Jul 15, 2012
    Posts:
    234
    Yes, using a single file would cut down the cache size. That would solve the Internal/External SD space issue.
    Default behaviour is using the original filename or a timestamp in case of the camera.

    Memory issues are hard to trace, there are so many locations where stuff could leak.
    Unity textures not being released, video memory, camera application / gallery misbehaving.
    I have tried to make sure the plugin uses as little memory as possible and releases all resources as soon as possible, recycling as many buffers as I could.

    If you keep having problems, please try to capture a logcat dump with debugging set to level 3, that would help a long way to figuring out which of these is responsible.
     
  28. Orfen

    Orfen

    Joined:
    Aug 3, 2013
    Posts:
    8
    I think its the gallery taxing the old devices too much. One other thing, do you rotate the images in any way on the native side? I'm implementing your example5 in our app but i wasn't using your method to load images onto textures, just to get the path. Now it seems sometimes images rotate incorrectly when placed on textures.


    EDIT: I found out about the exif rotation data storage on some devices. I guess the proper way is to use your manualload method to cache the image with the correct rotation, then retrieve the image using the cache path.
     
    Last edited: Jul 23, 2015
  29. Freezy

    Freezy

    Joined:
    Jul 15, 2012
    Posts:
    234
    The plugin indeed removes exif rotation natively.
    Indeed, once you have a path you can use manual load.

    In case you (like me) never trust the user, make sure to manual load files from the cache as well, as some users might like to edit/replace those files manually. If they were to dump a 90 MP image in the cache folder Unity would not be able to deal with it. An example of this is found in Example2, where it reloads the cube images from a previous run.
     
  30. Perspicapp

    Perspicapp

    Joined:
    Dec 1, 2014
    Posts:
    2
    Hi,

    Your plugin is working great on almost all devices. I have a problem on "Galaxy S6 Edge" on the front camera only. The picture is turned at 90°. Your plugin work with the back camera.

    Do you have any idea ?

    Is There a way to know if the picture has been taken by the front or back camera ?

    Thanks
     
  31. Freezy

    Freezy

    Joined:
    Jul 15, 2012
    Posts:
    234
    Strange indeed, it sounds like the camera is either saving the image actually rotated (not saving rotation to exif).
    Could you check using the same camera app and camera side outside of the plugin to see if it saved rotated in the gallery as well?

    As the plugin asks Android to handle the actual retreival of the file, the plugin really does not know anything of the application used to get a specific file. It simply makes a request, gets a reply and processes the image so that Unity can access it properly.

    During a quick google it seems this is a common problem with the Galaxy S6 Edge not handling camera rotations well. Which would be something for Samsung to fix.
    Try another camera app as well just to make sure there is sanity somewhere in the device.
     
  32. Zmeyk

    Zmeyk

    Joined:
    Jun 25, 2015
    Posts:
    3
    Hello, Freezy!
    Like to know about loading image with your plugin.
    In my app I need show fullscreen some images from gallery.
    Need stored path of selected images (not images, just path), an when need - load data with WWW(path) and www.LoadImageIntoTexture(myTex)
    This method work fine, when i use hardcoded path. :) Path like ("file:///storage/emulated/o/DCIM/Camera/filename.jpg")
    Now I search plugin for interacted this action with ImagePicker.
    Can your plugin help me?
     
    Last edited: Aug 17, 2015
  33. Freezy

    Freezy

    Joined:
    Jul 15, 2012
    Posts:
    234
    The plugin uses the same mechanic to load the files.
    It processes the file so that it's unrotated and within size limits of what Unity supports.
    It also offers OpenGL native texture loading (no-multicore rendering support and you probably will not be able to read the pixels), which does not use a file buffer to pass the data into a unity texture.

    It allows you to write your own callback when the texture is loaded, or you can use the default and set the target texture (make sure it's not null, or you wont have a reference), or use a System.Action approach by supplying a function that takes a Texture as a parameter.

    It can also supply you with the original URI (rawpath), though not all rawpaths are handled correctly by Unity.
    You can also manually call the plugin to process any image from any path (raw or otherwise), to ensure Unity will be able to handle the file on runtime.

    p.s. There are C# examples for all the methods I stated above ;-)
     
    Last edited: Aug 18, 2015
  34. Zmeyk

    Zmeyk

    Joined:
    Jun 25, 2015
    Posts:
    3
    Thanks!
    Can you show me samples of rawpaths and please, tell more about rawpath incorrect handles by unity.
    Maybe my plan, about working only with image path - wrong...
     
    Last edited: Aug 18, 2015
  35. Freezy

    Freezy

    Joined:
    Jul 15, 2012
    Posts:
    234
    All the examples are in the plugin. If you plan on handling images from untiy directly, I would advise against it.
    Large images can cause crashes, URI's are alien to Unity and Images can be rotated by exif.
    The Image Picker Plugin takes care of all that for you, saving you hours of work and if you need something it currently can not do I am willing to look into adding additional features.
     
  36. ioannes.aspros

    ioannes.aspros

    Joined:
    Sep 2, 2015
    Posts:
    2
    Hi, Freezy!
    I use the Image Picker Plugin on NVIDIA SHIELD Android with Unity 4.6.6. My implementation uses the following code:

    public void PickFile()
    {
    var imagePicker = AddImagePicker();

    var data = new ElicitIce.ImagePickerData() {
    fileSubDir = "xxd",
    fileName = null,
    fileType = "*/*",
    DialogTitle = "Open File",
    gameObject = imagePicker.name,
    callback = imagePicker.ImagePickerCallback
    };

    data.SetImagePicker(ElicitIce.ImagePickerData.ImageSourceType.AllSources);
    imagePicker.StartImagePicker(data);
    }


    The reason for setting fileType = "*/*" is to have an option to select alongside with image types also others like pdf, dwg or dxf and to provide their file path and file bytes for further processing. When browsing with Total Commander app the file path for any selected MIME type is provided correctly through the ImagePickerCallback results; browsing the image files with Photos provides also file path correctly, e.g.:
    /storage/emulated/0/Pictures/dabbler_sketch_2015-04-19_205f5062.jpg

    Using of the Images on Android provided the file path for the same file in the following format:
    content://com.android.providers.media.documents/document/Image%3A9772

    What options are available in Image Picker (like setting ImagePickerData mode or others) to obtain the corresponding file path using any of above mentioned ways of browsing?

    Thanks.
     
  37. Freezy

    Freezy

    Joined:
    Jul 15, 2012
    Posts:
    234

    The tricky part is that without copying the file, the application has no rights to access the file, other then through the content handler.
    I will add a copy file to cache command to version 13, it's less then elegant, but without that getting the actual path will just result in unpredictable behavior due to sporadic permission violations.

    If the picked file is an image (end's with bmp, png, jpg or anything Android API Bitmap class understands), you can also pass it through the plugin after you receive it. By using ImagePicker.ProcessImage, it fails gracefully if it's not an image, so it might be your only way to figure out if it is.
     
    Last edited: Sep 3, 2015
  38. ioannes.aspros

    ioannes.aspros

    Joined:
    Sep 2, 2015
    Posts:
    2
    Hello Freezy,

    thank you so much for your valuable explanation and advice. Looking forward to your new additions to version 13.
     
  39. oddgoo-io

    oddgoo-io

    Joined:
    Aug 22, 2014
    Posts:
    16
    Greetings!

    I would like to know if I could use this to implement my own picker (For VR purposes, I can't call the device media gallery AFAIK) Is it possible to get the media gallery data (like the thumbnails, photo names) for this? Or what would you suggest?

    Thank you!
     
  40. Freezy

    Freezy

    Joined:
    Jul 15, 2012
    Posts:
    234
    The plugin calls the Android System picker to select an app (within the parameters you define).
    In this list would be all the image source apps on the device (like camera, gallery or other such applications).
    None of which render a nice stereoscopic view I am sure.

    The plugin currently has no built-in support for VR and adding it would be a lot of work as the picker is an Android native dialog and only called by the plugin. That said it can be used as a background processor if you know the direct path to the image (preferably a native URI called within the scope of your applications for permission reseasons)

    I could add a few alterations that would allow you to call a specific app, or open the play-store to the download page of it if it is not installed. Then all you would need is a VR compatible app and know it's package name.
    User starts the image picking activity, a VR compatible gallery would be shown (or downloaded, watch out for craziness here as native calls will just screw up the VR experience, perhaps a check before the game/application actually starts and a requirement to download a VR compatible gallery)

    From there the plugin could do it's magic to make sure Unity will understand the picked item.

    You could of course use the source of the stock gallery and modify it to your liking, in which case you can program in image re-sizing yourself and it would not need this plugin at all.
     
    oddgoo-io likes this.
  41. oddgoo-io

    oddgoo-io

    Joined:
    Aug 22, 2014
    Posts:
    16
    Wow ! Thanks a lot for your comprehensive and prompt answer. This information will be essential to steer me in the right direction!
     
  42. oddgoo-io

    oddgoo-io

    Joined:
    Aug 22, 2014
    Posts:
    16
    I managed to write a very simple plugin to get a VR interface working. However, since the device photos are many Megapixels, the whole app freezes for several seconds while the textures are loaded.

    If I have the file paths of the images like you said, would your plugin help resize them in the background before loading or do it on a different thread to solve this issue?
    Right now it's loading full 3,000 by 3,000 images through WWW.textureNonReadable. But for this app, a max of 700 pixels on each side would be enough!

    Thanks again for your attention!
     
  43. Freezy

    Freezy

    Joined:
    Jul 15, 2012
    Posts:
    234
    Short answer: Yes, simply state the maximum allowed size (or just use the defaults of ImagePickerData ) and you will always get a texture of that size or smaller if the base image was already smaller.

    One of the tricks you can already do is handle the loading in a co-routine. It will still take time to process the image, but as this is done without clogging the rendering there is no stalling the scene.

    Take a look at the demo APK, the flying gallery can load many images at the same time (go to gallery and share say 500 images to the unity application), then go to the flying gallery example and press the load received button. Keep sliding the screen and you should hardly notice any fps drop while the plugin rapidly processes the files.

    Continued answer:
    This works if the path is an an android URI path or a file path your application has permissions to read from. From there the plugin can down-sample using android code before Unity gets it's hands on it. It is also my recommended practice that all images you load from outside of unity controlled assets get parsed through the plugin, so that even when the user tries to override a previously used texture the application will not crash or fail to get a texture, instead it can just sample a correct pixel amount.

    You have full control on the sampling sizes, though for performance I would strongly suggest staying with power of 2 sizes, textures can be asymmetrical as well (1024x512 for example).

    I am still working on version 13, but low sales and busy schedule have prevented me from getting things done.
    It's stable and faster (I still need to do a comparative study to verify this), but I still need to test it on marshmallow to see what monkey wrenches google might have thrown at developers this time. If you need version 13 right away please contact me via e-mail with your purchase info (invoice number and date of purchase) and I will send it to you.
     
  44. oddgoo-io

    oddgoo-io

    Joined:
    Aug 22, 2014
    Posts:
    16
    Thanks a lot for another detailed answered! I just purchased it as it seems it will do everything I need now.
     
    Freezy likes this.
  45. trts0804

    trts0804

    Joined:
    Feb 20, 2018
    Posts:
    1
    i buy your product yesterday.. when i run plugin.. and i select a photo in gallery, plugin show me rotated photo...i use gallexy S7... i think that it is plugin bug...
    please help me...
     
  46. Freezy

    Freezy

    Joined:
    Jul 15, 2012
    Posts:
    234
    Sounds like Samsung forgot to apply/set the exif information in that particular image.

    The plug-in contains code to remove and correct any such rotations.
    To be extra thorough, here are some additional silly questions:
    - Was the picture taken with the built-in camera application?
    - Was the device rotated at that moment (with rotations locked)?
    - Does gallery show the image in the proper rotation?
    - if you share the image with something like whatsapp, is it rotated

    If it is only wrong in the plug-in, I would happily take a look at the original image and the logcat to solve the issue.
    With the original image, logcat and some debugging, I can easily narrow down the cause for you.
    Please send them to imagepicker @ elicitice.com
     
  47. Selzier

    Selzier

    Joined:
    Sep 23, 2014
    Posts:
    652
    Is this compatible with transparent PNG files? So far I can only get it to load the color black instead of alpha transparency. Thanks.
     
  48. Freezy

    Freezy

    Joined:
    Jul 15, 2012
    Posts:
    234
    if you configure it to retrieve either the raw file, or switch to PNG it should work. If not let me know I will do some tests.
     
  49. piokot

    piokot

    Joined:
    Jul 11, 2018
    Posts:
    13
    Hi! I have a very strange problem. While the plugin itself works perfectly, it shows the most recent photos with date 1 Jan 1970....No idea what may cause this.
     
  50. Freezy

    Freezy

    Joined:
    Jul 15, 2012
    Posts:
    234
    The plugin has no built-in UI to show the date of the image, is it possible the gallery or camera app you are using to view the date is at fault? Or are you trying to read the date from the file used as a cache?