それぞれの資料についての補足
Enterprise
3.0から追加されたパスワードに対するポリシー強化は、様々なデスクトップPCで実現されているよくあるものが追加されてます。
しかし、これは使い方を間違えると(極端に厳しいポリシーにすると)、普通の人が記憶出来る限界を越えてしまって、パスワードを紙にメモしておくような使い方をされてしまうので、バランスをよく考えてシステム設計をしなければなりません。*1
また、Device Administration は基本的にはフレームワークが提供されているだけなので、それを使って、ポリシーに違反したときにどういう制限をかけるかについては(端末をロックする、データを消去するなど含む)、あくまでも管理アプリケーション開発者に委ねられていることを注意しないといけません。
制限が緩すぎてもいけないし、厳しすぎてもいけない、抜け道があってもいけない。アプリやシステムの全体設計をユーザビリティも確保しつつしっかりと行うこと、穴が無いように実装することがともに重要です。
MTP
サンプルコードをgithub にて公開しております(au版 XOOMとiPhone4を接続して動作確認済みです)。
GitHub - ynakanishi/Honeycomb-MTP-sample: Do slide show JPEG photos in a digital camera
サンプルコードは、スライドで示したコード断片と同じような手順ではありますが、注意として示した「UIスレッドでMTPオブジェクト取得するな」をちゃんと実践するようにしてあります(AsyncTaskを用いてバックグラウンド処理にてMTPオブジェクト処理を実施)。
このアプリでやっていることは以下のことだけです。
- MTP対応デバイスが接続されたら、アプリを起動する
- インテントからUSBデバイスを取得して、MTP処理の下準備を行う
- MTPデバイスからのオブジェクト取得処理をAsyncTaskに投げる
- オブジェクトを探索し、JPEG画像オブジェクトが見つかったらBitmapを生成した後、UIスレッドに表示処理を依頼する。
これをベースに少しいじれば、サムネイル一覧表示や、選択してからの全体画像表示、ファイルの取得なども作成できるかと思います。
あと、HoneycombアプリなのでFragmentを申し訳程度に使っています :-)
資料でも少しだけ触れていますが、APIによる支援は減りますが、JPEG画像以外のファイルも取り扱うことが可能です。動画対応デジカメと接続して、タブレットの大画面で動画再生を行うといったアプリも書けるかもしれません。
*1:ぶっちゃけ、極端に厳しいセキュリティポリシーの会社とか勤めたく無いですよね:-P