2010年7月14日水曜日

取り急ぎ

いじってたら知らぬ間に測位してた(*´д`)ハァハァ

位置情報も取れてるっぽ。




googleマップ

をぉwまさに現在地(笑)


とりあえずやらなきゃならないこと。
・GPS設定のUIをなんとかする
→自家ビルドSetting.apkに置き換え?
→wifiの挙動が怪しい。
・GPS初期化処理(Android側)をきちんと入れる
→/dev/ttyUSB0 の初期化
→GPS ONの正しい処理手順を調べる
→USBのホットプラグが検出できないか?
・GPSレシーバーの初期化処理
→シリアルポートへ発行するコマンドを調べる。
→レシーバーチップごとに違うので、どこでデバイス差を吸収するか?
→レシーバーチップ独自の機能(測位アルゴリズム)などは使えないか?

山盛りじゃまいか(笑)

7 件のコメント:

  1. おおー、やりましたね
    おめでとうございます
    Androidって
    メーカーが用意しないといけないミドルウェアが多いってことなんでしょうかね

    返信削除
  2. oshikojiさん、おはようございます。
    なんとか動いてます。
    ぐぐるまっぷでウォーキングナビもできました(笑)

    デバイスに必要なgoogle準拠のAPIとのI/Fを用意するかどうかはメーカーやベンダーによる、ってことでしょうね。
    設定項目を隠すのも、未対応のデバイスに対して必要ないからでしょう。

    本来は携帯OSなので内蔵された固定デバイスが動けばいいと言う発想があるように思います。
    これはこれで、余計なAPI中間層を作らない&開発コストが安く済むという点ではいいのでしょう。
    メーカーはUSBで拡張とか、後付でどうとか、あまり考えないですよね。
    拡張デバイスのメーカーもドライバやライブラリを用意してくれないから、その部分は自力で何とかするしかない。。。まさに現状(笑)。

    逆に言えば、rootが取れて開発リソースが用意できれば、デバイスに近いところでかなりの自由度でハック可能って事です。
    実際、カーネルはLinuxですから、色んな仕組みを入れ込むことは可能だと思いますね。

    ま、その前にメモリが足りなくなるんですけどね(笑)

    返信削除
  3. AndroidってGPSを各アプリが制御してないですか?
    あるアプリでは測位できてるのに他のアプリではできていない、みたいなことが多い気がします。
    GPSとか、電話基地局とか無線LANから現在位置を提供するバックグラウンドサービスを用意してくれたら良いのにねって思います

    返信削除
  4. えーっと、
    GPSデバイスとAPIの間にバックグランドで動いてるスレッドがあります。
    こいつは、GPSから駄々流れのNMEAメッセージをひたすら拾って、位置情報や時刻に変えます。
    ですので、GPSがつながってる間、このスレッドは存在して仕事してます。

    アプリ側はLocationProviderを使って位置情報を取得するんですが、このProviderとGPSスレッド間で位置情報をやり取りしてアプリ側に返します。
    LocationProviderにはGPSとWifiからの位置情報を処理する仕組みがありますので、おっしゃるようなサービスは「一応」搭載されてるわけです。

    ただ、実処理スレッド~APIまでの実装がベンダー独自の部分が多いので不安定だったりするかもです。
    まさに、私が作業してるのもスレッドを駆動する部分ですね。

    返信削除
  5. ほほう~なるほど勉強になります。
    最近x86用をいじっているので、この際ソースツリーをダウンロードしてみようかなあ

    返信削除
  6. おめでとうございます(^^
    すばらしいですね。
    あとは、私のような一般レベルまでレベルを下げていただけたら助かります(笑
    今日は甲子園まで雨見に行っただけで落ち込んでたので明るい話題です(笑

    なんやかんやで乱立しちゃって収拾つかなくなった感のある他のアンドロイド端末。
    今となってはM001はいいマシンに思えてきましたよ(^^;

    返信削除
  7. oshikojiさん

    Androidのビルド自体は、環境さえ間違って無ければあっけなく終わりますね。
    そのまま、エミュレータで動作するので、M001に送る前に確認したりしてます。
    私も初めて触ってるので、作法とか仕組みとか分からないところ多数です(^_^;


    ローテクさん

    ありゃ、雨で流れましたか(´・ω・`)
    夏の高校野球が始まる前に、ホームで勝ち貯めたいところですねー(・∀・)

    アンドロ端末には期待してるんですけどね。
    質が悪いものしか出てこない中華タブレット恐るべしです(笑)
    貧弱と言われながらも、それなりに安定してるM001はかなりマシなのかも。
    今更、偽スペックの端末買ってほげる気にもならないし(つД`)

    返信削除