Adobe
製品
Acrobat
Creative Cloud
Creative Suite
Digital Marketing Suite
Digital Publishing Suite
Elements
Photoshop
Touch Apps
その他の製品一覧
ソリューション
デジタルマーケティング
デジタルメディア
教育
金融機関
Web Experience Management
その他のソリューション
ラーニング サポート ダウンロード 会社情報
ご購入
アドビストア 安心のサポート& サービス
アカデミックストア 学生、教職員、個人向け
アドビライセンスストア 中小企業向け
ボリュームライセンスについて 企業、教育機関、官公庁向け
販売パートナー
キャンペーン情報
検索
 
情報 サインイン
ようこそ、 さん カート 注文状況 マイアカウント
マイアカウント
注文状況
アカウント情報の変更
コミュニケーションの設定を変更
サインアウト
サインインの目的 お客様のアカウントや体験版ダウンロード、製品の拡張機能、コミュニティエリアへのアクセスなどを管理するため
Adobe
製品 セクション ご購入   検索  
ソリューション 会社情報
サポート ラーニング
サインイン サインアウト 注文状況 マイアカウント
先行予約の提供開始予定日Date. 商品が発送されるまで、クレジットカードには課金されません。提供開始の予定日は変更される場合があります。 先行予約の提供開始予定日Date. ダウンロードの準備が整うまで、クレジットカードには課金されません。提供開始の予定日は変更される場合があります。
個数:
ご購入には学生・教職員個人版の購入資格の確認が必要です。
小計
カートの中身を見る
Adobe Developer Connection / Flashデベロッパーセンター /

Flashでマルチデバイス向けのアプリを効率的に開発しよう 前編

著者 黄 聖實氏(ホァン ソンシル)

黄 聖實氏(ホァン ソンシル)
  • 株式会社ミツエーリンクス

Content

  • 「再利用できる部分」と「追加する部分」
  • アプリ開発の前に考えること

作成日

7 December 2011

ページ ツール

Facebookでシェア
Twitterでツイート
LinkedInでシェア
ブックマーク
印刷

タグ

必要条件

ユーザーレベル

すべて

スマートフォンをはじめとするモバイルデバイスが急激に増加しています。モバイルデバイスは、PCに比べて、より個人的な用途で利用されます。コンテンツ/アプリ提供者はそのニーズに合わせて、モバイルデバイスで動作するコンテンツ/アプリを提供する必要があります。一方、ユーザはモバイルデバイスであっても、PCと同じユーザエクスペリエンス(以下UX)を期待します。

様々なデバイスに対してコンテンツ/アプリを提供し続けるためには、開発者はそれぞれ違う開発環境に慣れる必要があり、コンテンツ提供者は新しいデバイスが増えれば増えるほど、開発リソースと開発にかかる工数を確保する必要があります。

Flash Platformは、こうしたマルチデバイス展開を行う上で、最適な選択肢といえます。Flash Platformを利用すると、1つの開発環境でPC/iPhone/Android/BlackBerry Playbook/TVなど様々なデバイス向けのコンテンツ/アプリを制作できます。つまり、新しいデバイスが登場した際、新規で開発リソースを追加せずとも、既存のFlashの開発リソースを利用することができます。コンテンツ/アプリの内容によっては、メインロジックはデバイスと関係なく再利用し、デバイス特有の機能だけを追加するだけでいいのです。

本記事では、PCとモバイルデバイスに対応した写真補正アプリを制作すると想定して、その設計から制作方法を解説します。2回に分け、前編では設計に関する内容を、後編では設計にもとづいたアプリの制作方法を取り上げます。

※なお本記事では、複数のデバイス向けにアプリを制作する際に必要なワークフローを中心に解説し、具体的なActionScriptのコードやアプリをApp StoreやAndroid Marketなどに登録する方法は省略します。ご了承ください。

「再利用できる部分」と「追加する部分」

アプリは、外部からの影響により大きく変化する動的な部分と、変化しない静的な部分に分けることができます。車を例にすると、見た目にはエンジン/タイヤ/車体フレームなどの部品で構成されており、これらは製造会社や車種によって違います。しかし、見た目が異なっても、車が動く原理、すなわち「エンジン → 変速機 → タイヤ」などの基本的な内容は同じです。車種により異なるエンジン/タイヤなどが動的な部分(追加する部分)、車が動く原理が静的な部分(再利用できる部分)になります。

Flashで複数のデバイス向けにアプリを制作する場合も、「再利用できる部分」と「追加する部分」を分けて考えることで、工数や開発リソースの節約が可能です。まずは、全てのデバイスで共通する、アプリ自体の用途や目的を整理しましょう。「写真を補正する」「P2Pでファイルを共有する」「動画を再生する」「SNSと連動する」といったレベルでの整理でよいでしょう。

アプリの内容を整理したら次に、より具体的な部分でデバイスにどのような機能が必要かを洗い出します。例えば、「写真補正のためにカメラを利用するか」「ファイルの共有のためにローカルへのアクセスが必要か」「音を録音するためにマイクを使用するか」といった感じです。

アプリ開発の前に考えること

アプリの目的や概念が頭の中で整理できたら、それを可視化します。ここからは、PCとモバイルで使用できる写真補正アプリケーション「R-fotoMix」を開発するという想定で説明します。

開発環境と制作物の定義

開発環境と制作物は以下のように定義します。

開発環境と制作物
開発環境 Flash Professional CS5.5(もしくはActionScript 3.0で作業できる環境)とAIR3 SDK
文字コード UTF8
ASDOCS 提供しない
書き出し形式 PC:.air
モバイル(スマートフォン/タブレット):.apk/.ipa(Captive Runtime使用)

機能の設計

次は、アプリの機能の設計です。R-fotoMixでは下記のような機能を考えてみました。

  • 全体機能
    • 写真を補正する。
    • 補正した写真をローカルに保存する。
  • 補正する写真を選択する方法
    • カメラ付きのデバイスの場合は、カメラで写真を撮影する。
    • ローカルに保存されている写真を利用する。
  • 補正する方法
    • すでに用意されているプリセットで行う簡単補正。
    • Tone Curve(トーンカーブ)を利用したマニュアル補正。
整理後のR-fotoMixの機能構成
図1 整理後のR-fotoMixの機能構成

ActionScriptで作業する際にもっとわかりやすくするため、さらに「再利用できる部分」と「追加する部分」に分けてみました。

R-fotoMixで「再利用できる部分」と「追加する部分」
図2 R-fotoMixで「再利用できる部分」と「追加する部分」

レイアウトの設計

次は、デバイスごとの画面レイアウトを考えてみます。R-fotoMixの場合、デバイスの画面サイズを基準にして、異なるレイアウトにします。8インチを基準にして、スマートフォン向けとタブレット/PC向けに分けて、それぞれの画面に合わせたレイアウトを見せます。以下のワイヤフレームは、2種類のレイアウトをPortrait(縦長)とLandscape(横長)に分けたものです。

デバイスの画面サイズが8インチ未満の場合(スマートフォン向け)
図3 デバイスの画面サイズが8インチ未満の場合(スマートフォン向け)
デバイスの画面サイズが8インチ以上の場合(タブレット/PC向け)
図4 デバイスの画面サイズが8インチ以上の場合(タブレット/PC向け)

グラフィック要素の設計

モバイルアプリにおいて、グラフィック要素の仕様はコンテンツのパフォーマンスに大きく影響を与える可能性があります。R-fotoMixの場合、パフォーマンスに影響があるほどグラフィック要素は多くないですが、より良いパフォーマンスを目指して次のような処理を行います。

  • 全体的なインターフェイスはActionScriptで作成してBitmapに変換。
  • 各ボタンは、アイコン(Illustratorを使いベクター形式で作成してインポート)とラベル(静的テキストフィールドで生成)を子要素にしてSpriteを生成後、Bitmapに変換。
  • 作成されたグラフィック要素はcatchAsBitmapでキャッシュ処理を行う。

※ボタンの背景はMouseOver/MouseOut/TouchOver/TouchOutなどの処理によって変化させたいので、今回はActionScriptで作成します。もちろん、各ボタンを用意して1枚の画像に作成してもかまいません。

ボタンの構成
図5 ボタンの構成

設計についてはここまでです。後編では、ここで設計した内容をもとに、制作物の作成と書き出しの際に必要な内容を簡単なサンプルコードを交えて解説します。

製品

  • Acrobat
  • Creative Cloud
  • Creative Suite
  • Digital Marketing Suite
  • Digital Publishing Suite
  • Elements
  • モバイルアプリ
  • Photoshop
  • Touch Apps

ソリューション

  • デジタルマーケティング
  • コンテンツオーサリング
  • Web Experience Management

業種別ソリューション

  • 教育
  • 金融機関

サポート

  • ヘルプ&サポート
  • 注文と返品
  • ダウンロードに関するヘルプ
  • ユーザー登録に関するヘルプ

ラーニング

  • ADC: Adobe Developer Center
  • Adobe TV
  • Design Magazine
  • Photoshop Magazine
  • Focus In

ご購入方法

  • アドビストア
  • アカデミックストア
  • アドビライセンスストア
  • ボリュームライセンスについて
  • 販売パートナー
  • キャンペーン情報

ダウンロード

  • Adobe Reader
  • Adobe Flash Player
  • Adobe AIR
  • Adobe Shockwave Player

会社情報

  • プレスルーム
  • パートナープログラム
  • 企業の社会的責任(英語)
  • 採用情報
  • 投資家の皆様へ(英語)
  • イベント&セミナー
  • Legal(英語)
  • セキュリティ
  • お問い合わせ
国・地域および言語の選択 日本(変更)
国・地域および言語の選択 閉じる

North America

Europe, Middle East and Africa

Asia Pacific

  • Canada - English
  • Canada - Français
  • Latinoamérica
  • México
  • United States

South America

  • Brasil
  • Africa - English
  • Österreich - Deutsch
  • Belgium - English
  • Belgique - Français
  • België - Nederlands
  • България
  • Hrvatska
  • Česká republika
  • Danmark
  • Eastern Europe - English
  • Eesti
  • Suomi
  • France
  • Deutschland
  • Magyarország
  • Ireland
  • Israel - English
  • ישראל - עברית
  • Italia
  • Latvija
  • Lietuva
  • Luxembourg - Deutsch
  • Luxembourg - English
  • Luxembourg - Français
  • الشرق الأوسط وشمال أفريقيا - اللغة العربية
  • Middle East and North Africa - English
  • Moyen-Orient et Afrique du Nord - Français
  • Nederland
  • Norge
  • Polska
  • Portugal
  • România
  • Россия
  • Srbija
  • Slovensko
  • Slovenija
  • España
  • Sverige
  • Schweiz - Deutsch
  • Suisse - Français
  • Svizzera - Italiano
  • Türkiye
  • Україна
  • United Kingdom
  • Australia
  • 中国
  • 中國香港特別行政區
  • Hong Kong S.A.R. of China
  • India - English
  • 日本
  • 한국
  • New Zealand
  • 台灣

Southeast Asia

  • Includes Indonesia, Malaysia, Philippines, Singapore, Thailand, and Vietnam - English

Copyright © 2012 Adobe Systems Incorporated. All rights reserved.

利用条件 | プライバシーポリシーとCookie (更新)

Reviewed by TRUSTe: site privacy statement