2018年2月22日木曜日

amazon の大型家具(家電)おまかせサービス

みなさんはアマゾン、好きでしょうか? 私は最近、よく利用します。 今回は大物オブジェクト、冷蔵庫と洗濯機をアマゾンで配達してもらったので日記に記します。

食い違うユーザーとドライバーの要望

最近、ヤマト運輸が宅配ドライバーの待遇改善のために配送料をアップした、という話題はご存知かと思います。 今年の繁忙期の引っ越し(3~4月)は人手不足で超ヤバいよ! というニュースが日経新聞に載っていたりと、 誰かに負担を強いてきた歪みっていうんですかね? そういうのが日本で顕在化しつつあるのかもしれません。 その裏にはインターネット通販の拡大であるとか、家電量販店の衰退、働き手の減少、などなど色々な側面があるのです。 糸と糸が複雑に絡み合って、限界に達した部分がブチっと切れたりする。それが、今回のヤマト運輸の値上げでなのです。

ザックリ言うと、時代の流れってやつですね。

ただし、誤解してはいけないことがある。 確かに家庭で、あるいは出先からスマホで、アマゾンをはじめとする通販を気軽に行える ようになりました。 実物はリアル店舗で見て触って、注文はネットで別業者、などという鬼っ子のお客様が増えたのは事実です。 だけど、相変わらず流通はトラック任せです。 地道に道路を走ってモノを運ぶのです。 ナビやETCカードという時代の恩恵はあるけれども、渋滞や腰痛は相変わらずなのです。

ユーザーの要望としては、何日の何時頃に配達してほしい。 ドライバーとしては、何日はともかく何時頃なんてのはこっちの都合だバカ野郎!ってなものです。 よく考えてください。大物家電ともなると、オッサン・ニーチャン混成の3人でまあまあのトラックを出動させて各地を巡ります。 3人もの働き手を〇時に来い! 絶対な! などとするには配送・設置料金として少なくとも4万円は欲しいかなってなりますね。 だけど、そんなブルジョワなおカネは出せないでしょ。じゃあ仕方ない、成り行きに任せましょう。

実は、単純にお金だけでは測れない問題があるんだ。
「〇時に来い! 絶対な!」と、客は望む。
でも、客は客の都合でその時間に不在にする場合だってある。
「〇時に来い! 絶対な!って言うから無理して来たのに居ねえじゃねえか! 無料(タダ)では帰らんからな」と、運送側は主張できない。
このどうしようもないアンフェアが、運送業者を疲弊させてきた一因でしょう。

じゃあ結局何時に来るの?

ヤマト運輸のドライバーの一日。
早朝に出社して、当日の配送ルートの確認(地図とにらめっこ)。 それが終われば、車に荷物を積み込み。 そして出発です。 ネットで読んだ知識だと、もたもたして9時になってもまだ出発していなかったら、所長に「ぶっ殺すぞ、あくしろよ」という殺人光線を発射されるらしいのです。 私の場合は、(荷物追跡サービスで)8:10分出発となっていました。 やはり、朝が早いというのは事実なようです。

あとは、出発地点と到着地点の距離からおおよその時間を予想するしかないですね。 もちろん、最短でまっすぐに一直線にやってくるわけではないでしょうが、 10km30分くらいで見積もった方が安全です。 つまり、出発してから意外なほど早く到着するぞ! ということです。 ルート次第なので、アレなんですけど、まあ午前中に来るというニュアンスで待ち構えていた方が確実ですね。 再配達になると、お互いの時間を無駄にしてしまうので、コレを避けるように最善を尽くしましょう。

まあ大型の場合は、不在による空振りを(通常の荷物のとき以上に)嫌いますから、事前に電話がかかってきます。この電話に確実にでて、正確な情報をキャッチしましょう。

荷物の搬入・設置、梱包用段ボールの片付けなどの諸々はやってくれました。 家電量販店で運送込みで注文するのと同等のサービスであろうと思います。 もちろん、冷蔵庫と洗濯機を同時に持ってきました。

大型おまかせの使い勝手は?

利点としては、日にちを指定できる。
設置と試運転までやってくれる。
ゴミが出ない。
買い替えの場合は、旧製品の引き取りも有り。

大型家具家電おまかせサービス
欠点としては、上記リンクからたどっていける商品しか対象ではないこと。 あまり品数は多くありませんし、お値段もそこまで安くない。 安めの外国メーカーの品もほとんど無いですし。 しかし、ネットで最安値を選択した場合、玄関先に置かれて終了。かもしれません。だとしたら苦労しますよ。

また、配送場所まで2kmもないようなヤマダ電機さんの店舗にも行きましたが、
「明日配送できる?」
「明日は…ちょっとお待ちください…無理ですね」
「明後日は?」
「…無理ですね」
みたいになって、なんかメンドクセーナ、と思ったのです。スケジュール的に余裕のある方なら、こちらの方がお安くできるかと思いますが…。

あーもう、めんどくせえ、まとめてかかってこいや! という人には大型家具家電おまかせサービスがおススメでございます。

2018年1月3日水曜日

バグとの闘い

わずか残り100点で迎えた南4局の親。 瀕死の状態、まさに虫の息。だが、親の連荘を重ねれば逆転も可能。 マンガのような展開。
「南郷さん、さっきツモられたとき死んだと思ったでしょ?」
「そりゃそうだ、400点しかなかったんだから」
「ところが、自摸のみのゴミ手。虫だって殺せやしない。ともかく、首の皮一枚で生き残った。今、あいつは落ち目。流れに乗っているなら、さっきの自摸にタンヤオかドラあたりが付いたはず。逆にこっちは幸運。来てる、流れは来てるよ」
「ああ、勝とうぜ」
対面の竜崎がリーチ。 いよいよもって危ない。
が、来た!
三色平和ドラ1をテンパイ。 くっそ、フリテンか…。 だが、ツモればいいんだ。九萬は場に3枚。誰か使っていれば実質0。だが、六萬がある。ロマンがある!
「リーチ!」

が、できない。リーチができない。 なんで? フリテンだから? いや、以前にフリテンリーチならできたはず…。 バグか?

答えは、100点しか持っていないから。 こういうですよ、レアケースの対処も考えなければならない、ゲームを作るときには。 まあこの場合は、仮にプログラムミスでリーチできたとしても、そこまで波風は立たないでしょう。 しかし、これがクラッシュを引き起こすバグなら、プレイヤーは怒り心頭です。

麻雀経験者に素人のフリして「リーチをかけることができる条件は?」と聞いたら 「そりゃあ、メンゼンで手作りしていることだ。鳴いていたらリーチできないからな」と、返すでしょう。 プログラムを組む時だってそうです。 メンゼンのときにテンパイすればリーチできる。と、するでしょう。 ここで、1,000点以上持っていることも条件な! と、思いつく人はかなりの切れ者です。 ルールとしては知っていても、普通は思いつかない。

そう、思考の死角。そういう目に付きにくい、考えの及びにくいところを奴らは攻めてきやがる。 バグとの闘いに終わりはない。

2017年12月31日日曜日

UAC ユーエスエーではございません

もちろん、上島珈琲カンパニー(UCC)でもございません。
ユニバーサル…、
ユニバーサルアプリキャンペーン
じゃああ!

スーパーへーげんフレーンズ
Android 無料アプリ
よろしくお願いします。

Admob 系広告の変遷

以前は、Admob で広告配信をしていたのですね。

この辺は、実際に使ったバナー広告です。 設定が簡単で、使いやすかったのです。 ところが、Admob で広告配信できません。今後は AdWords にしてくれ、と言われます。 2016年くらいのことでしょうか? で、この Adwords なんですが設定が難しくて、ぜんぜん成果もあがらない。 こりゃあダメだあ、と、思っていたんですが、同じような要望が多かったのでしょうか? Google さんが本気出して、 2017年11月からはアプリ広告は UAC 一本に統合されました。

ちなみに誤解されがちかもしれませんが、アプリに広告をだして開発者が「お金をもらう」方は、今も Admob なのです。

ユニバーサルAC を使ってみた

UAC は設定が超簡単です。 追加オプションで画像を増やせるみたいですが、とりあえずアプリのアイコンを兼用すれば、宣伝用の画像を アップする必要すらありません。 その後、広告文が「一般的に使われる言葉じゃないから規約違反です。修正して!」とメールで怒られましたが、 そこは素直に修正しました。 おろらく、海外展開する場合に誤翻訳の原因になる要素は排除したいのだと思います。

広告の出稿量は、(配信する地域の)競合とのバランスで決まります。 最初、日本限定でコンバージョン単価100円未満で出稿しましたが1時間で1~50回くらいのペースでした。 掲載順位も3.5位とか低めだったので、たま~に隙間を見つけて掲載、ということでしょう。 これではスローすぎてあくびがでるぜ、お話になりません。

今度は配信先を全世界に変えて、コンバージョン単価も「倍プッシュだ」。 設定変更が有効になった10数分後、いきなり広告配信数が2万、3万というビッグなものに変わります。 そう、本気をだせば1時間で50万回掲載することだって可能です。 さあ、この UAC 、自動学習効果があるみたいでデータが増えるほど、狙いどころが正確になって効率アップする らしいのですが…。本当なら「イージー」アンド「エクセレント」です。

初日。クリック率2.53%、コンバージョン率2.48%、コンバージョン単価135円。 一日の予算が普通にオーバーしたのが、ちょっとイラっとしましたが、その最後の追い込みの時は 一気にコンバージョン単価を下げるくらい効率のいいユーザー獲得でした。 ビッグデータが必要だっていうけど、掲載数4~5万くらいの段階で早くも学習っぷりを見せてくれました。 これは翌日に期待がもてそう。

獲得地域は、インドとブラジルを含み、あとは全盛期のオスマントルコ帝国っぽい国々。 欧米、日本はコンバージョン単価が高めにして、かつ配信地域を絞らないと攻めきれないでしょう。 前から知っていましたが、無料アプリで世界を対象にするとイスラム圏がいいお客様になります。 このことは知っておいた方がよいでしょう。

2日目。24時をまわった段階でいきなり配信数がドーン、予算もドーン、と使いやがります。 こいつ、ペース配分を考えてないぞ。 びびって、コンバージョン単価の設定を100円より下に下方修正します。 そこからはのんびりペースになりましたが、17:00の段階で次のようなデータに。 クリック率2.66%、コンバージョン率6.13%、コンバージョン単価79円。かなりいいデータです。 クリック単価はやや上がったものの、コンバージョン率が6%を超えるのはすごい。 広告配信616回で1DLになるペース。 過去に AdWords の広告で苦戦した経験をもつ私としては、驚愕の数字です。 もっとも、アプリ広告が UAC に統合される前のことですが。

今後に期待がもてそうなデータです。 さすがグーグルさんが自信をもってプッシュする人工知能なことはあります。 SFっぽい世の中になってきました。 夢を抱いて、さあ越えよう、一年の終わりを。

2017年12月26日火曜日

Google Play game services いばらの道

ゲームサービスなんぞは、一度通った道。 既に過去作で実装したことがあるので、できんことはないだろう。 しかし、この手のやつはなるべく Google が推奨する新しい形式で取り入れないとバグの温床となりかねない事情がある。 古いソースを繰り返すのは、あまり懸命ではない。

なるべく最新の型を取り入れよう。 なので、比較的新しい記事を参考にして、コードのつまみ食いだ。 私が知っているやり方とは全然違うなあ。 で、やってみたらサインイン(ログイン)がうまくいかない。 あっちこっちから、つまんでいるのでわけが分からなくなってきた。

結局、BaseGameUtils をライブラリに加えた方が、よさそうぞ? と、いうことになりましたので、 じゃあ入れてみよう。と、いうことでダウンロードしようと思って、ググってみましたが、何と!(どこにあるのか)わかりません。 「〇〇が全裸」みたいな興味深い動画を観ようとして、さんざんたらい回しにされた挙句、たどり着けない感じに似ています。 しかたがないので、過去作である The Melancholy Of Ghosts からインポートすることにしました。 こういうとき、長いことやってきた経験が活きますね。資産があるというか…。

ググったら何でも分かるんでしょ? っていうかもしれませんが、分かりません。 まず、Google の提供するサービス自体が日進月歩で変わっていきますし、 開発環境もかつての eclipse(2014年くらいまで主流)から移り変わって、今や Android Studio、Unity、など当然のように古い文献が役に立たないものが台頭しています。 さらに、Fire Base の存在もややこしさに拍車をかけます。 また、恐ろしいことにサンプルコードのスペルが間違っている場合すらありました(個人サイトでね)。connected と書くべきところが、 conected ですかね、まあ間違っていたらコピペしても当然コンパイルできないわけで、困りますわ。

public class MainActivity extends BaseGameActivity implements View.OnClickListener,GoogleApiClient.ConnectionCallbacks, GoogleApiClient.OnConnectionFailedListener {

BaseGameActivity を継承しています。 結局、限りなく古いやり方をなぞることになりました。 そうしないとできなかったもので。

SHA1 フィンガープリントの登録

ただし、今回はゲームサービスを Fire Base と紐づけてプロジェクト作成しています。ここだけ、最先端です。 かつては、後付けでフィンガープリントを変えることはできませんでしたが、この点に関しては便利になっています。 firebase console を開き、ゲームサービスの該当するプロジェクトを開きます。 Authentication を選び、ログイン方法のタブを選択。Google を押すと、説明のト書きがでてくるので、 その中にある「プロジェクトの設定」のリンクをクリックします。 下の方にいくと、「フィンガープリントを追加」の文字があるので、それをクリックすると入力可能です。 一つのフィンガープリントは一つのプロジェクトでしか使用できません。 間違えても、ゴミ箱マークを押すと削除することができ、入力のし直しが可能です。

紆余曲折あったが、これで成功か…。

と、こ、ろ、が…。さあ、サインイン成功してリーダーボードの呼び出しもできた。 じゃあ、リリース版のビルドをするかっ、てなりますが、ここで Generate Signed APK を行うと、エラーがでて完了しません。 どうやら、外部参照が重複していることを怒られているようですが…。 dependencies {} 内の


compile project(':BaseGameUtils')

これを削除すると、コンパイルができました。 しかし、こうするとサインインができません。

堂々巡りの無間地獄の始まりだ、アリジゴク、底なし沼…ン。 光明はささない。 が、しかし、これで選択肢が2つに増えました。

・グレードルのdependencies {} 内の記述を頑張る
・BaseGameUtils を解析して必要最低限をパクる

前者がどうしようもなく、意味不明だったので、私の技術力ではお手上げ。 後者にチャレンジすることに。 注目したのは、GameHelper.java の GoogleApiClient.Builder createApiClientBuilder() というメソッド。 これ絡みでググってみると、「ビンゴ!」っぽいのを発見。
GoogleApiClientのライフサイクル管理を自動化してみる
いやあ、お世話になりますぜ、へっへっへ…。


        mGoogleApiClient = new GoogleApiClient.Builder(this)
                .addConnectionCallbacks(this)
                .addOnConnectionFailedListener(this)
                .addApi(Games.API).addScope(Games.SCOPE_GAMES)
                .enableAutoManage(this, this)  // ← この一行を追加するだけです
                .build();

こうですね、で、当然、BaseGameUtils を使わないわけですから、 スーパークラスの継承もとりやめです。 ただし、通常の Activity だと具合が悪いので、AppCompatActivity を継承します。

public class MainActivity extends AppCompatActivity implements implements View.OnClickListener,GoogleApiClient.ConnectionCallbacks, GoogleApiClient.OnConnectionFailedListener {

そして肝心の build.gradle (app) ですが、こうなりました。


dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:23.4.0'
    compile 'com.google.firebase:firebase-ads:11.2.0'
    compile 'com.google.android.gms:play-services-games:11.2.0'
    testCompile 'junit:junit:4.12'
}

apply plugin: 'com.google.gms.google-services'

firebase-ads:11.2.0 は広告の絡みで導入しています。 もちろん、人によって必要な外部ライブラリは変わってきますので、何が正解ということはありませんが、 可能な限り最低限に抑えた方がよさそうです。

なんでハマったのか、やっとわかったぞ

「なんでハマったのか、やっとわかったぞ」と言われても「はあ、何か間違っていたんでしょ」と思うだけでしょう。 だけど当の本人は「何を間違っているか」をずっと勘違いしているんですね。 イライラして冷静さを失うとこうなります。 いっつも2時間も作業したら飽きてしまって外に出かけるのですが、今回は珍しく長時間机上で煮詰まっていました。 しかし、逆効果だったね。外の空気を浴びて…落ち…着いて…考えた方が、案外うまくいくものです。

じゃあ、言わせてもらいますけど、昔はデバッグキーストアのSHA1で登録したリーダーボードにガンガン記録を送信できたわけです。で、本番(リリース版)で試してみると、リリース用の署名(異なるSHA1を使っている)だとデバッグキー対応のゲームサービスプロジェクトに接続できないんですね。それで、何でやあ? 何でアクセスのサクセスがでけへんのやあ! と困惑したのです。多くの者が通る道です。

・デバッグ環境 >>> デバッグキーのゲームサービスと通信可能
・本番環境(一般人がDLするアプリそのもの) >>> 署名キーのゲームサービスと通信可能

ところが、今はですね。デバッグのSHA1で登録したゲームサービスに接続はできるけど、スコアの送信はできないんですね。 そんなわけで、うっかりデバッグキーでゲームサービスのプロジェクトを作ってしまったことに、長いこと気づきませんでした。 あと、広告用に作った Fire Base のプロジェクトに SHA1 の登録はしていなかったのですが、いつの間にか謎の SHA1 が登録されていたんですよ。今考えれば、アプリをプレイストアにリリースしたときに、SHA1 が自動で反映されたとしか思えないのですが、何なんだこの謎の署名は? と、長いこと真実に気づきませんでした。まあ、捨てないでよかった。

だからですね、テスト環境でゲームサービスを試そうと思ったら、今はかなりめんどくさいのです。 公開前のテストを行う手順を公開します。
①ゲームサービスはリリース版APKのSHA1を登録して作成する
②「公開の準備完了」のプロセスまではゲームサービス登録作業を進める
③テスト端末のアカウントのメールアドレスが登録されていない場合は登録する
④Generate Signed APK で APK を作成
⑤作った APK をテスト端末のストレージに放り込んで、それをインストールする

アルファ版とかベータ版とかあるから、それを使えってことなのかもしれませんが、個人でやる場合はそれもメンドイですしね。

2017年12月16日土曜日

Re: Surface View Problem

おもしろアクションアプリ「スーパーへーげんフレーンズ」のリリースも近づき、 様々なデバイスでテストプレイを行っています。 NEXUS 5X さんが Andorid 8.0 "OREO" にパワーアップしたということもあり、 Android 4~8 という幅広いバージョンで実機テストが行えます。
OREO のスピード、見せてもらうぜ!



うわぁ、この現象、すごい既視感(デジャブ)があると思ったら、以前にも似たようなことやってました。
多様性ゆえの混沌~発見!バグランド

エクスペリアさん(4.4.2):速いぞ、優秀
アクオスさん(5.1):ぎりぎり許す
ネクサスさん(8.0):ちがうだろー、遅いわ!
と、いう感じでいつも通りの、エクスペリアさんが速くて他がイマイチという結果です。 解像度の違いも影響していると思うので、(エクスペリアは720x1280、他は1080x1920)単純に比べられないのですけどね。 もちろん低解像度の方が描画するドット数が少なくなるので負荷は小さく、処理は速くなります。

AndroidのSurfaceViewの基礎
こちらの記事によると

SurfaceViewの上に普通のUI要素(ボタンとか)を重ねてもOKだけど、パフォーマンスは悪化するよ。
らしいです。 たしかに、SurfaceViewの上に普通のボタンとか重ねてるんだよなあ…。

ハードウェアアクセラレーションを使用する(1)
こちらの記事を参照して、アクセラレーションを任意にオンオフしてみました。

false:
NEXUS 5X で、問題のシーン、おおむね7.2以上、最低値6.8。
true:
NEXUS 5X で、問題のシーン、おおむね5.0付近、最低値4.4。

この結果からデフォルトだとオンになっているようです。 何でオンだと逆に遅くなるんだ? っていうことですが、SurfaceView の仕様とかみ合っていないから? なのかもしれません。 SurfaceView は昔からあるクラスで多分、2.2くらいの初期から存在するのではないでしょうか? なので、 イマドキな仕様とは相性が悪いのかもしれません。

↑マル秘データの類はずっと表示していた。 見えるからこそ気になるもの。 そして、それ…。気になるというのが癌…。 ユーザーは案外、気にしない、そんなこと。 数字、データ値…そのようなものに振り回されていては、見誤る、大局を。 大事なのは体感(速度)である。

最近のやり方として、canvas を使わない描画方法が本流であり、 多分、それをすれば NEXUS 5X(Android 8.0) が最速になるのだと思います。 しかし、それをやったら Android 4.x系が遅くなる可能性もあります。 絶対に、そんなことはない! Android 4.x系でも速いよ。っていう保証があるのなら、最先端を勉強して取り入れようという 気に(ちょっとだけ)なるのですが…。 だけど、世界で売る(無料だから売らないけど)ことを考えると、Android 4.x系はまだまだ多いので非常に大事なお客様なわけです。

古い方と新しい方、どっちに合わせるのが正解? これはもう、もう開発者の労力が小さくて済む方に合わせるのが正解、 でいいんじゃないかな。

タッチ(操作)の反応と、音の発生、パラメーターの増減などはメインスレッドで管理しているので、 見かけ上の描写にかかわらず一定速度です。 見かけ上は1秒間に7~12回程度しか、絵が更新されませんが、内部処理は毎秒25回行っています(こちらはデバイスによらず速度が一定)。 この部分が、ギリギリでゲーム性を保証しているように思えます。 結果的に、使用する端末によって描画速度が異なるのですが…。 もっとも遅い NEXUS 5X(Android 8.0)であっても、若干もっさりするけどプレイは楽しめます。 逆に Android 4.x系だと速すぎて、ブレーキ処理が作動する前の一瞬はビュンビュンしすぎなくらいです。

今回はメインのデバッグ機が 5.x の Lollipop 、シャープ国産機を使用しています。 メインマシーンを中心にすえてチューニングを行ってきたわけです。 他のデバイスだと、チューニングがずれることがあってもおかしくないのです。

Android 特有のこの「ごった煮」「チャンポン」感は、カオス(混沌)そのものです。 そういった意味では、デバイスの反応をはるかに制御・管理しやすい iPhone の方が気持ちよく開発できるはず。 大手企業のゲーム開発などでは、Android で各機種整合性を取ることに悩み、苦しんだはずです。 あらゆる機種で不備なく動くことを求めたら、労力は青天井に上がっていく…、そんなこと、営利企業にできるわけがない。 そこで、入念なマーケティングを行い、ターゲットを絞り、そこを中心にして開発する。 今であれば、Android 4.x 以下をざっくり切り捨てても、日本や北米がメインターゲットなら問題ないでしょう。 そう、企業が拾いきれないユーザーという者がいるのだ、確かに。そこを拾わずして、私共のような弱小に勝利はあるのでしょうか?

2017年12月12日火曜日

ドコモのDアカウントが有能だった話

LINE でアカウントを作った際に、ID と 電話番号が付随します。 この ID もしくは 電話番号 を人に教えて友達追加ができると便利ですし、そういう利用のされ方をしています。

しかし、年齢認証していない場合(18才未満のユーザーだとみなされる)、 ID(と電話番号)が検索できませんし、検索してもらうこともできません。 もちろん、他の方法によって知り合いをフレンズにすることはできますが、 いちば~ん手軽で簡単な方法が「ID検索」です。

別にQRコードとかでもいいじゃん、とも思いますが…ン。 しかし、想像してください。 あなたが合コンに行って、相手の一人が「これ私の連絡先ですから」と、 QRコードの付いたメモ紙を配布してきたら、 「用意がよすぎる…。フィッシング詐欺か何かじゃないのか?」と、勘ぐってしまうことでしょう。 これでは円滑なコミュニケーションを阻害してしまいます。

「ごめんさなさい~。実は私、18才未満なんです~」と言って、通用するのなら、押し通してください。

不自然なことがあると、人間身構えるんですね。
この人、後ろめたいことがあるのかな…。
この人、お金がないのかな…。
この人、何か隠そうとしている…?
そう思わせないための自然な流れ、流れなんだ。相手を警戒させたらダメ。ほんの僅かな違和感、 さざ波のようなものでも、起こすことは許されない。

「しかし、よくわかんねえな。連絡先だったら、携帯番号を教えればいいだけじゃねえか。今ならキャリア関係なしにショートメールだって送れるんだし。まさか1回3円がもったいないっていうのか、今の若い奴らは…」
「ふふ…、わかってないね。ショートメールの3円がもったいないというより、こちらの電話番号が相手に通知されるのが嫌なんだよ」
「なんでだ? 別に電話番号の交換くらいいいじゃねえか」
「手の内は見せたくないのさ。ID でお互いに連絡がとれるんなら、気軽に教えたり教えてもらったりできる」
「なるほど、電話番号なら死んでも教えたくないが、LINE の ID なら教えてやってもいい。相手だって、連絡先を知り得たんだから、それで引き下がるしかないってことか…」
「それを皆が望んでいたからこそ、LINE が流行したのかもしれないね」

大人なのに年齢認証突破できない問題

年齢認証したくてもできない大人がいっぱいいるのです。 例えば、ドコモやソフバンから電話番号をそのままにして、格安SIMに乗り換えた方。 人生最初のスマホから格安SIMで、成立していた方。 いわゆる三大キャリア(ドコモ、ソフトバンク、au)と、LINEモバイルしか年齢認証ができないとされています。 LINEモバイルは格安SIMの一角として、利用料金は三大キャリアより圧倒的に安いです。 じゃあ、LINEモバイルでいいじゃん…。 だけど、商売の仕方が汚くないっすか、LINEさんよお? 

しかし、ある条件を満たしている場合、悲観することもないのです。 皆様に朗報です。 あくどい LINE の商法に一矢報いてやりましょう。

条件
・OCNモバイルONEを利用している(NTT系列格安SIM)
・ドコモのDアカウントを持っている、あるいは家族など信頼関係のある人物がDアカを持っている

格安SIMを挿入しているスマホで、LINE の年齢認証を求められて、どうせダメなんでしょ? と、思いつつ 一応すすめてみたら、見覚えのある画面がでてきてビックリ。 ど、どういうことだか分からないが、ドコモのDアカウント入力(IDとパスワード)を求められた。 私はドコモユーザーを継続しているので、現役のDアカウントを持っていますから入力。 すると、年齢認証をパス。 しかも、スマホAのアカウントA、スマホBのアカウントBの二つで年齢認証を突破。 アカウントAでアカウントBをID検索して、友達追加することができました。

なぜ、急にドコモのDアカウント入力を求められたのかが謎です。 OCNモバイルONE というドコモよりのSIMだから? 理由はわかりませんが、よしとしましょう。 しかも、Dアカウントが一つあれば何個でも作れるっぽいんですよね。

エンタメLab.com
こちらでは、Dアカウント入力で年齢認証突破はできないと書かれています。 条件がちょっと違うから、何ともいえませんが、OCNモバイルONE を契約している方はチャレンジしてみたら?

補足:追記
ドコモのDアカウントは、誰でも取得できるようです。しかし、LINE の年齢認証に利用する場合は、 ドコモの回線を契約している人物のDアカウントしか有効とならないようです。 また、本人名義以外のDアカウントで認証突破する場合は、グレーな部分がありますので自己責任でお願いします。

2017年12月11日月曜日

SMS付データSIMで、Twitter新垢できた

タイトルで結論を書きました。 今回は重要な事項ほど上の方に書き、下の方にいくほど枝葉の細かい情報になるという、 アメリカンスタイルの文書構成でお送りします。

一度も太陽光を浴びたことがない、まさに箱入り娘な NEXUS 5X(SIMフリーバージョン)。 どうしても、この淡いブルーのカラーが欲しかった。 白や黒は(もっと安価で)入手しやすいんですけどね。 大事なのはスペックじゃない、リーズナブルでもない。 そう、こいつにナノシムをぶち込むのさ。

ピッキングツールみたいなこれ、金属の輪っかに棒が付いたコノ道具は、ネクサス本体に付属しています。 この細い棒をシム収納部分の穴に押し込むと、(バネの反動で)型枠が飛び出てきます。 CDプレイヤーの飛び出てきたアレにCDを載せて押し込む。 感覚としてはこれに似ています。 ネクサス5Xはナノシム対応機なので、ナノシムを挿入しています。 マイクロシムと比較した場合、部品がより小さいので神経を使います。

あとは、OCN から送られている同梱の設定書を見て、Android の設定をちょっといじるだけです。 とても簡単な作業です。

ツイッターへの登録

これで、新アカウントを作る準備が整いました。 ここで、大事な話をします。 電話番号の意味です。 固定電話に関しては従来通りの認識で構いません。 しかし、携帯電話に関しては少なくとも2017年現在、 端末に入れられているSIMカードの番号=電話番号となります。

ツイッターがうたっている
アカウントを電話番号と紐づける
と、いうのは、正確に書き直すと、「アカウントをSMS(ショートメールサービス)で認証する」という感じでしょうか。

使い切ったら終わり、のプリペイド型シムカードというものも存在しますが、 そういったものはお金さえだせば個人を特定しない方法で買うことができます。 しかし、音声電話付シムはおろかSMS付データ専用シムもプリペイドとしては販売していないはずです。 SMS付データ専用シムは、クレジットカード情報を登録しないと利用できないはずです。

ツイッターのアカウントはクレカ情報を通して個人とつながります。 しかし、まあこんなものは犯罪捜査に役立てる際に使うだけで、 普通に使う分には問題ないでしょう。

何よりこのSMS付データ専用シムの電話番号は、友人や知人に教えることはまずないでしょう。 他人がSMS付データ専用シムの電話番号を知る方法は、高度なハッキングなどを除けば無いはずです。 この番号を秘密のものとして守っていけばよいだけです。 と、いうことはツイッターのアカウントをSMS付データ専用シムと紐づけても、 何かの間違いで会社にバレちゃったみたいなことにはならないでしょう。

むろん、□メールアドレスの照合と通知を許可する、□電話番号の照合と通知を許可する、 みたいなチェックを外していけば、うっかり通知されてしまったということもないでしょう。 だけど、設定をいちいち確認しながらおっかなびっくり…というのは、どうなのでしょうか? 誰も知らない携帯番号、 誰も知らないメールアドレス、を認証用として設定するのが一番間違いのない方法です。 安心をカネで買うんですよ。

例えば、家のパソコンでインターネットした後に、出先でスマホを使ってインターネットすると、 パソコンで検索した内容が候補として現れます。 これは、Google のアカウントが同一のものだからなのですが、 これは便利であるとともに芋づる式に何もかもがつながってしまうことを示唆します。 しかも、LINE とかフェイスブックとかツイッターとかインスタとかってアプリ間でさらにつながろうとするでしょ。 全部やっている人なんかわけわかんないんじゃないの? 風邪で会社休みまーす、のはずが 巡り巡って仮病バレバレですね、なんてなるのは怖いですね。 借金踏み倒している人が、うまくバックレたつもりが居場所や行動パターンを読まれて捕まってしまう、とか。 こんなのは、借金踏み倒している方が悪いんですが、意図せず…発見されるということ、あり得る。 やはり、孤島の鎖国 SIM を一つ持つことが危機管理上、重要であると思われます。

最後、唯一の懸念は…この番号がツイッターのアカウントとして登録されていない、という保証がないこと。 090- の番号であることから、一度は誰かが利用していたものが市場に還元された可能性が高い。 OCN は NTT が大事に貯め込んでいた番号を譲り受けた、という可能性も無くは無いが、 再利用品の番号であると見た方が濃厚。 なぜなら、090- では番号がたりなくなって 080- や 070- が作られたのだから。

だがこの懸念は杞憂だったようだ。 今回は無事、ツイッターの新アカウント作れましたよっ、ということで。