Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
1
Help us understand the problem. What is going on with this article?
@overgoro56

React Native - Mac,Windows環境それぞれで開発して困ったこと

More than 5 years have passed since last update.

去年の秋頃にAndroidに対応したReact Nativeで勉強も兼ねて
Android,iPhoneアプリを作成しました。

・公式ページ
http://facebook.github.io/react-native/

今回は開発の中で困ったことなどを少しだけ書こうと思います。

開発環境など

・ソース管理
GitHub

・OS
Mac
Windows

・開発ツール
SourceTree
Atom
Genymotion

・ReactNativeのバージョン
0.16

Mac,Windows両方で開発

メイン端末でDELLを使っています。
MacはMacBookAirを持っています。
昔からWindowsを仕事で使っていたために開発スピードに雲泥の差があります 笑

ということでGitHubでソース管理しながら家ではWindows、
外ではMacで開発しようとしていましたがここで少し困ったことに。

MacとWindowsでプロジェクトのファイルが少し違う

ReactNativeのプロジェクトを作成する場合には以下のコマンドを使用します。
(react-native-cliがインストールされていることが前提です)
react-native init AwesomeProject

Androidアプリから作成していました。
この問題にぶつかった時はReactNativeが0.15の時だったので今は違うかもしれませんが
WindowsとMacでプロジェクトを作成した時に最初に準備されるファイルが少し違いました。
そのため、Windowsで作ったファイルをそのままGitHubにpushして
Macでpullして動かそうとするとそのままではうまくいきません。

仕方ないのでGitHubにWindows、Macそれぞれプロジェクトを作成してGitHubにpushして
メインソースを片方で編集したらもう一つの方にもマージするという少し面倒くさい形になってしまいました。

パッケージの中でWindows、Macどちらかしか動かない場合もある

これは作成者側の環境によるかもしれません。
まだ成長中のため、こういったことに何度もぶつかります。
どこが悪いか見つけて作成者側に連絡してあげると喜ばれます。
一緒に作ってる感がでて楽しいところでもあります。

また、まだ開発に足りないものがあったりするので
自分で作って名をあげるチャンスでもあるかなと感じました。

WindowsでAndroidのapkを作成するコマンドでエラー

Androidフォルダ直下で以下のコマンドでapkの作成を行えます。
./gradlew assembleRelease
しかし、Windows環境ではサーバー起動に失敗してエラーになるなどの問題にぶつかりました。
エミュレーターでのテストは問題なく行えます。
色々調べてみると回避策が載っていたり、現在修正中とのIssueが上がってたりしました。
(version0.16で修正したとありましたが未確認です。)

結果として

ReactNativeの出荷作業等、メインになるところはMacで行う。
(iPhoneアプリもありますし、FaceBookの方々もメインはMacで開発してそうなので)
出先などでちょこっと修正したり機能追加したりする場合に
Windows用のプロジェクトも作っておくと便利。

1
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
overgoro56
最近はフロントエンジニアとしてReact + Redux + TypeScriptで開発 GCP環境構築したりGASで業務改善したり ReactNativeで作った自作アプリも公開中

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
1
Help us understand the problem. What is going on with this article?