実機へアプリ転送 -Androidアプリ-

少し手こずったので走り書きメモ。

① USBドライバをダウンロード

マネージャーの、UpdataAllからUSBドライバを探してきます。

そのままでは、パッケージ になにも表示されないようなので、

Available packagesでツリーを展開(開くだけ)してから UpdataAllをすると、

無事、下から2番目にUSBドライバを見つけることが出来ます。

② ドライバのインストール
infファイルの [Google.NTx86] と [Google.NTamd64] セクションに

; HTC Desire
%CompositeAdbInterface% = USB_Install, USB\VID_0BB4&PID_0C87&MI_01
;
; Xperia X10
%SingleAdbInterface% = USB_Install, USB\VID_0FCE&PID_D12E
%CompositeAdbInterface% = USB_Install, USB\VID_0FCE&PID_D12E&MI_01
;
; HTC Dream
%SingleAdbInterface%        = USB_Install, USB\VID_0BB4&PID_0C01
%CompositeAdbInterface%     = USB_Install, USB\VID_0BB4&PID_0C02&MI_01
%SingleBootLoaderInterface% = USB_Install, USB\VID_0BB4&PID_0FFF
; HTC Magic
%CompositeAdbInterface%     = USB_Install, USB\VID_0BB4&PID_0C03&MI_01
;
;Moto Sholes
%SingleAdbInterface%        = USB_Install, USB\VID_22B8&PID_41DB
%CompositeAdbInterface%     = USB_Install, USB\VID_22B8&PID_41DB&MI_01
;
;Google NexusOne
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_0D02
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_0D02&MI_01
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_4E11
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4E12&MI_01

を追記。

そして、デバイスマネージャからドライバインストール。
USB Driver4 はインストール出来ませんでしたが、USB Driver1.6で上手くいきました。

③ adb devices コマンドで実機接続確認
接続が上手くいってれば、List of devices attached の下にデバイス名が表示されます。

④ 転送
eclipseの 実行(R) – 実行(R) を押すと次のような画面が現れます。
OKで転送されます。コンソールタブで状況が確認できます。
※現れない場合は、実行(R) – 実行構成(N) – Androidアプリケーション – (プロジェクト名) – ターゲット で 手操作に設定します。

基本的な動作 -android開発-

基本的な動きの流れが分かったのでメモメモ。

SDKに付いてくるサンプルプログラムを見てみると、必ずインポートしてるライブラリがあります。
import android.app.Activity;

そして、どのアプリケーションも必ず同じ始まり方をしているようです。

@Override
public void onCreate(Bundle savedInstanceState) {…}

なんじゃらホイって調べると、Androidアプリケーションの基本的な流れが詳しく解説してあるページが見つかります。↓
androidパッケージが一覧になっているサイト(AndroidDevelopers)で捜すと、
android.app.Activity Class Overviewが見つかります。
XMLタグの種類も書かれています。

@ITでは流れが分かりやすく解説してあるサイトが見つかりました。
Androidアプリ作成の基本“Activity”とは何か?

非常に分かりやすいサンプルが置いてあるので貼らせていただきますm。(コピペじゃないよ!)

package com.example.android.lifecycle;

import android.app.Activity;
import android.os.Bundle;
import android.widget.Toast;

public class ActivityLifecycle extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        Toast.makeText(this, "onCreate()", Toast.LENGTH_SHORT).show();
    }
  
    @Override
    protected void onStart() {
        super.onStart();
        Toast.makeText(this, "onStart()", Toast.LENGTH_SHORT).show();
    }

    @Override
    protected void onRestart() {
        super.onRestart();
        Toast.makeText(this, "onRestart()", Toast.LENGTH_SHORT).show();
    }

    @Override
    protected void onResume() {
        super.onResume();
        Toast.makeText(this, "onResume()", Toast.LENGTH_SHORT).show();
    }

    @Override
    protected void onPause() {
        super.onPause();
        Toast.makeText(this, "onPause()", Toast.LENGTH_SHORT).show();
    }

    @Override
    protected void onStop() {
        super.onStop();
        Toast.makeText(this, "onStop()", Toast.LENGTH_SHORT).show();
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        Toast.makeText(this, "onDestroy()", Toast.LENGTH_SHORT).show();
    }
}

他のClassを見てみると、ほとんどの動作がオーバーライドされていて、基本動作は全てイベントドリブンな事も分かりました。

①基本的なフローをオーバーライド
②中でオブジェクトを作成・設定
③オブジェクトの中でさらにオーバーライド
みたいな感じで出来そう。

onCreate自体どうやって呼ばれてるのとか凄く気になる。。。

スマートフォンクリーナー

携帯のストラップ型のクリーナーは以前から多くありますが、

最近はスマートフォンなどの、画面むき出しでタッチ式の携帯が多くなってきていると思います。

気になるのが指紋たち。

そこで、、、ズボンのポッケを利用したクリーナー。

携帯は多くの人がポケットから頻繁に出したり しまったり すると思います。

このポッケ型のクリーナーなら、ポッケにポッケとして、セットしておくだけで、おk。

使い方は簡単。 出し入れするたびに画面が綺麗になります。

httpプロキシとhttpsプロキシの違い

httpsプロキシはリクエストも暗号化してくれてると思いきや調べた結果、違ったのでメモメモ。

httpsプロキシはSSL同様に、Hypertext Transfer Protocol(http)の中身だけ暗号化してくれる様子。
つまり、
httpプロキシでは   example.com/xxx.jpg にアクセスしたことが分かり、xxx.jpgの中身は分かります
httpsプロキシでは example.com/xxx.jpg にアクセスしたことが分かり、xxx.jpgの中身は暗号化されます

by Wireshark