2013年06月16日

Googleアカウントを消されてしまった話

先日、普段使っていたGoogleアカウントを突然消されてしまいました。
使っていたサービスは、メール、カレンダー、リーダー、Google+、Android Developer、ドライブ、Play storeなどなど。
もう生活の一部でした。

変だな、と思ったのは5/31の朝のことでした。
使っていたAndroid端末でGoogle関連のアプリが使用できなくなっていたのです。
ブラウザからログインしてみると、「削除」されたことが書かれていました。
しかも理由は「違法な性的コンテンツが含まれるため」とのことでした。

心当たりがなかったので、「削除が間違いだと思う人用のリンク」から問い合わせを行おうと考えました。
しかし、そのページがエラーで利用できませんでした。
やむを得ず、Googleに電話をかけてみました。

もうあまり覚えていないのですが、自動応答の音声にしたがってボタンを押していくと、電話がつながりました。
女性でした。Googleもサポート的な人を雇っているのでしょうか。
アカウントが消されたことは間違いではないかということ、問い合わせフォームが利用できなかったことを伝えたところ、担当者に転送するから問い合わせフォームのエラー画面をキャプチャしてメールを送れとメールアドレスを教えられました。
キャプチャを撮り、アカウント削除が間違いのはずだとメールを書き、送信しました。

その日の夜、ふと思い出しました。
「違法な性的コンテンツ」に該当するかもしれないデータがあったことに。
それは息子(4際)がちんちんを丸出しにしていた写真でした。

アカウントが削除された数日前、息子が「ちんちんが痛い」と言っていたため、ズボンとパンツを脱がせて、様子を見ていました。
その日は暑く、多分蒸れたのでしょう。赤くなっていました。
さて、その素人診察の後、息子は全然パンツを履きませんでした。
何が可笑しかったのかちんちんを丸出しにしたままケタケタ笑っていたのです。
その姿が面白かったので、ふざけ半分つい写真を撮ってしまいました。

これだけなら削除はされていなかったでしょう。
自分がまずかった(と思っている)のは、Google+のインスタントアップロード機能がONになっていたことです。
意識せず息子のちんちん丸出し画像がインターネット上にアップロードされてしまっていたのです。
公開はしていなかったので、単なるバックアップ程度にしか考えていなかったのですが、それすらもまずかった可能性があります。
「児童ポルノ」としてGoogleに認識されてしまったのではないでしょうか。

数日待ちましたが、Googleからの返信はありませんでした。6/4でした。
修正されたかも、と再度問い合わせフォームを開いてみました。別のブラウザでアクセスしてみたところ、エラーなく使えることがわかりました。
もしかしたら、初日に発生していたエラーもブラウザが原因だったのかも知れませんね。
問い合わせフォームからも問い合わせを行いました。

問い合わせフォームからの問い合わせに対しては、数時間で返信がありました。
内容は以下のとおり。自動応答でしょうか。

> お使いのアカウントは Google の利用規約に違反したため無効となりました。以後ア
> カウントに再びアクセスできるようにすることはできません。Google のポリシー
> と、アクセス制限やアカウント無効化につながる規約違反の種類について詳しくは、
> 以下のページをご覧ください。
> http://www.google.com/intl/ja/+/policy/content.html

このメールに対して返信をしました。
きっと返信はこないだろうと期待はしていませんでした。
実際に10日ほど経過しましたが、返信はありません。

なお、アカウントは削除されましたが、いくつかのデータはサルベージできました。
・メール → Sparrowがローカルに保存してくれていた。
・カレンダー → すべてではないが、別の人と共有していたデータは残った。
・写真 → Google+以外にもDropBoxなどでもSyncしていたので問題なかった。
・リーダー → リーダークライアントアプリに残っていた。
・Androidアプリ → Androidに設定したアカウントを消すまでは使えるようだ。

Googleドライブのデータは残念ながらバックアップがなく、完全に失われてしまいました。
Googleドライブのクライアントさえインストールしておけば、ローカルに残っていたかも知れません。
Bloggerに投稿したいくつかの記事も消えてしまいましたね。
残念です。


今回のアカウント削除が辛かったのは以下の点です。
・削除の前の警告が全くなかったこと
・削除が覆らなかったこと
・息子のちんちんが写った写真が児童ポルノと判断されてしまった(可能性が高い)こと

アカウントは新しく作り直しました。
今回はGoogle+のインスタントアップロード機能はOFFにしました。
お子さんがいる方でインスタントアップロードをONにしている方はお気をつけください。

※具体的な削除理由はわからないので、もしかしたら息子の写真が原因ではないかも知れません。他に思い当たるものはありませんが。

7/2追記:アカウントが復元されました。
tappli blog: Googleアカウントが復元された話 http://blog.tappli.com/article/70311479.html
タグ:Google
posted by t2low at 23:32| 日記

2013年06月06日

[Mac] KeyRemap4MacBook と Control単押しでのEsc

Android studio用のvi風操作プラグインについてつぶやいたら、こんなご意見いただきました。




KeyRemap4MacBookというアプリをインストールして簡単な設定するだけで実現できるらしいので、さっそく試してみました。

アプリはこちらからダウンロードさせていただきます。
KeyRemap4MacBook - OS X用のソフトウェア
ダウンロードしたら、インストーラを使ってインストールします。簡単です。

とりあえず自分が必要なControl単押しのときはEscとして扱うための設定は…

Control_L to Control_L
(+ When you type Control_L only, send Escape)

この項目にチェックをつけるだけでした。

control_to_escape.png

慣れるまでは設定したことすら忘れていそうな気がしています…。
タグ:Mac
posted by t2low at 01:10| Mac/iOS

2013年05月10日

[Mac] 職場MacへHomebrewとgitをインストール

自分の書いた過去の記事を参考に会社のPCへHomebrewのインストールを試みました。
http://blog.tappli.com/article/57170851.html

でも、インストールのコマンドがうまく動きません。
本家ページを見に行きました。
http://mxcl.github.io/homebrew/

コマンドが変わったんでしょうか。
以下のコマンドで正常にインストール出来ました。

$ ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"


インストール後の動作確認。OKですね。

$ brew help
$ brew update
$ brew install git


gitのインストールもOKです。
ただ、このままだとHomebrewでインストールしたgitを使わないので、/etc/pathsを書き換えます。
/usr/local/bin が一番上に来るように変更して保存。

/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin


これでHomebrewでインストールしたgitが使えるようになりました。
タグ:Mac git Homebrew
posted by t2low at 22:00| Mac/iOS

2013年02月01日

[Android] バックグラウンドで動作しているアプリ

Twitterで流れてきたのですが、以下のコマンドでバックグラウンドで動作しているアプリがわかるそうです。

adb shell dumpsys alarm

実行してみると、いろんなアプリが動作していることがわかります。
こういった情報はどこから仕入れてくるんでしょう…。
dumpsysに指定できるのは、dumpsysを無印で実行したとき先頭に表示される一覧のどれかということなんですかね?
タグ:android ADB
posted by t2low at 02:06| Android

2013年01月25日

[Android] DexFileというクラス

DexFileというクラスを見つけました。
http://developer.android.com/reference/dalvik/system/DexFile.html

おもしろそうです。サンプルコードを書いてみました。
apkを読み込んで、そのapkの中にあるクラスファイルを一覧するだけの簡単なものです。
起動するとファイルの一覧が表示されます。「/system/app」のファイルです。
apkがたくさんあって、読み取り権限があるところということで「/system/app」を指定しています。
ファイルをクリックすると、そのapkが使用しているクラスの一覧を表示します。

ソース - DexFileSample.zip
https://www.box.com/s/8odcwuzwlrqzfl9pr4q0

Apk - DexFileSample.apk
https://www.box.com/s/5tbw6opngxmzb6u4vgsa

難読化しているアプリもあれば、そのままのアプリもありますね。
パッケージの分割方法や、命名規則みたいなものが読み取れて面白いかもしれません。

しかし、このクラスは一体どういった用途で使うんでしょうか?
一般的なアプリに組み込んで使う方法が思い浮かびません。
タグ:android
posted by t2low at 02:07| Android

2013年01月12日

[Android] ToneGeneratorで鳴らせる音

Androidでbeep音を鳴らすときはToneGeneratorを使うようですね。

http://developer.android.com/reference/android/media/ToneGenerator.html

どんな音があるのか気になったので確認するためのサンプルを作ってみました。
tonegenerator_sample.png
↓プロジェクトはこちらです。
https://www.box.com/s/gei8ob2qo6jszuxvlwmg

ToneGeneratorでTONE_から始まる定義をリストアップして、タップでその音を鳴らすようにしています。beep音を確認したい方は是非どうぞ。
タグ:android
posted by t2low at 02:12| Android

2012年11月16日

[android] ネットワークの判別

Android端末がどのネットワークに接続しているか判別する方法を調べました。

ConnectivityManagerのgetActiveNetworkInfo()を使えば良いようです。
ネットワークに繋がっていないときはnullが返りました。

返却されたNetworkInfoのgetType()で接続ネットワークが分かります。
種類はConnectivityManagerにTYPE_XXXとして定義されています。

ISW12HTで試したときは以下のようになりました。

・3G → TYPE_MOBILE
・Wi-Fi → TYPE_WIFI
・WiMAX → TYPE_WIMAX
・機内モード → (null)

ただ、LTEの端末で試してもTypeは変わらず。

・LTE → TYPE_MOBILE

判別には使えないのかとも思いましたが、NetworkInfoにはgetSubtype()というメソッドもありました。
LTE端末で返却される値は13。
合っているかどうかはわかりませんが、おそらくこの値は TelephonyManager#NETWORK_TYPE_LTE だと思います。

サンプル・コードはこちら↓
https://www.box.com/s/bil4ig0a284vhl5dw1oy
タグ:android
posted by t2low at 01:00| Android

2012年08月26日

[Ruby] 自分でインストールしたSQLiteを優先して使う

homebrewでsqliteをインストールしたところ /usr/local/bin にインストールされました。
ただ、これだとプリインストールされていたsqliteが使われてしまいます。
そこで…。

Homebrewを快適に使うために設定してる4つのこと | Macとかの雑記帳
http://tukaikta.blog135.fc2.com/blog-entry-208.html

こちらに書かれていた通りに「/etc/paths」を書き換えました。
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin

.bashrcで書き換える方法というのもあるらしいのですが…?
このMacは自分しか使わないし、とりあえずはこれで良いや。
タグ:SQLite
posted by t2low at 23:28| Ruby

2012年08月22日

[Android][献本御礼] Androidプログラミング 上達読本

出版社の方から献本いただきました。

Androidプログラミング上達読本」という本です。

著者の一人の方がツイートしているのを見かけて知りました。
まだまだ知らないことはたくさんありますが、それでも初心者の域は脱していると思っているので、上級者はどのようなことをしているのかに興味がありました。
掲載されているのは以下の8記事。

・ Java歴10年の筆者によるAndroid初挑戦レポート
・ サクサク動く快適UIへの近道
・ アプリの無応答を防ぐStrictモードの使い方
・ Android3.0で追加されたプロパティーアニメーション
・ jQueryMobileで作るWebアプリとネイティブ連携
・ マルチタッチ、カメラやセンサー、GPS機能を活かすアプリ開発
・ 自分専用「電話帳アプリ」の自作レポート
・ 自作アプリをセキュアにする6つの対策ポイント

それぞれに感想を。

・ Java歴10年の筆者によるAndroid初挑戦レポート
Java歴10年はすごいすわ…。
読んでいて「え、そんなに簡単にAndroidってわかるものだっけ?」と思いました。
僕はAndroid1.5の頃からやっていますが、こんなに簡単にはいかなかったような…。
いや、当時Java未経験だった自分と比べるのは失礼ですけど。
ある程度Javaの経験がある人だとAndroidって簡単なんでしょうかね。


・ サクサク動く快適UIへの近道
ツールを使って快適さを向上させようという記事。
こういったツールのお話は良いですよね。ネットだとあまり詳しい説明されていることが少ないですし。
自分のアプリでもこういった方法使って快適なものにしたいですが、どうしても後回しになってしまいます。


・ アプリの無応答を防ぐStrictモードの使い方
自分が一番興味を持った記事です。
「自分に厳しく」といった感じのStrictModeの説明。
いつか自分も実践しようと思いました。
ただ、これも後回し系です。
一番興味を持った記事ではありますし、やれば良くなる!とは思うのですが、やはり「自分に厳しく」は難しい…。


・ Android3.0で追加されたプロパティーアニメーション
これまでとは違ったアニメーション方法です。
自分は以前からあるビューアニメーションという方法しか知りませんでした。
プロパティアニメーションはオブジェクトのパラメータの値を変化させるアニメーションだそうです。
これを見た時、なんでこれが最初からなかったのか不思議に思うくらい自然なアニメーション方法だと思いました。
アニメーションはユーザからもわかりやすい部分なので、積極的に取り入れていきたいですね。


・ jQueryMobileで作るWebアプリとネイティブ連携
jQueryもおもしろそうですよねぇ。
自分はほとんどクライアント側のプログラムばかり書いてきたので、サーバ側のプログラム(javascriptはそうでもないかな…)は、ほとんどやったことがないのですけど、おもしろそうですよねぇ。
やっぱりネイティブアプリを書くより速いですしね。こういったものも覚えなければなぁ、と思いました。


・ マルチタッチ、カメラやセンサー、GPS機能を活かすアプリ開発
・ 自分専用「電話帳アプリ」の自作レポート
この2つの記事はスマートフォンの機能を使っているということでまとめて。
昔、自分でもカメラアプリを作ったときのことを思い出しました。
当時はよくわからないままコード書いていたので、これくらいまとまった資料があるとやりやすかったろうなぁ、と。
すごく詳しいところまで書いてあるわけではないのですが、基本だけでもわかると理解が早かったとおもいます。
あの頃に読みたかった。


・ 自作アプリをセキュアにする6つの対策ポイント
最近、いろいろと話題になりますよね。特にAndroidはいろいろと自由なだけに。
短いページ数ですが、気をつけるべきところがまとめられているのではないかと思います。
まったく知らないのと、ここに書かれていることだけでも知っているのでは大違いです。
仕事では多くの人に使ってもらうアプリを作っているので、僕もこういう点を注意しなければ…。


どの記事も面白かったです。
それぞれ著者の得意分野なのでしょうか。記事から楽しさが伝わってきます(気のせい?)。
掲載されたコードも短めで、本とPCをにらめっこしながら読み進むタイプではないので、電車の中で楽しく読むことができました。ちょっと本のサイズは大きいですけど…。
同じように初心者の域は脱しているという方は、ぜひぜひ読んでみると良いと思います。
タグ:android
posted by t2low at 01:28|

[Ruby] rbenvのアンインストールとRVM、Railsのインストール

前回の続きです。

rvmやめてrbenvにしてみた - Meltdown Countdown rev.
http://marutanm.hatenablog.com/entry/20110818/p1

t2low:~ t2low$ rm -rf ~/.rbenv/
t2low:~ t2low$ rm -rf /usr/local/bin/rbenv
t2low:~ t2low$ rm -rf /usr/local/Cellar/rbenv/

rbenvのアンインストールがよくわからなかったので、上のサイトを参考に削除してみましたが…Homebrewでインストールしたんだから、アンインストールする手段もあったんじゃ…?
時すでに遅し、ですが。
あと「rbenv-install」ってコマンドが残りました。消し方わからんし、とりあえず放置します…。

続いてRailsのインストールです。
これはせっかく買った改訂新版 基礎Ruby on Rails (IMPRESS KISO SERIES)を見て行いました。
20ページに書いてあるとおりです。
t2low:~ t2low$ sudo gem install rails --version "~> 3.2.1" --no-rdoc --no-ri
Password:
Fetching: i18n-0.6.0.gem (100%)
Fetching: multi_json-1.3.6.gem (100%)
Fetching: activesupport-3.2.8.gem (100%)
Fetching: builder-3.0.0.gem (100%)
Fetching: activemodel-3.2.8.gem (100%)
Fetching: rack-1.4.1.gem (100%)
Fetching: rack-cache-1.2.gem (100%)
Fetching: rack-test-0.6.1.gem (100%)
Fetching: journey-1.0.4.gem (100%)
Fetching: hike-1.2.1.gem (100%)
Fetching: tilt-1.3.3.gem (100%)
Fetching: sprockets-2.1.3.gem (100%)
Fetching: erubis-2.7.0.gem (100%)
Fetching: actionpack-3.2.8.gem (100%)
Fetching: arel-3.0.2.gem (100%)
Fetching: tzinfo-0.3.33.gem (100%)
Fetching: activerecord-3.2.8.gem (100%)
Fetching: activeresource-3.2.8.gem (100%)
Fetching: mime-types-1.19.gem (100%)
Fetching: polyglot-0.3.3.gem (100%)
Fetching: treetop-1.4.10.gem (100%)
Fetching: mail-2.4.4.gem (100%)
Fetching: actionmailer-3.2.8.gem (100%)
Fetching: rack-ssl-1.3.2.gem (100%)
Fetching: thor-0.16.0.gem (100%)
Fetching: json-1.7.5.gem (100%)
Building native extensions. This could take a while...
Fetching: rdoc-3.12.gem (100%)
Depending on your version of ruby, you may need to install ruby rdoc/ri data:

<= 1.8.6 : unsupported
= 1.8.7 : gem install rdoc-data; rdoc-data --install
= 1.9.1 : gem install rdoc-data; rdoc-data --install
>= 1.9.2 : nothing to do! Yay!
Fetching: railties-3.2.8.gem (100%)
Fetching: rails-3.2.8.gem (100%)
Successfully installed i18n-0.6.0
Successfully installed multi_json-1.3.6
Successfully installed activesupport-3.2.8
Successfully installed builder-3.0.0
Successfully installed activemodel-3.2.8
Successfully installed rack-1.4.1
Successfully installed rack-cache-1.2
Successfully installed rack-test-0.6.1
Successfully installed journey-1.0.4
Successfully installed hike-1.2.1
Successfully installed tilt-1.3.3
Successfully installed sprockets-2.1.3
Successfully installed erubis-2.7.0
Successfully installed actionpack-3.2.8
Successfully installed arel-3.0.2
Successfully installed tzinfo-0.3.33
Successfully installed activerecord-3.2.8
Successfully installed activeresource-3.2.8
Successfully installed mime-types-1.19
Successfully installed polyglot-0.3.3
Successfully installed treetop-1.4.10
Successfully installed mail-2.4.4
Successfully installed actionmailer-3.2.8
Successfully installed rack-ssl-1.3.2
Successfully installed thor-0.16.0
Successfully installed json-1.7.5
Successfully installed rdoc-3.12
Successfully installed railties-3.2.8
Successfully installed rails-3.2.8
29 gems installed

Railsってよくわかってなかったのですが、gemの集合なんですかね。
t2low:~ t2low$ rails -v
Rails 3.2.8

最後にバージョンを確認しておしまい。
ようやくRailsの勉強に入ります。
長かった。
posted by t2low at 00:26| Ruby