This is an Air native extension that allows you to display native UI to pick media (videos and images) from the gallery or take a picture/video with the camera on iOS and Android. It has been forked from an original version developed by FreshPlanet, and the API has been adapted by VoiceThread to allow multiple assets to be selected and to have a simpler filesystem-based interface for returning image and video data.
// Take a picture/video with the camera
if (AirImagePicker.getInstance().isCameraAvailable()) {
AirImagePicker.getInstance().displayCamera(function(status:String, media:File=null):void {
// Do something with the Media information returned
});
}
// Pick an image from the gallery
if (AirImagePicker.getInstance().isImagePickerAvailable()) {
AirImagePicker.getInstance().displayImagePicker(function(status:String, media:File=null):void {
// Do something with the Media information returned
});
}
In the manifestAdditions section of your AIR app manifest, include this in the application element:
<activity
android:name="com.freshplanet.ane.AirImagePicker.AirImagePickerActivity"
android:configChanges="orientation|keyboard|keyboardHidden|screenSize|screenLayout|fontScale"
/>
The "configChanges" attribute fixes crashes when returning to the app on some Samsung devices.
If you need to use the cropping feature, add this in the manifestAdditions section:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
This allows images to be shared with the system application that handles cropping.
Advanced features available: square cropping, custom positioning for the gallery image picker on iPad, custom overlay to avoid white screen when losing Stage3D context, and the selection of multiple images and videos.
For more information, please look at the Actionscript documentation in AirImagePicker.as.
The ANE binary (AirImagePicker.ane) is located in the bin folder. You should add it to your application project's Build Path and make sure to package it with your app (more information here).
Should you need to edit the extension source code and/or recompile it, you will find an ant build script (build.xml) in the build folder:
cd /path/to/the/ane/build
mv example.build.config build.config
#edit the build.config file to provide your machine-specific paths
ant
This ANE was originally written by Alexis Taugeron and Daniel Rodriguez, with adaptations by Jesse Crossen.
It belongs to FreshPlanet Inc. and is distributed under the Apache Licence, version 2.0.