パッケージ | flash.media |
クラス | public class CameraRoll |
継承 | CameraRoll EventDispatcher Object |
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 2 |
AIR プロファイルのサポート:この機能はモバイルデバイスでサポートされますが、デスクトップオペレーティングシステムまたは AIR for TV デバイスではサポートされません。複数のプロファイル間での API サポートについて詳しくは、AIR プロファイルのサポートを参照してください。
CameraRoll.addBitmapData()
メソッドは、画像をデバイスの専用メディアライブラリに追加します。アプリケーションが CameraRoll.addBitmapData()
メソッドをサポートしているかどうかを実行時に調べるには、CameraRoll.supportsAddBitmapData
プロパティの値を確認します。
CameraRoll.browseForImage()
メソッドは、ユーザーがメディアライブラリの画像を選択できる画像選択ダイアログを開きます。ユーザーが画像を選択すると、CameraRoll オブジェクトは select
イベントを送出します。選択した画像にアクセスするには、このイベントに対して送出された MediaEvent オブジェクトを使用します。アプリケーションが CameraRoll.browseForImage()
メソッドをサポートするかどうかをランタイムに確認するには、CameraRoll.supportsBrowseForImage
プロパティを確認します。
プロパティ | 定義元 | ||
---|---|---|---|
constructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクター関数への参照です。 | Object | ||
permissionStatus : String [静的] [読み取り専用]
カメラロールにアクセスする権限をアプリケーションが付与されたかどうかを判定します。 | CameraRoll | ||
supportsAddBitmapData : Boolean [静的] [読み取り専用]
CameraRoll.addBitmapData() メソッドがサポートされているかどうか。 | CameraRoll | ||
supportsBrowseForImage : Boolean [静的] [読み取り専用]
CameraRoll.browseForImage() メソッドがサポートされるかどうかをレポートします。 | CameraRoll |
メソッド | 定義元 | ||
---|---|---|---|
CameraRoll オブジェクトを作成します。 | CameraRoll | ||
デバイスカメラロールに画像を追加します。 | CameraRoll | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
イベントリスナーオブジェクトを EventDispatcher オブジェクトに登録し、リスナーがイベントの通知を受け取るようにします。 | EventDispatcher | ||
ユーザーがデバイスカメラロールから既存のイメージを選択できるイメージブラウザーダイアログを開きます。 | CameraRoll | ||
イベントをイベントフローに送出します。 | EventDispatcher | ||
EventDispatcher オブジェクトに、特定のイベントタイプに対して登録されたリスナーがあるかどうかを確認します。 | EventDispatcher | ||
オブジェクトに指定されたプロパティが定義されているかどうかを示します。 | Object | ||
Object クラスのインスタンスが、パラメーターとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。 | Object | ||
指定されたプロパティが存在し、列挙できるかどうかを示します。 | Object | ||
EventDispatcher オブジェクトからリスナーを削除します。 | EventDispatcher | ||
システムメディアライブラリまたは「カメラロール」にアクセスする権限を要求します。 | CameraRoll | ||
ループ処理に対するダイナミックプロパティの可用性を設定します。 | Object | ||
ロケール固有の規則に従って書式設定された、このオブジェクトのストリング表現を返します。 | Object | ||
指定されたオブジェクトのストリング表現を返します。 | Object | ||
指定されたオブジェクトのプリミティブな値を返します。 | Object | ||
指定されたイベントタイプについて、この EventDispatcher オブジェクトまたはその祖先にイベントリスナーが登録されているかどうかを確認します。 | EventDispatcher |
イベント | 概要 | 定義元 | ||
---|---|---|---|---|
[ブロードキャストイベント] Flash Player または AIR アプリケーションがオペレーティングシステムのフォーカスを取得して、アクティブになったときに送出されます。 | EventDispatcher | |||
画像を選択せずにユーザーが画像の参照操作をキャンセルすると送出されます。 | CameraRoll | |||
addBitmapData() 操作が正常に完了したことを通知します。 | CameraRoll | |||
[ブロードキャストイベント] Flash Player または AIR アプリケーションがオペレーティングシステムのフォーカスを失って、非アクティブになったときに送出されます。 | EventDispatcher | |||
エラーが発生したときに error イベントが送出されます。 | CameraRoll | |||
カメラロールにアクセスする権限をアプリケーションから要求したときに送出されます。 | CameraRoll | |||
ユーザーがデバイスメディアライブラリの画像を選択するときに送出されます。 | CameraRoll |
permissionStatus | プロパティ |
supportsAddBitmapData | プロパティ |
supportsBrowseForImage | プロパティ |
CameraRoll | () | コンストラクター |
public function CameraRoll()
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 2 |
CameraRoll オブジェクトを作成します。
ActionScript でサポートされるメディアライブラリは 1 つのみです。すべての CameraRoll オブジェクトは同じ画像リポジトリに保存されます。
addBitmapData | () | メソッド |
public function addBitmapData(bitmapData:BitmapData):void
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 2 |
デバイスカメラロールに画像を追加します。
アプリケーションが CameraRoll.addBitmapData()
メソッドをサポートしているかどうかを実行時に調べるには、CameraRoll.supportsAddBitmapData
プロパティの値を確認します。
パラメーター
bitmapData:BitmapData — カメラロールに転送する画像を含む BitmapData オブジェクト。
|
例外
PermissionError — アプリケーションには、カメラを使用する権限がありません。
|
browseForImage | () | メソッド |
public function browseForImage(value:CameraRollBrowseOptions = null):void
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 2.5 |
ユーザーがデバイスカメラロールから既存のイメージを選択できるイメージブラウザーダイアログを開きます。
ユーザーがイメージを選択すると、CameraRoll インスタンスは MediaEvent オブジェクトを含む select
イベントを送出します。MediaEvent オブジェクトの data
プロパティを使用して画像を読み込みます。data
プロパティは MediaPromise オブジェクトであり、Loader クラスの loadFilePromise()
メソッドを使用して読み込むことができます。ただし、MediaPromise オブジェクトに含まれるファイルオブジェクトは、一部のプラットフォーム(Blackberry Tablet OS)では有効ですが、その他のプラットフォーム(iOS および Android)では有効ではありません。loadFilePromise()
メソッドを使用すれば、イメージはすべてのプラットフォームで適切にロードされます。メディアオブジェクトの未加工のデータにアクセスするために、メディアプロミスから提供されたデータソースを開き、IDataInput インターフェイスのメソッドを使用して、データを読み取ることができます。
アプリケーションが CameraRoll.browseForImage()
メソッドをサポートするかどうかをランタイムに確認するには、CameraRoll.supportsBrowseForImage
プロパティを確認します。
iOS では(iPad でのみ)、イメージブラウザーダイアログについて具体的なサイズを要求できます。また、イメージブラウザーダイアログで隠されたくない画面の領域を指定することもできます。iPad では、イメージブラウザーは画面いっぱいに表示されないため、この要求は iPad でのみ機能します。
iPad 用にイメージブラウザーのサイズおよび配置オプションを要求するには、CameraRollBrowseOptions オブジェクトを browseForImage()
に渡します。パラメーターを指定しなかった場合、このメソッドはシステムで定義されたダイアログのデフォルトサイズを使用して、このダイアログをディスプレイの左上に配置します。
パラメーター
value:CameraRollBrowseOptions (default = null ) — イメージロールダイアログを表示するためのオプションを指定する際に使用できる CameraRollBrowseOptions オブジェクト。このパラメーターはオプションです。
|
イベント
select: — ユーザーが画像を選択すると送出されます。
| |
cancel: — ユーザーが参照操作をキャンセルすると送出されます。
| |
error: — デフォルトの画像ブラウザーアプリケーションが使用中の場合に送出されます。
| |
error: — AIR アプリケーションがこの関数を呼び出すときにバックグラウンドで実行されている場合に送出されます。
|
例外
PermissionError — アプリケーションには、カメラを使用する権限がありません。
|
詳細
関連する API エレメント
例 ( この例の使用方法 )
package flash.media.examples { import flash.media.CameraRoll; import flash.media.MediaPromise; import flash.media.MediaType; import flash.events.MediaEvent; import flash.events.Event; import flash.display.Loader; import flash.display.Sprite; import flash.events.IOErrorEvent; import flash.display.StageAlign; import flash.display.StageScaleMode; public class CameraRollTest extends Sprite{ private var mediaSource:CameraRoll = new CameraRoll(); public function CameraRollTest() { this.stage.align = StageAlign.TOP_LEFT; this.stage.scaleMode = StageScaleMode.NO_SCALE; if( CameraRoll.supportsBrowseForImage ) { log( "Browsing for image..." ); mediaSource.addEventListener( MediaEvent.SELECT, imageSelected ); mediaSource.addEventListener( Event.CANCEL, browseCanceled ); mediaSource.browseForImage(); } else { log( "Browsing in camera roll is not supported."); } } private var imageLoader:Loader; private function imageSelected( event:MediaEvent ):void { log( "Image selected..." ); var imagePromise:MediaPromise = event.data; imageLoader = new Loader(); if( imagePromise.isAsync ) { log( "Asynchronous media promise." ); imageLoader.contentLoaderInfo.addEventListener( Event.COMPLETE, imageLoaded ); imageLoader.contentLoaderInfo.addEventListener( IOErrorEvent.IO_ERROR, imageLoadFailed ); imageLoader.loadFilePromise( imagePromise ); } else { log( "Synchronous media promise." ); imageLoader.loadFilePromise( imagePromise ); this.addChild( imageLoader ); } } private function browseCanceled( event:Event ):void { log( "Image browse canceled." ); } private function imageLoaded( event:Event ):void { log( "Image loaded asynchronously." ); this.addChild( imageLoader ); } private function imageLoadFailed( event:Event ):void { log( "Image load failed." ); } private function log( text:String ):void { trace( text ); } } }
requestPermission | () | メソッド |
public function requestPermission():void
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 24.0 |
システムメディアライブラリまたは「カメラロール」にアクセスする権限を要求します。
イベント
PermissionStatus: — 要求された権限がユーザーによって付与/拒否されたときに送出されます。
|
cancel | イベント |
flash.events.Event
プロパティ Event.type =
flash.events.Event.CANCEL
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 2.5 |
画像を選択せずにユーザーが画像の参照操作をキャンセルすると送出されます。
Event.CANCEL
定数は、type
プロパティ(cancel
イベントオブジェクト)の値を定義します。
このイベントには、次のプロパティがあります。
プロパティ | 値 |
---|---|
bubbles | false |
cancelable | false は、キャンセルするデフォルトの動作がないことを示します。 |
currentTarget | イベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。 |
target | 操作をキャンセルするオブジェクトへの参照です。 |
complete | イベント |
flash.events.Event
プロパティ Event.type =
flash.events.Event.COMPLETE
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 2 |
addBitmapData() 操作が正常に完了したことを通知します。
Event.COMPLETE
定数は、type
プロパティ(complete
イベントオブジェクト)の値を定義します。
このイベントには、次のプロパティがあります。
プロパティ | 値 |
---|---|
bubbles | false |
cancelable | false は、キャンセルするデフォルトの動作がないことを示します。 |
currentTarget | イベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。 |
target | 読み込みが完了したネットワークオブジェクトです。 |
error | イベント |
flash.events.ErrorEvent
プロパティ ErrorEvent.type =
flash.events.ErrorEvent.ERROR
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 2 |
エラーが発生したときに error
イベントが送出されます。
次のようなエラーの原因があります。
- 画像ブラウザーを開くことができません。
- 画像ブラウザーが使用中です。
- AIR アプリケーションがバックグラウンドで実行されている場合、画像の参照が試行されます。
- 画像をメディアライブラリに追加できません。
- デバイスでサポートされないメソッドが呼び出されました。
- AIR アプリケーションが、インターネットに接続されていない状態で、リモート画像をロードしようとしました。
type
プロパティ(error
イベントオブジェクト)の値を定義します。
このイベントには、次のプロパティがあります。
プロパティ | 値 |
---|---|
bubbles | false |
cancelable | false は、キャンセルするデフォルトの動作がないことを示します。 |
currentTarget | イベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。 |
target | ネットワーク操作エラーが発生したオブジェクトです。 |
text | エラーメッセージとして表示されるテキストです。 |
permissionStatus | イベント |
flash.events.PermissionEvent
プロパティ PermissionEvent.type =
flash.events.PermissionEvent.PERMISSION_STATUS
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 24.0 |
カメラロールにアクセスする権限をアプリケーションから要求したときに送出されます。status
プロパティの値を確認すると、権限が付与されたか拒否されたかを判定できます。
関連する API エレメント
select | イベント |
flash.events.MediaEvent
プロパティ MediaEvent.type =
flash.events.MediaEvent.SELECT
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | AIR 2.5 |
ユーザーがデバイスメディアライブラリの画像を選択するときに送出されます。
このイベントに対して送出される MediaEvent オブジェクトで、選択したメディアにアクセスできます。
select
MediaEvent の定数です。
type
プロパティ(MediaEvent
イベントオブジェクト)の値を定義します。このイベントには、次のプロパティがあります。
プロパティ | 値 |
---|---|
bubbles | false |
cancelable | false は、キャンセルするデフォルトの動作がないことを示します。 |
currentTarget | イベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。 |
data | 使用可能なメディアインスタンスの MediaPromise オブジェクトです。 |
Tue Jun 12 2018, 10:34 AM Z