ファッションVR「STYLY」のWeb周りをお手伝いしました

ノートアプリを開発しつつ、受託もしています。(まだ食えないのでw)

年初からお手伝いしていたPsychic VR LabさんのSTYLYというサービスがプライベートβでローンチしました。
僕はWeb周りを担当しました。

このサービスは、VRによってファッションブランドの持つ世界観の表現力を拡張しようという試みです。

サイトに飛ぶと再生される動画にあるような、ファッションのVR空間を簡単につくれるツールを作っています。
まだプライベートβなので詳しく知りたい人はエントリーしてみて下さい。

社長の山口征浩さんはVRに関する構想をいろいろ持ってらっしゃる方なので、気になる方はインタビューなどを読んでみてください。


React NativeでAndroidアプリのビルド失敗対処法まとめ

React Nativeとはいえ、モジュールを使うとネイティブのコードが沢山追加されます。
だから何もしなくても勝手にクロスプラットフォーム対応!とは世の中そう上手くいきません。世知辛ぇよ。
だから先にiOSアプリをひと通り実装してから、いざAndroidアプリをビルドしてみると・・出るわ出るわエラーが笑

筆者がまさにそういうやり方でアプリ作っているので、Androidビルドで生まれた魑魅魍魎たちの退治記録を以下にまとめました。ご参照下さい。

続きを読む React NativeでAndroidアプリのビルド失敗対処法まとめ


AppleのHot Code Pushリジェクト問題、React Nativeへの影響は?

Rollout.io導入アプリがリジェクトされた話題は、3月7日にHackerNewsで盛大に盛り上がりました。
Hot Code Pushというのは、App Storeのレビューを通さずにアプリの挙動を変更できる仕組みのこと。
Rollout.ioはこの仕組みを利用してバグ修正が迅速に行えるサービスを提供していました。

上記Hacker Newsのコメ欄にRolloutのCEOのErezが出てきたりして、顔面蒼白ぶりがひしひしと感じられますねぇ。
これだからプラットフォーム依存は怖い!

ネイティブの動きを変えられるようにするのはダメ

何がダメかっていうと、以下のAPIを使って動的に挙動を変えられるようにすることです:

dlopen(), dlsym(), respondsToSelector:, performSelector:, method_exchangeImplementations()

いくら安全にこれを取り扱ったとしても、ハイジャックされてMITMアタックとかが起こりえるからダメというのがAppleの判断。
これ別に昔っからあるライセンス条項だったと思うんですけど、どうやら最近になって急に厳しく取り締まり始めたのが騒動の発端らしい。

続きを読む AppleのHot Code Pushリジェクト問題、React Nativeへの影響は?


Herokuで自動更新アリでLet’s encryptを導入する方法

追記 (2017/03/24)

Herokuがついに公式でLet’s Encryptに対応したようです。

こちらの手順に則ったほうがいいでしょう。

さよならStartSSL

ある日StartSSLのダッシュボードにログインした私。
なんか不穏な空気を醸すメッセージが赤々と表示されている事に気づく。

  1. Mozilla and Google decided to distrust all StartCom root certificates as of 21st of October, this situation will have an impact in the upcoming release of Firefox and Chrome in January. Apple’s decision announced on Nov 30th of distrusting all StartCom root certificates as of 1st of December will have an impact in their upcoming security update.
  2. Any subscribers that paid the validation fee after Oct. 21st can get full refund by request.
  3. StartCom will provide an interim solution soon and will replace all the issued certificates with issuance date on or after Oct 21st in case of requested. Meanwhile StartCom is updating all systems and will generate new root CAs as requested by Mozilla to regain the trust in these browsers.

あっるぇ〜?
花粉が目に入ってよく読めないよ〜?
一体何が起こったって言うんだよ。

続きを読む Herokuで自動更新アリでLet’s encryptを導入する方法


LINEで二段階認証が通らなくなった時の対処

結論から言うと、問い合わせましょうという簡単な話。
だから焦ってアカウント削除しないように!!!
大事なあの子の連絡先は失なわずに済みますから!!

自分のケースでは、修理に出すためにiPhoneをリセットしたのがキッカケです。
修理から戻ってきて、データ復元してLINEアプリを起動すると「本人確認が必要」という画面が表示されました。
はいそうですかと手続きを進めてもエラーで上手く行きません。
LINEへの問い合わせの結果、「一時対処」ということでサポートに対応してもらう事で解決しました。

しかし納得行かないのは、理由の説明も謝罪の言葉も無かった点。
もしかして引き継ぎ設定せずにiPhoneをリセットすると、毎度問い合わせないといけないのか?
メールも定型文貼り付けただけみたいだし、ラーメン屋でインスタントラーメン出された気分です。

続きを読む LINEで二段階認証が通らなくなった時の対処


React Nativeでリリースビルドが起動しない問題の解決法

React Nativeを使ってiOSアプリを開発していて、TestFlightで配信しようとした時に問題にぶち当たった。

起動直後に落ちる

配信されたアプリを起動するとすぐにクラッシュしてしまう。
クラッシュレポートも上がってこないから、何が起こったのか分からない。
まるでProvisioning Profileの有効期限が切れた時のような挙動。
しかし、Code SigningやProvisioning Profileの設定は正しい。
そもそも間違っていればTestFlightで配信できないから。

原因1: ダイナミックなクラス名参照を実装している

続きを読む React Nativeでリリースビルドが起動しない問題の解決法