ABC 2011 Summer 参加メモ
ABC 2011 Summerに参加してきました。
Android3.0/3.1/3.2 HoneycombとAPI解説(Android Developers' Club (デ部)のゆかいな仲間たち)
■ @cyberspacefarm
- Honeycombとは? - タブレット向けの新しいUIデザイン
- "horographic" UI design
- "lights out mode"
■ @korodroid
- 選択+コピペ機能の向上
- プレーンテキスト以外のコピペ可能
- Viewのドラッグ&ドロップも実装可能
- アプリの機能追加
- Browser
- タブ+Anonymous mode
- Quick Control
- Camera
- Gallery
- Contacts
- Calender
- Browser
- MTP/PTPのサポート
- ソフトキーボードの操作性改善
■ @yanzm
- New UI framework for creating great tablet apps
- Fragment - ActivityとViewの中間のようなもの
- GridView
- ListView
- StackView
- Fragment - ActivityとViewの中間のようなもの
- Compatibility with existing apps
- targetSDK or miniSDK を指定
- UI refinements
■ @sys1yagi
■ @95kugo
- 外部キーボード、マウスが接続可能
- Resizable Home screen widgets
- Expanded Recent App list
■ @chun_ryo
- Device Administration
- パスワードの有効期限
- パスワード履歴
- パスワードの複雑度
- MTP API
■ @vvakame
- Joysticks and USB Host
- ActivityにGenericMotionEventが追加
- 3.1からはUSBのHost側になれる
■ @bols_blue
- USB Accessory
- USBホストとの違い
- USBの知識不要
- File discriptorからストリームを作成するだけで通信できる
- USBホストとの違い
Linuxカーネルから紐解くAndroid(出村成和)
AndroidとLinuxカーネルの深い関係
- Ubuntu
- Linuxディストリビューションの一つ
- Linuxカーネル+GUI+アプリ+…
- Binder
- IPCの代替
- たとえばシェルのパイプ機能
- AIDL(Android Interface Definition Language) , Intentの根源
- より移植性を高めるために
- IPCの代替
- 電源管理
- 電力消費を極力抑える
- バッテリ容量が少ない
- アプリが動作していない → CPU停止へ移行
- 電力消費を極力抑える
- wakelocks
- Sleepを一定時間無効にしたい
- 例) アップデートのダウンロード中
- カーネルレベルで制御
- Sleepを一定時間無効にしたい
- メモリ管理(Android)
- 共有メモリ
- ashmem
- pmem
- メモリ管理
- Out of Memory Handling
- LowMemoryKiller
- 共有メモリ
-
- Ubuntuでは
- メモリ不足が発生
- OutOfMemoryHandlingが発動
- 起動したアプリをkill
- OOMはあまり発生しない
- 必要に応じてメモリ追加する
- それでも不足したならSwapエリアへ
- Ubuntuでは
- LowMemoryKiller
- アプリを起動するがメモリ不足
↓
-
- 優先度の低いアプリを強制終了
- 空いたメモリでアプリを起動
-
- 強制終了するアプリ
- メモリ残容量&優先度で決定
- 前面表示アプリ > 一時停止アプリ > content provider
- サービスは除外
- メモリ残容量&優先度で決定
- 強制終了するアプリ
-
- その基準は?
- /init.rcファイルに定義されている
- その基準は?
スマートフォンとウェブの今 10年に一度の変革期(伊藤直也)
- 1995〜2000
- Windows 95
- ポータル戦争 - Yahoo
- 2000〜2005
- 9・11 - Yahooが落ちた
- Googleの台頭
- blogブーム
- Cheap Revolution
- LAMP(オープンソースの台頭)
- 2004年 Ruby on Rails
- 2005年 Ajax
- "理想"より"実践"
- 「Webサイト」から「Webアプリケーションへ」
- 2005〜2010
- デバイス、メディア、グローバリゼーション 10年に一度の変化がやってきた
- 技術者としての誇りは、高度な技術を与えられることで得るのではなく、自らが使命とする問題領域をより高度な技術基盤で扱う世界に発展させることによって、自ら創造することができる。
ngCoreを用いたAndroid向けアプリケーション開発(岸 弘倫)
- 開発言語
- 実行環境
- 利点
- JavaScriptのみでゲームコードを記述可能
- Android環境での更新の容易性
- WebView/Canvasを使うより高パフォーマンス
- ソーシャル・課金機能を容易に利用可能
- 1つのコードでiOS/Android両環境で利用可能
- 開発環境(OS)
- JavaScriptベースでのゲーム開発
- 言語が何気に強力
- WWWとの連携の容易性
- デバッグが容易
- そこそこ速い
- NodeJS
- サーバサイドの開発にJavaScriptを使うための実装のうちの1つ
- ngCoreでは開発環境でのアプリbuildと実行環境へのリリース配信に利用
- 今後のngCore
- サーバサイドJavaScript
- クライアント・サーバ間で言語が違う(クライアント:JavaScript、サーバ:Perl)
- ngServerの提供予定
- サーバサイド開発もJavaScriptで行えるよう、Node.jsをベースとしたFW/ライブラリを提供
- サーバサイドJavaScript