O-Planning 書籍サポートページ


  「ドコモマーケット(iモード)で売るためのiアプリプログラミング」

「ドコモマーケット(iモード)で売るためのiアプリプログラミング」

誰でも参戦できるケータイアプリ新市場
2010年12月より開始されたドコモマーケット(iモード)で販売するためのiアプリ作成方法を解説。最新のiアプリ開発環境であるAppliStudioとSOGフレームワークを使って、アプリを制作しドコモマーケットに登録するまでを詳説する。
サンプルプログラム満載。

大型本: 484ページ
出版社: ソフトバンククリエイティブ (2011/3/24)
ISBN-10: 4797363126
ISBN-13: 978-4797363128
発売日: 2011/3/24

・サンプルプログラム

書籍のサンプルプログラムは、下記からダウンロードできます。
サンプルプログラムのインストール方法については、zipファイルのreadme.txtをご覧ください。

workspace_iAppBook20110314.zip


・目次

はじめに
本書を読む前に
本書のドコモマーケット(i モード)対応状況
サンプルプログラムのダウンロード

第1章 ドコモマーケット(i モード)とi アプリDX
 1.1 「ドコモマーケット(i モード)」とは
  「ドコモマーケット(i モード)」の概要
  iアプリDX(トラステッドiアプリ)で使える機能とAPI
  課金システム
  コンテンツ提供者登録とアプリ公開
 1.2 その他のマーケットとの違い
 1.3 「i アプリDX(トラステッドi アプリ)」の開発から公開までの流れ
  1. ドコモマーケット(i モード)の開発キットをインストール
  2. Eclipse とAppliStudio で、i アプリDX(トラステッドi アプリ)を開発
  3. エミュレータおよび携帯にてデバッグ
  4. i アプリDX の申請
  5. i アプリDX の公開
 1.4 i アプリDX(トラステッドi アプリ)の推奨開発環境
 1.5 DoJa プロファイルとStar プロファイル
  DoJa プロファイル対応携帯
  Star プロファイル対応携帯
  Star プロファイルのバージョン
  Star プロファイルのバージョンごとの機能
  携帯機種ごとの非互換性
 1.6 AppliStudio とSOG フレームワーク
  AppliStudio の概要
  SOG フレームワークの概要
  AppliStudio とSOG フレームワークを使うメリット
  目的別で分類したi アプリ開発方法
 1.7 開発資料


第2章 開発環境の構築
 2.1 「開発環境」構築の流れ
 2.2 JDK のダウンロードとインストール
  1. JDK のダウンロードとインストール
  2. Windows の環境設定
 2.3 Eclipse のダウンロードとインストール
  1. Eclipse の日本語化キットPleiades のダウンロードとインストール
  2. Eclipse の設定
  3. Eclipse の動作テスト
  Eclipse の起動・コンパイル・実行ができない場合
 2.4 DoJa/Star プロファイルのダウンロードとインストール
  インストールの流れ
  1. DoJa プロファイルのダウンロードとインストール
  2. DoJa エミュレータの設定
  3. Star プロファイルのダウンロードとインストール
  4. Star エミュレータの設定
 2.5 AppliStudio のダウンロードとインストール
  1. AppliStudio のダウンロードとインストール
  2. Eclipse のDoJa/Star プロファイル設定
 2.6 ドコモマーケット(i モード)ライブラリのダウンロードとインストール
 2.7 「Hello World」アプリの作成
  「Hello World」アプリの仕様
  1. 新規プロジェクトの作成
  2. フォームエディタで画面を作成
  3.「 Hello World」アプリをコーディング
  4. Star エミュレータで動作確認
  5. Star プロファイル対応携帯での動作確認
  6. DoJa プロファイル対応携帯での動作確認
 2.8 アンインストール
 2.9 正常に動作しない場合


第3章 marketBOX(マーケット管理システム)の利用
 3.1 コンテンツ提供者申請とは
 3.2 コンテンツ提供者申請
  ドコモマーケット(i モード)アカウント申請
  契約者情報
  担当者情報
  特定商取引法表示/問い合わせ先項目
  登録後の手順
  口座情報入力
  システム利用料金支払い
 3.3 「marketBOX」へのログインとアプリ追加
  アプリ追加とDXID の取得
  DXID のADF 設定
  アプリのアップロード
  開発用携帯の登録
  アプリのダウンロードと実行
 3.4 アプリが正常に実行できない場合


第4章 AppliStudio とSOG フレームワーク
 4.1 AppliStudio とSOG フレームワークの関係
 4.2 Eclipse とAppliStudio
  画面の流れとフローエディタ
  フォームとフォームエディタ
  コンポーネント一覧
  コンポーネントの基本的なプロパティ
 4.3 フォームと基本プログラム構造
  フォームの遷移と動作の仕組み(アプリケーションマネージャー)
 4.4 デバッグ方法
  デバッグ構成
  ログの表示
 4.5 エミュレータの操作


第5章 基本的なi アプリの作り方
 ……ストップウォッチアプリを作る
 5.1 i アプリ作成の概要
  ストップウォッチアプリの仕様概要
 5.2 プロジェクトの作成
 5.3 ADF の設定
  「iαppliTool for Star-1.2」を使ったアイコン登録
 5.4 画面遷移フローの作成
  フォームの作成
  遷移フローの作成
 5.5 フォーム(画面)の作成
 「ストップウォッチ」フォーム(FormTop)
 「ラップタイム」フォーム(Form1)
 5.6 プログラムする
  StopwatchTimer クラスの作成
  FormTop クラスの作成(「ストップウォッチ」フォーム)
  Form1 クラスの作成(「ラップタイム」フォーム)
  FormTop クラスとFrom1 クラスの全ソースコード
 5.7 まとめ


第6章 イメージ(画像)の読み込みとスクラッチパッドAPI
 ……スライドショーアプリを作る
 6.1 スライドショーアプリの概要
  スライドショーアプリ仕様の概要
  ADF 設定
 6.2 画面遷移フローとフォーム(画面)の作成
  画面遷移フローを作る
  フォーム(画面)を作る
 6.3 KPicture クラスとKImage クラス
 6.4 「マイピクチャ」フォルダへのアクセス
  複数の画像データを「マイピクチャ」フォルダから呼び出す
  ImageStore クラスのエントリID 管理
 6.5 スクラッチパッドへのデータ保存
  スクラッチパッドのサイズ
  スクラッチパッドへのアクセス
  スクラッチパッドライブラリとプロジェクトへの追加
  スクラッチパッドライブラリを使ったプログラム
  スクラッチパッドライブラリのラップライブラリを作る
 6.6 プログラムする
  SlideshowData クラスの作成
  FormTop クラス(「トップメニュー」フォーム)の作成
  Form1 クラス(「スライドショー」フォーム)の作成
  Form2 クラス(「設定」フォーム)の作成
  セーブデータの保存タイミング
 6.7 まとめ


第7章 カメラAPI
 ……メモカメラアプリを作る 203
 7.1 メモカメラアプリの概要
  アプリの仕様概要
  ADF 設定
 7.2 画面遷移フローとフォーム(画面)を作る
  「画面遷移フロー」を作る
  フォーム(画面)を作る
 7.3 カメラAPI と撮影した画像の保存
  カメラAPI
  イメージエンコーダーAP
  カメラサポートクラスを作る
 7.4 日時の取得
  XDate クラスの作成


第8章 サウンドとタッチパネルとバイブレーションAPI
 ……楽器アプリを作る 237
 8.1 楽器アプリの概要
  アプリの仕様概要
  ADF 設定
 8.2 画面遷移フローとフォーム(画面)を作る
  画面遷移フローを作る
  フォーム(画面)を作る
 8.3 加速度センサーの利用
  加速度センサーAPI
  XPhoneAcceleration クラスの実装
 8.4 タッチパネルの利用
  タッチパネルAPI
  XBaseCanvasTouch クラスの実装
 8.5 バイブレーション機能の利用
  バイブレーションAPI
  XPhoneVibrator クラスの実装
 8.6 サウンドファイルの再生
  サウンドAPI
  サウンドファイルを作成する
 8.7 プログラムする
  DrumSet クラスの作成
  Main クラスの変更
  FormTop クラス(「タイトル」フォーム)の作成
  Form1 クラス(「ボタンドラム」フォーム)の作成
  Form2 クラス(「モーションドラム」フォーム)の作成
  Form3 クラス(「タッチパネルドラム」フォーム)の作成
  Form4 クラス(「設定」フォーム)の作成
 8.8 まとめ


第9章 ゲームに必要なリアルタイム処理
 ……アクションゲームを作る
 9.1 アクションゲームの概要
  アプリの仕様概要
  ADF 設定
 9.2 画面遷移フローとフォーム(画面)を作る
  画面遷移フローの作成
  フォーム(画面)の作成
 9.3 アクションゲームを作るための基本的なプログラム構造
  リソースからの画像ロードとアニメーション
  ステージ情報を管理するGStageTip クラス
  リアルタイムなキー入力の判定
  ゲーム状態の管理
 9.4 BGM・SE の管理とサウンドループの実現
 9.5 パーティクルエフェクトの実装
 9.6 プログラムする
  ゲームデータ管理クラス(GameData クラス)の作成
  FormTop クラス(「タイトル」フォーム)の作成
  Form1 クラス(「ゲーム」フォーム)の作成
  Form2 クラス(「ハイスコア」フォーム)の作成
 9.7 まとめ


第10章 通信API
 ……Wikipediaリーダーを作る 327
 10.1 通信アプリ「Wikipedia リーダー」の概要
  アプリの仕様概要
  ADF 設定
 10.2 画面遷移フローとフォーム(画面)の作成
  画面遷移フローを作る
  フォーム(画面)を作る
 10.3 通信先URL とDXID 付与機能の編集
  通信先URL の登録
 10.4 WikipediaAPI(Simple API)
 10.5 WikipediaAPI(Simple API)での通信
 10.6 XML の解析と表示
  XML の解析 その1:キーワード一覧リストのための解析
  XML の解析 その2:項目内容テキストの解析
  テキストの表示とスクロール


第11章 ドコモマーケットで売るためのアプリの作り方
 ……写真加工アプリを作る
 11.1 本格的なi アプリDX「ウゴピク」の概要
  アプリの仕様概要
  ADF 設定
 11.2 画面遷移フローとフォーム(画面)を作る
  画面遷移フローを作る
  フォーム(画面)を作る
 11.3 ドコモマーケット(i モード)サービスガイドラインに沿った
  アプリの画面構成と流れ
 11.4 課金処理の実装
  課金システム
  課金処理の流れ
  課金ライブラリとプログラム
  「ストア販売」で「個別課金」と「月額課金」をチェックする
  「アプリ内販売」で「個別課金」を実装する
  「アプリ内販売」で「月額課金」をチェックする
  課金処理(UgopicPayment クラス)の作成
  課金API を使用する場合のADF 設定
  課金アプリのデバッグ
 11.5 プログラムする
  FormTop クラス(起動画面フォーム)の作成
  FormTitle クラス(「タイトル」フォーム)の作成
  FormPlay クラス(「ウゴピク再生」フォーム)の作成
  FormBookEdit クラス(「ブック作成」フォーム)の作成
  FormInputText クラス(「写真のタイトルテキスト」フォーム)の作成
  FormPictureSpeed クラス(「写真の表示時間設定」フォーム)の作成
  FormPictureEdit クラス(「写真編集」フォーム)の作成
  FormItemImageList クラス(「アイテムイメージリスト」フォーム)の作成
  FormPictureEditImagePut クラス(「イメージ焼き込み」フォーム)の作成
  FormSupport クラス(「サポート」フォーム)の作成
  FormManual クラス(「マニュアル」フォーム)の作成
  UgopicData クラスの作成
  UgopicBookData クラスの作成
  UgoEffect クラスの作成
  UgopicParts クラスの作成
  XPictureTools クラスの改良
 11.6 まとめ


第12章 ドコモマーケット(i モード)でのアプリ販売
 12.1 ドコモマーケット(i モード)へのアプリ公開申請
  「アプリ詳細」の登録
  アプリのバイナリアップロード
  「公開申請」と関連書類
 12.2 アプリ公開申請後
  アプリの公開申請が「否認」されたら……

あとがき
謝辞
索引


・正誤表

本書にて下記の表記に誤りがありましたので訂正させていただきます。

第11章
367ページ 「タイトル」フォーム(FormTitle)のボタンプロパティ指定が一部に誤りがありました。

【誤】
名前 “kbutton1”
カーソル移動先(右キー) “kbutton3”
カーソル移動先(右キー) “kbutton2”
カーソル移動先(右キー) “kbutton3”
カーソル移動先(右キー) “kbutton5”

名前 “kbutton2”
カーソル移動先(右キー) “kbutton4”
カーソル移動先(右キー) “kbutton5”
カーソル移動先(右キー) “kbutton4”
カーソル移動先(右キー) “kbutton1”

名前 “kbutton3”
カーソル移動先(右キー) “kbutton1”
カーソル移動先(右キー) “kbutton4”
カーソル移動先(右キー) “kbutton1”
カーソル移動先(右キー) “kbutton5”

名前 “kbutton4”
カーソル移動先(右キー) “kbutton3”
カーソル移動先(右キー) “kbutton2”
カーソル移動先(右キー) “kbutton3”
カーソル移動先(右キー) “kbutton5”

名前 “kbutton5”
カーソル移動先(右キー) “kbutton4”
カーソル移動先(右キー) “kbutton1”
カーソル移動先(右キー) “kbutton2”
カーソル移動先(右キー) “kbutton2”

【正】
名前 “kbutton1”
カーソル移動先(右キー) “kbutton3”
カーソル移動先(下キー) “kbutton2”
カーソル移動先(左キー) “kbutton3”
カーソル移動先(上キー) “kbutton5”

名前 “kbutton2”
カーソル移動先(右キー) “kbutton4”
カーソル移動先(下キー) “kbutton5”
カーソル移動先(左キー) “kbutton4”
カーソル移動先(上キー) “kbutton1”

名前 “kbutton3”
カーソル移動先(右キー) “kbutton1”
カーソル移動先(下キー) “kbutton4”
カーソル移動先(右キー) “kbutton1”
カーソル移動先(上キー) “kbutton5”

名前 “kbutton4”
カーソル移動先(右キー) “kbutton3”
カーソル移動先(下キー) “kbutton2”
カーソル移動先(左キー) “kbutton3”
カーソル移動先(上キー) “kbutton5”

名前 “kbutton5”
カーソル移動先(右キー) “kbutton4”
カーソル移動先(下キー) “kbutton1”
カーソル移動先(左キー) “kbutton2”
カーソル移動先(上キー) “kbutton2”
415ページ イメージリスト表示のソースコードにおいて一部に誤りがありました。

【誤】
switch(itemType) {
 case UgopicParts.ITEMTYPE_STAMP :
  kimagelist1.setShowSize(4); kimagelist1.setShowRowSize(2); break;
 case UgopicParts.ITEMTYPE_UGOSTAMP :
  kimagelist1.setShowSize(4); kimagelist1.setShowRowSize(2); break;
 case UgopicParts.ITEMTYPE_FRAME :
  kimagelist1.setShowSize(3); kimagelist1.setShowRowSize(1); break;
 case UgopicParts.ITEMTYPE_UGOFRAME :
  kimagelist1.setShowSize(3); kimagelist1.setShowRowSize(1); break;
}

【正】
switch(itemType) {
 case UgopicParts.ITEMTYPE_STAMP :
  kimagelist1.setShowSize(4); kimagelist1.setShowRowSize(2); break;
 case UgopicParts.ITEMTYPE_UGOSTAMP :
  kimagelist1.setShowSize(4); kimagelist1.setShowRowSize(2); break;
 case UgopicParts.ITEMTYPE_FRAME :
  kimagelist1.setShowSize(3); kimagelist1.setShowRowSize(1);
  kimagelist1.setImageWidth(480 / 3); kimagelist1.setImageHeight(200); break;
case UgopicParts.ITEMTYPE_UGOFRAME :
  kimagelist1.setShowSize(3); kimagelist1.setShowRowSize(1);
  kimagelist1.setImageWidth(480 / 3); kimagelist1.setImageHeight(200); break;
}


・ サポート

ソフトバンククリエイティブ サポートページ
http://isbn.sbcr.jp/63128/

O-Planningホームページ
O-Planning

O-Planningサポートメール