[React Native] Androidのパッケージ名の変更方法

react-nativeコマンドで、アプリを作るとkagami.comという名前空間を自動生成するが、これをkagami.wazalab.comというようなXcodeのようにもう一段階ネストしたい。
下記の3ステップを踏めばよい。

1. ディレクトリ変更

2. ファイル内のパッケージ名変更

com.kagamiからcom.wazalab.kagamiに変更する。

  • android/app/src/main/java/com/wazalab/kagami/MainActivity.java
  • android/app/src/main/AndroidManifest.xml
  • android/app/build.gradle

3. 再生成

起動しようとすると、下のようなエラーがでる。deeplinkが動かないみたなことがあるらしいが、これは基本、自動でアプリが起動しないだけ。エミュレータにいってタップして起動させる。
(githubにissueが上がっているが、PRがマージされてない様子…)

[React Native] Androidアプリのバージョンの指定方法

Androidは開発したことないのでわからないことが多い。 
android/app/build.gradleversionCodeversionNameを変更すればいい。

ちなみにこの変数は、

  • versionName - XcodeのVersionと同じ。ただじ数字でなくてもよい。
  • versionCode – XcodeのBuildと同じ。ビルドごとに変更しないとpushできない。

参考: http://stackoverflow.com/questions/35924721/how-to-update-version-number-of-react-native-app

[React Native] AnalyzerでBUILD FAILEDな時の対処法

Projectのディレクトリを移動されたらreact-native run-iosで失敗するようになった。

キャッシュを使用してBuildを試みてて失敗しているようなので、ビルドを消す。

React Native Router Fluxでタブの履歴を残す方法

InstagramのようにAndoridのバックボタンで前のタブに戻るようにするためにどのタブが前のタブか知る必要があります。React Native Router Flux(with Redux)を使っていて、これを実現するために下記のようなReducerを作りました。

やってることは、FOCUSしたときにtabHistoryとして、Arrayに追加してるだけです。無限に履歴を残す必要はないので10個で制限してますが、もしかしたら2つでいいかもしれません(最初の要素は現在のタブになるので二つ以上は必要)

で、これを下記みたいな感じでBackAndroidで使用すれば良いでしょう。

コマンドラインからAndroid Emulatorを起動する方法

React Nativeの人なので、どうやってEmulatorを起動するかわかりませんでした。React NativeのGet started(ver 0.38)を終わって、 Android Studioからは起動できることを確認しています

上記コマンドできるはずですが、ライブラリのエラーがでて起動しません。

Stackoverflowを参考にして~/.bashrcにラップするfunctionを追加で無事エミュレーター起動しました。

Scroll to top