Androidを支える技術〈Ⅰ〉──60fpsを達成するモダンなGUIシステム(技術評論社) [電子書籍]
    • Androidを支える技術〈Ⅰ〉──60fpsを達成するモダンなGUIシステム(技術評論社) [電子書籍]

    • ¥3,960792 ゴールドポイント(20%還元)
    • すぐ読めます
100000086600742940

Androidを支える技術〈Ⅰ〉──60fpsを達成するモダンなGUIシステム(技術評論社) [電子書籍]

価格:¥3,960(税込)
ゴールドポイント:792 ゴールドポイント(20%還元)(¥792相当)
フォーマット:
専用電子書籍リーダアプリ「Doly」が必要です。無料ダウンロード
出版社:技術評論社
公開日: 2018年11月14日
すぐ読めます。
お取り扱い: のお取り扱い商品です。
ご確認事項:電子書籍リーダーアプリ「Doly」専用コンテンツ
こちらの商品は電子書籍版です

Androidを支える技術〈Ⅰ〉──60fpsを達成するモダンなGUIシステム(技術評論社) の 商品概要

  • Androidのインターナル解説書。
    根底に流れるモバイルプラットフォームとしての哲学を丁寧に扱い,
    最新版(7,N/Nougat)までカバー。

    第1巻となる本書では,プラットフォーム戦略の基幹部分を担う「GUIシステム」を主眼に置き,モバイルで主流となったAndroidの中枢を徹底解説。

    Androidという巨大ソフトウェアを題材にしつつ,アプリ開発者の方々に身近なテーマの問題設定で,ハードウェアからマルチタッチ/UIスレッド/Handler/Viewツリー/レイアウト/OpenGL ES/バイトコード実行環境まで,ツーランク上のクオリティの製品開発を可能にする技術知識を集約しました。

    広くモバイル,Web,デスクトップ,組み込み... 分野ごとの要素技術の壁を越え,さらなるパワーアップをお考えのエンジニアの方々へ,今こそ知っておきたいトピックを凝縮してお届けします。
  • 目次

    第1章 AndroidとGUIシステムの基礎知識 ──モバイルプラットフォームの今と基本を知るために
    1.1 Androidと最先端のモバイルGUIシステム ……高まり続ける期待と要求
    1.1.1 GUIシステムに対する要求は年々高まっている
    解像度の向上によるGUIの複雑化
    ユーザーの期待値が高まった
    開発者の期待値も高まった
    1.1.2 AndroidとGUIシステム
    AndroidのスマホはGUIのシステムである
    AndroidのGUIシステムの,アプリ開発者から見た特徴
    ❶マークアップによる記述と動的なツリーの操作
    ❷システムのかなりの部分がJavaで書かれている
    ❸IDEサポート
    ❹豊富なGUI部品と高機能なレイアウト
    ❺解像度非依存な記述
    ❻GPUなどを活かした高速な半透明処理やアニメーション
    1.1.3 Androidのバージョンの話
    Column 組み込みシステムとGUIのツールキット
    Column Microsoft OfficeはWPFで書かれていない
    Column Honeycomb ……Androidバージョン小話❶
    1.2 AndroidのGUIシステムの全体像と変遷 ……最初期からNougatまでの3区分
    1.2.1 AndroidのGUIシステムの全体像について
    1.2.2 GUIシステムの基礎Android初期からGBまで
    1.2.3 ハードウェアアクセラレーションを用いた描画処理 ……HoneycombからICSで完成
    1.2.4 AOTコンパイルとprofile guidedコンパイル ……LollipopからNougat現在まで
    1.2.5 描画処理の概要
    Viewツリーとレイアウト
    DisplayListの構築とOpenGL ES呼び出し
    Column デスクトップでのグラフィックスハードウェア活用とWindows Vista
    EGLによるグラフィックスバッファ指定とSurfaceFlingerによる合成
    描画処理のまとめ
    1.3 [速習]本書で登場するAndroidの構成要素のうち,GUIシステム以外の部分 ……Activity,ActivityThread,プロパティ,Binder,システムサービス
    1.3.1 Activity
    Activityとスタック
    裏に行ったActivityとkill ……表と裏のActivity
    Activityのライフサイクル
    1.3.2 ActivityThreadとmainメソッド
    1.3.3 プロパティによる設定の管理
    1.3.4 Binderとシステムサービス
    1.3.5 SystemServerとsystemユーザー
    Column Unixドメインソケットとsocketpair
    1.3.6 Zygoteによるアプリの開始
    1.3.7 init.rcから起動されるシステムサービスとデーモン達
    Column fork()システムコールとプロセスの生成
    init.rcファイルの今と昔 ……mount_all
    serviceセクション
    Column Androidの「サービス」 ……4つの「サービス」
    Column Flingerとは何か?
    Zygoteサービス
    installdサービス
    surfaceflingerサービス
    Column CupcakeとG1 Androidバージョン小話❷
    1.4 [入門]AndroidのGUIプログラミング ……View周辺の基本とカスタムのView
    1.4.1 HelloWorld
    レイアウトのリソースを用意
    レイアウトのリソースをsetContentView()で指定
    ボタンがタップされた時の処理を書く
    1.4.2 カスタムのView
    Column AndroidにUserControlはないの?
    onTouchEvent()でタッチに反応する
    invalidate()とHandlerで内容を動的に変える
    1.4.3 カスタムの属性を定義する
    1.4.4 AndroidのGUIプログラミング入門,まとめ
    1.5 まとめ
    Column SoCとSnapdragon
    第2章 タッチとマルチタッチ ──スマホがスマホであるために
    2.1 Androidでのマルチタッチ,基本のしくみ ……LinuxとAndroidの関係
    2.1.1 ViewのonTouchEvent()メソッドとMotionEvent
    2.1.2 マルチタッチ概要
    2.1.3 なぜInputManagerServiceを扱うのか?
    Column epoll()による複数のファイルディスクリプタ待ち
    2.2 LinuxのInputサブシステムとinput_event ……入出力機器に共通して使えるフレームワーク
    2.2.1 LinuxのInputサブシステムについて
    2.2.2 Linuxの入力関連デバイスドライバとinputモジュール
    シングルタッチの場合
    マルチタッチの場合
    2.2.3 eventのhandlerとeventファイル
    Column ioctl()システムコール
    2.3 Androidフレームワークでの入力イベントの基礎 ……InputManagerService
    2.3.1 InputManagerServiceとその構成要素
    2.4 InputReader ……InputManagerServiceの二大構成要素❶
    2.4.1 InputReaderの構成要素
    2.4.2 InputReaderのloopOnce()メソッドとRawEvent
    2.4.3 EventHubのgetEvents()メソッド
    getEvents()メソッド概要
    入力デバイスの追加や削除に応じた処理 ……Deviceオブジェクトの作成と削除
    input_eventを読み出した時の処理
    2.4.4 InputDeviceとInputMapper
    2.4.5 タッチの処理とMultiTouchInputMapper ……InputMapperの具体例として
    2.4.6 InputReaderまとめ
    2.5 InputDispatcherとInputChannel ……InputManagerServiceの二大構成要素❷と送信相手のクラス
    2.5.1 InputDispatcher概要
    Column DonutとXperia ……Androidバージョン小話❸
    2.5.2 ウィンドウとInputChannelの登録
    2.6 まとめ
    Column EclairとFroyo ……Androidバージョン小話❹
    第3章 UIスレッドとHandler ──LooperとHandlerが見えてくる
    3.1 UIスレッド ……UIスレッド周辺の構成要素を知る
    3.1.1 UIスレッドとは何か ……HandlerとUIスレッドの関わり
    UIスレッドは,GUIシステムの特別なスレッド ……UIスレッドでしか実行できないGUI関連操作がある
    3.1.2 UIスレッドでしかできないこと ……ラベルの変更やToastの表示など
    UIスレッド以外からUIスレッドでしかできない操作を実行したい場合 ……Handlerを用いたUIスレッドでの実行
    Column 一般的なGUIシステムにおけるUIスレッド
    3.1.3 UIスレッドではできないこと ……時間のかかる処理
    3.1.4 メッセージループとUIスレッド ……UIスレッドとLooperの関係
    3.1.5 AndroidにおけるUIスレッド周辺の構成要素 ……LooperとHandler
    3.2 Looper ……UIスレッドを実現するメッセージループ機構
    3.2.1 Looperの基本的な使い方 ……prepare()とloop()
    Column 「GUIのメッセージループ」以外のLooperの使われ方
    3.2.2 Looperとスレッドの関連付け ……myLooperとTLS
    Column TLS
    3.2.3 MessageQueueとnext()メソッド
    MessageQueueへのファイルディスクリプタ登録
    3.2.4 Looper.loop()では何を行っているのか?❶
    3.3 よくわかるHandler ……知っておきたい2つの役割,その実装
    3.3.1 [再入門]Handler ……2つの役割を分けて考えよう
    3.3.2 Handlerの使用例
    3.3.3 メッセージ送り先となるLooperの決定 ……Handlerのコンストラクタによる暗黙の関連付け
    Column 初期の傑作,Gingerbread ……Androidバージョン小話❺
    3.3.4 Handlerのpost()とMessageのenqueue
    3.3.5 Looper.loop()では何を行っているのか?❷ ……Handlerのpost()の時の挙動
    3.3.6 HandlerのdispatchMessage()① ……Runnableが呼ばれるケース
    3.3.7 HandlerのdispatchMessage()② ……handleMessage()が呼ばれるケース
    3.4 まとめ
    第4章 Viewのツリーとレイアウト ──GUIシステムの根幹

    第5章 OpenGL ESを用いたグラフィックスシステム ──DisplayListとハードウェアアクセラレーション

    第6章 OpenGL ES呼び出しが画面に描かれるまで ──ViewRootImplとSurfaceFlinger

    第7章 バイトコード実行環境 ──DalvikとART

Androidを支える技術〈Ⅰ〉──60fpsを達成するモダンなGUIシステム(技術評論社) の商品スペック

シリーズ名 WEB+DB PRESS plus
書店分類コード K800
Cコード 3055
出版社名 技術評論社
本文検索
他の技術評論社の電子書籍を探す
紙の本のISBN-13 9784774187594
ファイルサイズ 24.1MB
著者名 有野和真
著述名

    技術評論社 Androidを支える技術〈Ⅰ〉──60fpsを達成するモダンなGUIシステム(技術評論社) [電子書籍] に関するレビューとQ&A

    商品に関するご意見やご感想、購入者への質問をお待ちしています!