Hatena::ブログ(Diary)

Hacking My Way 〜 itogのhack日記 RSSフィード Twitter

2014-12-08

Genymotionがadbで認識されない場合の対処

Genymotionでadbで以下エラーが出てデバイスが認識されない場合があります。

$ adb devices

adb server is out of date. killing...

cannot bind 'tcp:5037'

ADB server didn't ACK

adbでデバイス認識しない場合にまず試すkill-server, start-serverをしても同様のエラー。

$adb kill-server

$ adb start-server

adb server is out of date. killing...

cannot bind 'tcp:5037'

ADB server didn't ACK

これはadbが古いために起こるエラーです。Genymotionの設定によって2パターンの原因、解決方法があるので設定画面からADBタブを選択します。

f:id:itog:20141208153554p:image

1.Genymotionのadbが古い

上記設定画面で、「Use Genymotion Android tools」にチェックが入っている場合、genymotionに同梱されているadbが古いので、Genymotionを最新の2.3.1以降にするか、/Applications/Genymotion.app/Contents/MacOS/tools/adbを最新のものに差し替えます。

以下のようにシンボリックリンクを張っておくのが良いです。

$ cd /Applications/Genymotion.app/Contents/MacOS/tools/

$ mv adb adb.bak

$ ln -s $SDK_ROOT/platform-tools/adb adb

2. 参照しているadbが古い

「Use custom Android SDK tools」にチェックが入っている場合、設定したパスにおけるadbが古い場合があります。パスが正しいか確認し、SDK ManagerでAndroid SDK toolsを最新にしましょう。


以上です。

2014-11-26

マスターパスワードの作り方

パスワードマネージャー「1password」を公開しているagilebitsのブログに、マスターパスワードについての記事が書かれていたので紹介します。

https://blog.agilebits.com/2011/06/21/toward-better-master-passwords/

以下のポイントを忘れずに読んでください。

  • 完璧を求めずに、より良くする方法を探す
  • 過去の方法は通用しない
  • タイプ出来ない、覚えておけないマスターパスワードは最悪だ、ということを忘れないで!

マスターパスワードは変えない!

パスワードを定期的に変えることが良いと言われているが、マスターパスワードは強力なものを設定して二度と変えなのが理想です。

変えるべきパスワードとは

短すぎるパスワードや"123456"のようなものは論外として、"Sally4th

"や"Molly&Petty2"も十分危険です。

パスワードを変えた後は

マスターパスワードは絶対に忘れないように体で覚えましょう。1passwordのオートロックを5分〜10分にすればなんどもパスワードを入力することになって面倒だけど覚えられるでしょう。

また、マスターパスワードを変えた時は、パスワードを紙に書き出して財布に入れておきましょう。良くないと言われることも多いけどここでも進められている→https://www.schneier.com/blog/archives/2005/06/write_down_your.html


パスワード作成の手順

ブログではこの後強いパスワードを作るための手順を紹介してますが、以下ざっくりと紹介します。

クラックする側は人々がパスワードにどんな文字列を使うのか統計的に知っています。以下の原則を頭に入れておきましょう。

パスワードの強さはパスワードの長さではなく、同じ方法でどれだけ多くの別の結果を得られるかどうかだ。

"Ihave2dogs:Molly&Petty"というパスワードを思いついたとして、これをより強くする方法を考えて行きましょう。

スペースを使う

1passwordのマスターパスワードはスペースを使えるのでスペースをつかいましょう。"I have 2 dogs: Molly & Petty"

本当のことを言わない

本当のことより嘘のほうがより多くのパターンがある。嘘をつこう。”I have 3 bats: Larry, Moe & Curly"

意味が通らないようにする

意味が通る文章よりも、意味が通らない文章のほうがより多くのパターンが有る。”I have 35 bats: Larry, Moe & Curly"

予測されるフレーズを使わない

名詞をリストアップするときに”A”が来たらあとに",B and C"と来るのは当たり前すぎる。”I have 35 bats: Larry & Amy”は短いにもかかわらず”I have 35 bats: Larry, Moe & Curly”よりも強力です。

その他、秘密や個人的に意味のある言葉を使わない。forを4にしたりするのは知れ渡ってるので意味ない。サイコロを使ってランダム性を取り入れるなど。

以上です。

2014-11-25

Ringが家にやってきた(開封編)

ちょっと前になりますが、kickstarterで支援したRingがうちにも届いたので開封レポートです。

佐川急便で届きました。

f:id:itog:20141109092810j:image

福岡から送られてきてるようです。

f:id:itog:20141109092840j:image

ダンボールを開けると白い箱が。

f:id:itog:20141109092914j:image

上面にはRingの文字が。

f:id:itog:20141109092939j:image

正面には「Shortcut everything」の文字。

f:id:itog:20141109092948j:image

裏にはRingのイメージ。

f:id:itog:20141109092956j:image

底面には各種情報が記載されている。技適もとってます。

f:id:itog:20141109122723j:image

箱を開けるとリング本体が。

f:id:itog:20141109093009j:image

その下には充電スタンド。

f:id:itog:20141109093045j:image

付属品。ステッカー。

f:id:itog:20141109093351j:image

USBケーブル。

f:id:itog:20141109093337j:image

サイズが合わない時につけるもの?

f:id:itog:20141109093359j:image

取説。

f:id:itog:20141109093237j:image

全部英語。

f:id:itog:20141109093250j:image

スタンドにRingを乗せたところ。

f:id:itog:20141109093112j:image

とりま開封まで。

2014-11-21

タオバイザーがやってきた

クラウドファンディングで支援した、Google Cardboard互換(?)の3DVRゴーグル「タオバイザー」が届いたので簡単にレポートします。

http://taovisor.com/

メール便で送られてきた。

f:id:itog:20141118080644j:image

テープの貼りかた雑w

f:id:itog:20141118082337j:image

レンズをテープで止めるのにはちょっと驚いた。

f:id:itog:20141118082806j:image

完成形。

f:id:itog:20141118084530j:image

感想

率直に言うと、Google Cardboardの後に出しているのに、Cardboardの良い部分を全く取り入れておらず、オリジナリティ溢れる設計になっているのには驚いた。スマホの取り付けは慣れるまで中で倒れまくった。レンズのテープの粘着力が弱くて、一度外れるともうちゃんと着かない感じ。

あと、Cardboardアプリを使った際にマグネットでの操作がNexus4でぜんぜん効かないんだけどそういうもの?

今後のアプリの進化に期待してます!

2014-11-20

Androidアプリを開くURLスキーム

AndroidアプリをChromeからURLスキームで起動できます。アプリがインストールされてない場合はマーケットを開くというスグレモノです。

フォーマットは以下のとおり。

intent:

HOST/URI-path // Optional host

#Intent;

package=[string];

action=[string];

category=[string];

component=[string];

scheme=[string];

end;

以下のリンクでアプリを開けます。

<a href="intent://[任意のホスト名]/#Intent;scheme=[スキーム名];package=[パッケージ名];end">アプリをゲット</a>

アプリ側ではAndroidManifest.xmlでschemeの設定をしておきます。

<intent-filter>
    <action android:name="android.intent.action.VIEW" />
    <category android:name="android.intent.category.DEFAULT" />
    <category android:name="android.intent.category.BROWSABLE" />
    <data android:scheme="[スキーム名]" />
</intent-filter>

参照

https://developer.chrome.com/multidevice/android/intents

あわせて読みたいブログパーツ テクノラティのお気に入りに追加する