Reads photos & videos from an album (e.g. Camera Roll)
Tested for iOS and Android. Likely works also for other platforms (but not tested).
This blog post explains the challenges that this library addresses and the approach how it solves them.
The module can automatically check if the user granted the required permission. For Android 6 permission checks this requires to add cordova-plugin-android-permission to the Cordova application.
npm install cordova-gallery-access --save
The library uses the Cordova plugin cordova-gallery-api, which you therefore need to install to your Cordova application:
cordova plugin add https://github.com/Collaborne/cordova-gallery-api.git --save --nofetch
This examples shows the recently taken photos from the Camera Roll:
import * as cordovaGallery from 'cordova-gallery-access';
cordovaGallery.load().then(items => {
let html = '';
items.forEach(item => {
html += `<img src="file://${item.thumbnail}"></img>`;
});
document.getElementById("content").innerHTML = html;
}).catch(e => console.error(e));
The load
method supports optional parameters:
cordovaGallery.load({
albumType: 'PHAssetCollectionSubtypeSmartAlbumUserLibrary',
count: 10
});
Supported options:
Option | Description |
---|---|
albumType | Type of the album from which the items will be taken |
count | Maximal number of items that will be returned |