2011年7月31日日曜日

androidアプリ開発日記(2011/07/31)

今日はファイル入出力の問題から.

暗号ファイル複合化の前にこんな問題があったので,まずは予定を変更してこの問題を取り上げる.

Androidでは,アプリごとに出力が可能なディレクトリが定められている.
例として,作るアプリのメインパッケージ名がcom.blogger.www.mainであった場合,ファイル操作が行えるのは,
"/data/data/com.blogger.www.main/"内となる.
ファイルを指定するときに毎回この部分を書くのがめんどくさい・・・という人には次のようなメソッドがActivityクラスに用意されている.
openFileInput(String filename)
openFileOutout(String filename, int mode)
これでpm4a用のファイル読み込みをクリアできたような気もする.

そして,複合化について...
android sdkにもCipherクラスがあった.
これで複合化できるぜー・・・とはならなかった.
Javaでは提供されている暗号化アルゴリズムがandroidでは提供されていないものがあるではないですか.そしてPC版が使っているものは見事にそれなんです.
何とかできないかなぁ.
そもそも本当に提供させていないのかも良く分かっていない.
どんな暗号化アルゴリズムが提供されているかまとめられていないためにどうしようも無くなっている・・・.
採用している暗号化方式を変更するのが一番楽な道ではあるな.
とりあえず使用可能な暗号化方式を知りたい....

ラベル:

androidアプリ開発日記(2011/07/30)

一応xmlのオブジェクト化はできたような気がする. 
正確に読み込めているかの確認は必要だけど. 
今回はとりあえずrootディレクトリに登録されているサービスを表示してみた.(結果は別図) 




あと,サービスが選択されたときに, 
中の要素を表示するテストもしてみた. 
そこで一騒動.要素を表示するのにはTableLayoutっていう 
Table表示するためのレイアウト使おうとしてるけど, 
これ各要素が変更のために選択されたことをどうやって認識するんだってばよ...!? 
※この問題の解決に1時間かけてしまいました. 
結論としては,各要素を生成する際にできるViewインスタンスそれぞれに 
OnClickListenerなり何なりをぶち込んでやればいいb 
無駄なところに時間を使った今日でした.(いつもそうだけどOTL) 

ディレクトリ移動テストができるようになったら今日のところは寝るんだ.... 

今回載せたテストでは暗号化されていないxmlファイルを使ったので, 
次は複合化がきちんとなされるかどうかを確かめる必要もあるねぇ. 

うまく複合化できますように... 
to be continued......

ラベル:

androidアプリ開発日記(2011/07/27)

今日は飲み会でしたとさ. 

さて,今回製作したいアプリはどうゆー風に実装するにしても最低1度はxmlファイルの解析を行う必要がある. 
この解析処理はPC版でも同様だったので,「コピればえぇわ」とか思っていたら・・・ 
android jdkではxml解析用ライブラリjaxbが使え・・・ない・・・だと!? 

こりゃ,今回のアプリ専用xml解析ライブラリを作らなくてはならないフラグが確立されてしまったねぇ. 
一応xmlを読み込む機能はあるようなのでさらに追加の機能を持ったものを作らねば. 
ということで,少しわき道にそれそうな今日この頃です.

ラベル:

androidアプリ開発日記(2011/07/27)

えー・・・.深夜です. 

ということで,今日はさらっとね. 
今回作るandroidアプリ(以後PM4A)ではSQLiteとか使ってデータをある程度整形して持っておこうかと思ってたけど,これって本末転倒な気がしてきている. 
同種のPCアプリではデータは極力難読化するために暗号化している. 

比較的重要なデータに対して「ある程度整形して持っておく」てのは難読化できてないよね. 
ということでしょうがないから処理の流れはPC版に寄せるか. 
ただ,androidアプリでObjectって渡せたかあんまり覚えてない・・・確かできたはず. 
これができれば後はXMLをオブジェクトに上手く落とせるかが問題だ. 
こればっかりは試行錯誤を覚悟するしかないかもしれないなぁ.(ー_ー) 

ラベル:

androidアプリ開発日記(2011/07/24)

とりあえず現行PC用アプリと同期できるアプリを1つ作りたい. 
ただ問題はデータのやり取りをどうするべきかというところ. 

PC用アプリ間でのデータ同期はファイルをサーバに一度置くという方法で 
何とかお茶を濁したけど,androidアプリでも同じことを行うには少し問題が残る. 
主に通信時の認証部分. 

PC版は通信時の認証に公開鍵暗号方式を採用しているけど, 
どうやってandroidアプリにそこで使ってる鍵を渡そうか... 
アプリ側で生成するにしてもどうやってサーバに秘密鍵を渡そうか... 
サーバアクセスにID+Passwordを使うのを何となく避けて通りたいと思ってしまっているので, 
最近はいつもこの辺で思考が停止するっタイ. 

まずはココを放置して外堀を埋めながら作ったほうが良さそうだにゃ. 

うぅ・・・最近PCとかスマホとかのアプリ開発計画だけが溜まっていくなぁ. 
消化不良が尋常じゃないorz 


もうきっとmixiは自分の中で8割りアプリ開発メモ(愚痴)になっていくんだろうな.

ラベル: