React NativeとReact Native for Webで3プラットフォーム対応アプリをリリースした(ほぼwrite once!)

React Native(RN)は便利です。
しかし、そのアプローチは「learn once, write anywhere.」であり、1つのソースで両OSに対応できる魔法のツールではありません。

僕は仕事で2つのRN製アプリに関わっており、どちらも大規模なものでは無いですが、やはりプラットフォームごとに処理を分けざるを得ない部分があります。

とはいえ「1つのソースでどこまでいけるか」という野望を捨てきれないのは事実。そして、あわよくばWebブラウザでも動いてほしい。

というわけで、リリースしてみました。(初の.appドメイン!)

こんな感じで、いい日? or よくない日?をスワイプで選択するだけの単純アプリです。

Web

iOS

Andoird

iOS、Androidは各ストアからダウンロード、Web版はhttps://gooddays.appにアクセスするだけで使えます。
無料ですので、ぜひご利用ください(広告は表示されます)

「ほぼ」write once

1つのソースでできるだけやるという実験がメインのアプリでしたが、この規模でも以下の2点は無理でした。

- 広告(AdMob or Adsense)
- Alert(いずれRN fo Webで対応するはず)

あと、スクロールのイベントでも問題があったのですが、プルリクエストが出されていたので、それをマージしたRN for Webを使うことで対応できました。

GoodDaysの作り方

ソースコードをどう公開しようかなと考えていたんですが、一度やってみたかった有料noteで技術記事を販売するやつをやってみます。

というわけで、作り方とソースコード一式は続きからご覧ください。

なお、記事内で作る「GoodDaysClone」は「GoodDays」の一部機能を省略・変更しています。

主な省略・変更点

- ヘッダーを透明にしていない
- 当日分の結果をカレンダーから操作できない
- 言語が選択ではなく自動判別

ただし、ソースコードはストアにリリースしているフルバージョンのものも添付しています。

というわけで、お金と時間に余裕がある方は以下お付き合いください。

更新履歴

[2018-10-19]
gooddays-master.zipに含まれていた不要なコード・ファイルを削除

この続きをみるには

この続き:49,210文字/画像25枚

React NativeとReact Native for Webで3プラットフォーム対応アプリをリリースした(ほぼwrite once!)

tnantoka

500円

この記事が気に入ったら、サポートをしてみませんか?気軽にクリエイターを支援できます。

tnantoka

作ったもの

コメントを投稿するには、 ログイン または 会員登録 をする必要があります。