AndroidでICカード NFCタグを読み込み

会社で、開発用にNexus7を買ったのは実は、NFCタグを読み込みたかったのです。
(他の理由もありますが。)

http://www.atmarkit.co.jp/ait/articles/1211/27/news072.html

からサンプルコードを頂き、コンパイル&GOとしてみたところ、
[2013-04-24 00:46:27 – NfcDiscover] No Launcher activity found!
[2013-04-24 00:46:27 – NfcDiscover] The launch will only sync the application package on the device!
え?どういうこと?しばし悩むこと小一時間。
通常は、
<intent-filter>
       <action android:name=”android.intent.action.MAIN” />
       <category android:name=”android.intent.category.LAUNCHER” />
</intent-filter>
ですが、これがなくてactivityが見つからないし、アイコンも登録されない。ただし設定-アプリのリスト中には存在している。

The launch will only sync the application package on the device!
=> ランチャーは、デバイスの同期で起動って書いてある。英文を読めば良かったのですね。
もう、一行目のNo Launcher で全て読み飛ばしてた!
そういうことです。これで問題なかったのです。

ということで、ICOCAカードをNexus7の背面上部に合わせると反応しました。

手持ちのICカードを調べてみると。
  1. ICOCA                       NfcF
  2. 京都ぷらすOSAKA PiTaPa NfcF
  3. JAL MILEAGE BANK        NfcF
  4. 運転免許証                 IsoDep/NfcB
となっていました。運転免許証 は3月に更新したばかりでICカードになってました。^^

Android Nexus7 で CrenaCam起動しない。

会社で、開発用にNexus7を入手したのでまず、CrenaCamを入れようとしたけど、Google Playで検索してもCrenaCam検索しても出てこないし、直接、URLで野良アプリ風でダウンロードしても、Androidで「お使いの端末はこのバージョンに対応していません。」のメッセージ。

デバッグしてみたところ、
Camera.open();
で落ちる。
http://stackoverflow.com/questions/16039670/android-camera-preview-code-not-working-with-nexus7-surfaceview-error
を見ると。

1)The problem is that Camera.open() will return null if there is no rear camera:
とのことで、フロントカメラは、Camera.open(0);にしろと記載があった。
で、Android 2.1だと、このパラメータは使えません。
Android 2.3.3だと、Camera.open(0);が使えた。

2)オートフォーカス設定で、
camera.setParametersを使ってセットしていますが、ここでも落ちる。
try{}chatch{}で逃げる。

以上でとりあえず、CrenaCamが起動しました。
ん~。Google本家のハードなのにいろいろと面倒です。

oracle プロシージャーのインポートに6時間がかかる

【メモ】

本番システムのoracleデータベースをexportしたものをimportしたのですが、プロシージャー以外はすんなりimportできましたが、プロシージャー(150本)は、6時間ぐらいかかってしまった。
(週末にimportを動かしたまま放置して、今朝みたら全部正常にimportできていた。)

プロシージャーがなぜこんなにも時間がかかったかみたところ、各プロシージャーの作成時間を調べてみると、大体30分区切りで一群のプロシージャができている模様。
どれがネックになっているか見てみるとどれも、データベースリンクを使用しているプロシージャーでした。

本番は、データベースリンク使っているのですが、今回開発しているところは、データベースリンクはいらないので、当然ありません。
データベースリンクが引けないので、多分タイムアウトするまで待っているものと思われます。

インポート時だけタイムアウトを短く設定できるか、精査不要のオプションがあればいいのに。。。

==== 追記 ====

インポートのCOMPILEオプションはデフォルト”Y”みたいですので、これを”N”でやれば
早かったかも。


imp system/xxxxxx file=abc.dmp fromuser=user1 touser=user2 ignore=y compile=n

Android 開発環境で IntelliJ にしてみた。

2年前 CrenaCam 0.9.2.5を作った時、Eclipseを使ってて、今回EclipseをバージョンアップしてAndroid 開発環境を最新にしようとしましたが、なんかユーザインターフェースがすごく変わってしまって、以前のProjectもimportしなくてはならず、なんとなくうまくProjectが操作できない。

そこで、 IntelliJというものがあり、こちらで紹介されていたので早速インストールしました。
http://www.devlog.alt-area.org/?p=1591

Import Projectで、以前作ったCrenaCamera-Release-0.9.2.5-flashをインポートして、RUNで動作しました。

署名付きAPKのエクスポートで、コマンドラインで作った以前のキーファイルを使えるか?
使えないと、Google Playに登録しているので違うアプリとして認識されてしまい困ったことになります。

Build->Generate Signed APKで作成します。以前作ったキーファイルを指定して
Key store password,Key alias,Key passwordの3つを入力してCameraCam.apkを作成します。
*↑の3つを忘れていたら同じデジタル署名は作成できません。

正式版のCrenaCamがインストールされた状態で、

C:Androidandroid-sdktools>adb install -r C:workandroidCrenaCamera-Release-0.9.2.5-flashCameraCam.apk
1033 KB/s (134450 bytes in 0.127s)
        pkg: /data/local/tmp/CameraCam.apk
Success

で、デジタル署名は前と同じ(当然か・・)でUPDATEできたのでこれからはIntelliJを使うことにします。

*ちなみに、Build->Generate Signed APKで新たに署名を作ってインストールすると、
C:Androidandroid-sdktools>adb install -r C:workandroidCrenaCamera-Release-0.9.2.5-flashCameraCam.apk
518 KB/s (134834 bytes in 0.254s)
        pkg: /data/local/tmp/CameraCam.apk
Failure [INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES]
のようなことになり失敗します。(この場合は元のアプリを削除すればインストールできます。)

ロジテック LVR-SD100BK ドライブレコーダ付けてみた

ヨドバシカメラのポイントが余ってたので、14000ポイントぐらいでロジテック LVR-SD100BKを買いました。
車に取り付けて試し撮りしました。

   ・外からみると野暮ったいですが。まあいいでしょう。
1)録画は、24秒毎にファイルが生成され2GバイトのSDカードにループで保存されていきます。
2)加速度センサー内蔵で、衝撃を受けた前後の記録も自動で保存される。
 *任意時点も手動でフラグボタンを押せば前後のデータが自動保存される。
3)シガーソケットにつないでいるので、エンジン始動で自動的に録画開始となる。
 機能的には申し分ないです。
 では、さっそく記録した動画をみてみましょう。レコードビューアソフトが付いてくるのでパソコンにAVIで保存して、24秒単位のAVIファイルをVirtualdubツールで結合しました。

  30万画素、フレームレートは15fpsです。記録・証拠用には15fpsで十分ですが、
  ドライブ 観光風の記録を残すなら、もう少し画素数とfpsが多い方が良いです。

交通系ICカードに、「京都ぷらす OSAKA PiTaPa」を持つことに

以前ICOCCAを持っていましたが、ここ2年ぐらい使っておらず、今回「京都ぷらす OSAKA PiTaPa」を持つことにしました。

通勤経路で乗ってる近鉄、京都の地下鉄で割引もあるし、ポイントも貯まるのでいいかなと。

そういえば、「 交通系ICカードの全国相互利用サービス」って3/23からなんですね。

あるプロジェクトの本番投入

今日は、あるプロジェクトの本番投入で、投入後の動作確認、打ち合わせの席上でユーザ皆さんから”分かりやすいユーザインターフェースですね”とお褒めの言葉を頂きました。またシステムフロー資料も良くできて分かりやすいと評価を頂きました。
(まあ、実際作成したのは私ではなくて、担当SE(女の子)なんですが)

作成時は、さりげないユーザインターフェース(ユーザが何も疑問を抱かないようなインターフェース)をこういうふうに作ってと、サンプルコードを担当SEに渡して、作ってくれました。(良くできています。ありがとです。)

また、システムフロー資料もユーザが理解でき、かつ作る側にも有用な資料を作ってくれました。
(何回の指導でここまでできたので、素養は十二分にあるかな。)

で、内心良くできてるなー、でもユーザさんは気が付かないだろうなーと思っていたのですが、なんと、”分かりやすいユーザインターフェースですね”と言って頂けたので嬉しかったです。

すごいですね、とかいいですねとか言われても、それほど感動しません、そういう仕様を満たすものを作ってるので。
こういうことは、過去たくさんのプロジェクトをやってきましたがそうは滅多に言われません。

ということで、ブログにメモ。。。

移転テスト

Bloggerにブログ移転しました。
[メモ]重要
BloggerのプロフィールをGoogle+ プロフィールに関連付けると、投稿者名が全て、本名に;;

・元に戻すには、
http://blog.m-y-p.com/2011/10/googlebloggergoogle.html
を参考に、
http://www.blogger.com/revert-profile.g で元に戻せた。 

・ウェブマスター ツールのサイトマップの追加は、
https://www.picolix.jp/blog/atom.xml?redirect=false&max-results=1000
というようにすればOK
記事数をmax-results=に指定する。

SMAIL v4.16にバージョンアップしました。

UTF8に変換して送信できるようにしました。エンコードは8bitだけの予定でしたが、他の、メールクライアントを見てみるとbase64やquoted printableも対応しているようなのでこれも対応しました。SMAIL
【バージョンアップ内容】
 1) キャラクターセット:UTF8,エンコード 8bit/base64/quoted printableで送信対応


-c: -c
キャラクターセット:ISO-2022-JP エンコード 7bit (-c未指定時のデフォルトです。)
-cj
キャラクターセット:ISO-2022-JP エンコード 7bit
-cu8
キャラクターセット:UTF8 エンコード 8bit
-cub
キャラクターセット:UTF8 エンコード base64
-cuq
キャラクターセット:UTF8 エンコード quoted printable

[参考]
http://www.atmarkit.co.jp/ait/articles/0104/10/news002.html
http://ja.wikipedia.org/wiki/Quoted-printable

なばなの里 ウィンターイルミネーション 見てきました。

混雑を予想して、3時前に到着し園内を散策。今の時期は、しだれ梅が開花しています。
ぽかぽかようきだったので、ベンチでうとうと。
ウィンターイルミネーションは、6時10分点灯でした。相当な混雑&花粉症による涙目とくしゃみ・・・