★つれづれ出張所♪

プログラム開発情報(主にAndroidと組み込み系)を発信していま~す。(*^_^*)

August 2013

OBDアプリをSUZUKI車に対応したのと、その顛末・・・

cm

どうもです。久しぶりのOBDネタです。
まずは、やっとの思いで OBD Info-san! ですが、日本車の超!独自プロトコルであるスズキK-LINEに対応しました!(パチパチ)

対応に協力して頂いた方々、本当に有り難うございました。m(_ _)m

そして、いままでスズキ車をお乗りの方で、OBDアプリが動作しなかった方は、試してみてくださいネ♪

※動作したら一報頂けると嬉しいです!
(調査したところ燃料残量は取得できなかった?ので航続可能距離等は表示されません)

今回のプロトコル追加のために、通信のメイン部をかなり改良しました。それで改良したって事は、既存の部分も影響があるかも?って事。なので出来てもかなり時間をかけてチェックし直しました。疲れました。(^_^;)

で、SUZUKI K-LINEと言うのは、通信方式が2タイプありまして、今回2つ同時に対応したつもりだったのですが、その片方が動作しないと連絡があったのです。(T_T)

そんなハズはない!?と連絡を何度もやりとりさせてもらい色々とデータを調べさせてもらったら、ELM327デバイスとの通信内容がなんか変!今までにないデータが取得されちゃってます。なんじゃこれ!?と思いつつ、とりあえず強制終了しない様に改良して、どうにかごまかしながら動作するようにしました。

でもまだ変!なんですよね。特に取得データーが化けちゃってる!!!

これは、もうプログラムでどうこうってレベルの話じゃないです。一見正常に見えるんですが、大量に通信が必要なSUZUKI K-LINEのせいか?良く分かりません。
それと同時にELM327デバイスとのペアリング要求が、頻繁に出てしまうとの報告もありました。これって最初に一回Androidの設定でペアリングを行えば、通常出ません。てか、自身一度もペアリング要求などされた事はありません。

それで、、、、、、、、、その協力して頂いた方が、ELM327デバイスを新たに購入してそれを試してくれたのです。

そしたら、何と!きちんと動作したみたいです。例のペアリング要求も出なくなったみたいです!

不思議です。。。

と言うか、一見正常に動作していると思われても実は、ELM327デバイスが壊れていた?って事があるみたいです。

よって、ペアリング要求が度々起こる方は、ELM327デバイスの方を疑ってみてください。

と言う事で、次回につづく・・・予定です (^^;)

PS.
今回のバージョン(Ver1.2.x.0)以降で、ELM327デバイスを使って車両との通信が出来ない方は、デバイスの故障を除くと、ほぼ間違いなくELM327チップで制御できない車両になります。
ですのでその場合は、清く諦めてください。こちら@アプリでは、どうしようも出来ません!ハード側(車両含む)の問題になります。(>_<)

Android開発のために何からはじめるべきか?おススメ書籍の紹介です!

盛大なタイトル!?ですが、これからAndroidの開発を始めてみたい方などいましたらご一読頂けると幸いです。

まず、WINGSプロジェクトさんのTwitterでレビューを書いたら書籍を頂けるとの事。

普段だったら応募することはほとんど無いのですが、タイトル『AndroidエンジニアのためのモダンJava』を見て、ちょっと気になったので応募したら、なんと!頂けました。(^^ゞ

DSCN0654DSCN0655

なぜ、このタイトルに牽かれたかと言うと自身Javaの勉強をきちんとやったことはありません(爆)!

それでJavaの事を良く知りたかったから。

まず、Androidの書籍は、初級者向けも含めたくさん見かけますが、そのどれもがJavaの事など詳しく載っていません。更にいままでも本屋などでJavaの書籍を立ち読みでw、パラパラっとみていますが、Androidとは関係なくJavaのみの書籍が多く「Androidに役立つ実践的なものが少ない?てか無い!」ので、まったく興味を抱く事無く購入しませんでした。

Androidの開発本を自身2冊ほど購入しましたが、まぁ役に立たなかったです。(相当入念に調べて買ったんですけどね)

その購入した書籍も含めAndroidの初心者向けと言われる書籍のほとんどは、開発用SDKをインストールすると一緒に導入されるサンプルの解説がほとんどです。
これは、自身が開発に慣れ始めた時に、新しいSDKの機能をどうやって使うんだ?と思った時にサンプルコードを眺めた時に愕然としたものです。まさかサンプルにあるものにちょっとした解説を入れてあるだけとは・・・ってビックリしました。(>_<)

そして思ったことがあります。
Androidの開発など知らなくてもサンプルをみて、その程度の開発&実行であれば、他の言語(C#やC++など)を良く知っていれば、まぁどうにかなると。
※何となく開発言語など、上っ面は同じようなものですw

実際には、色んなプログラムをやっているのもあり!?経験と勘?とネットの検索だけで、どうにかなっています。と言うか、なっていました!でしょうか?(^_^;)

ですがね、、、Androidのプログラムを本格的にやって行くと、どうしてもJavaの事についてぶち当たってきます。(細かい事が良く分からなくなり検索しても詳しくは出て来なかったりします)
そのためAndroidの開発を本格的にやるには、Javaを知ることが大事です。

そしてこの本です。
届いてからやっと!総448ページを全て読破しました。
いやぁ~内容が濃かったです。知らない事が多かったですよ。

ページ内のレイアウトも綺麗で、翻訳本にありがちな「ただテキストがだら~」っと書いてあるわけではなく、要所にイラストや解説などがありとっても見易いです。注釈もかなり見易く的確に書かれています。

ハッキリ言って今思えば、最初に購入したAndroidの解説書を購入&読むくらいだったら今回の『AndroidエンジニアのためのモダンJava』を読んで、SDKに入っているサンプルコードを眺めた方が、はるかに効率的に勉強できましたね。(^^;)
(※ある程度、プログラムを知っていると言う前提条件があるかもしれないけど・・・)

と言う事で、、、

 ①新しくAndroidの開発をする人は『Javaの事を知るため』
 ②今まで独学で開発してきた人は『自身の復習のため』

として、絶対に読むべきです。

久しぶりに見つけた超良本!おススメです!

『AndroidエンジニアのためのモダンJava』
技術評論社 ¥3200+税


   
売れてほしいので超宣伝します♪ (^^ゞ

【追伸】
通常動作をしているアプリの邪魔をするゴミアプリ(メーカーのプリインアプリにも見受けられるよねw)が減るようにAndroidの開発をしている人はみんな読んでほしいなぁ~(爆)