React-Nativeプロジェクトで、以前は問題なく動作していたのに、突然動作しなくなる問題が発生しました。コマンドを使用すると、いつも
react-native run-android
というエラーが出ていました:
Androidプロジェクトが見つかりませんでした。多分、最初にreact-native androidを実行するのでしょう?
私は走ってみた:
react-native android
でも、書いてありました:
Unrecognized command 'android' Run react-native --help to see list of ... 利用可能なすべてのコマンド
。
試した結果:
D:\ProjectRoot\ReactNativeProjects\AwesomeProject>react-native eject
というエラーが返されました:
のシンボリックリンクのためにフォルダをスキャンする。
D:¥ProjectRoot¥ReactNativeProjects¥AwesomeProject¥node_modules (48ms) アプリの
name
は、app.json
設定ファイルで定義しておく必要があります。 プロジェクト名。スペースやダッシュを含んではいけません。
これがapp.jsonファイルです:
{
"expo": {
"name": "AwesomeProject",
"description": "A very interesting project.",
"slug": "AwesomeProject",
"privacy": "public",
"sdkVersion": "30.0.0",
"platforms": ["ios", "android"],
"ios": {
"supportsTablet": true
},
"android": {
"package": "com.project.first"
},
"version": "1.0.0",
"orientation": "portrait",
"icon": "./assets/images/icon.png",
"splash": {
"image": "./assets/images/splash.png",
"resizeMode": "contain",
"backgroundColor": "#ffffff"
},
"updates": {
"fallbackToCacheTimeout": 0
},
"assetBundlePatterns": [
"**/*"
]
}
}
同じような問題に直面している人の助けになればと思い、この質問をし、自分で回答しました。ターミナルで表示されるエラーが正確ではなかったので、その背後にある本当の理由を見つけるのに非常に苦労しました。
この問題を解決するには、react-native パッケージをアップグレードしてください。
1.プロジェクトルートに移動します。 2.コマンドプロンプトで.NETと入力して、Reactネイティブパッケージをアップグレードします:
react-native upgrade
を使用します。
3.3. 次に、コマンドプロンプトにy (Yes)
と入力し、すべてのファイルの更新を承認します。
react-nativeの最新バージョンでは、この提案はコマンドを発行しようとしたときに発生します。
react-native eject
シンリンク用のスキャンフォルダー。 D:\ ProjectRoot \ ReactNativeProjects \ AwesomeProject \ node_modules(48ms)。 アプリ「name」は、「app.js on」構成ファイルで定義する必要があります。 プロジェクト名。 スペースやダッシュを含めないでください。
次のコマンドを発行すると、次のようになります。
D:\ProjectRoot\ReactNativeProjects\AwesomeProject>react-native upgrade
以下が表示されます。
シンリンク用のスキャンフォルダー。 D:\ ProjectRoot \ ReactNativeProjects \ AwesomeProject \ node_modules(56ms)。 Gitに基づく新しいアップグレードツールの使用を検討する必要があります。 できます。 ほとんどの競合を自動的に解決することにより、アップグレードが容易になります。 それを使用するには: -React Nativeの古いバージョンに戻ります。 -「npm install -g react-native-git-upgrade」を実行します。 -「react-native-git-upgrade」を実行しますhttps://facebook.github.io/react-native/docs/upgrading.htmlを参照してください。 「package.js on」の反応ネイティブバージョンは、インストールされているものと一致しません。 「node_modules」のバージョン。 これを修正するには、「npm install」を実行してみてください。 中止。
Facebookの反応ネイティブコマンドの提案には、明確な解決策があります。
これらのコマンドは、現在のバージョンと、更新が必要かどうかをチェックします。
も参照してください:
私はこれが好きでした。.. 働いた。 !!
1。 CMDプロジェクトのルートランリアクトネイティブアップグレード。 2。 それでも問題が発生している場合は、確認してくださいあなたは反応ネイティブを持っています。 package.js on の依存関係jsonで、そうでない場合は追加します。 3。 それでも問題が発生している場合は、 react-native -v を使用してreact nativeのバージョンをcmdで取得し、cmdとpackage.jsで返される値が同じかどうかを確認します。 package.js onを、値がcmdで返されるように更新します。
ここで私の問題は解決しました。
Gitに基づく新しいアップグレードツールの使用を検討する必要があります。 ほとんどの競合を自動的に解決することで、アップグレードが容易になります。 それを使用するには: -React Nativeの古いバージョンに戻ります。 -「npm install -g react-native-git-upgrade」を実行します。 -「react-native-git-upgrade」を実行します。 https://facebook.github.io/react-native/docs/upgrading.htmlを参照してください。
ここでは、app.js onには名前はありませんが、expo関連の構成があります。 したがって、app.js onに名前を追加して名前フィールドを表示するだけです。
app.jsオン(最初の2行):
{
"name": "AwesomeProject",
"displayName": "Awesome Project",
"expo": {
"name": "AwesomeProject",
"description": "A very interesting project.",
"slug": "AwesomeProject",
"privacy": "public",
"sdkVersion": "30.0.0",
"platforms": ["ios", "android"],
"ios": {
"supportsTablet": true
},
"android": {
"package": "com.project.first"
},
"version": "1.0.0",
"orientation": "portrait",
"icon": "./assets/images/icon.png",
"splash": {
"image": "./assets/images/splash.png",
"resizeMode": "contain",
"backgroundColor": "#ffffff"
},
"updates": {
"fallbackToCacheTimeout": 0
},
"assetBundlePatterns": [
"**/*"
]
}
}
この後、実行してください:
$反応ネイティブイジェクト。
info iOSフォルダーを生成します。
info Androidフォルダーを生成します。
反応ネイティブのアップグレードを行う必要はありません。
私の作業ソリューションは以下です。上記のどれも私には機能しませんでした。
CDをプロジェクトフォルダーに入力し、expo start --androidと入力します。
または長い道のり:
1。 Android StudioでAVDマネージャーを開き、仮想デバイスを実行します(できます)。 後でASを閉じます)。 2。 プロジェクトフォルダーにCMDを入力し、「expo start」と入力します。 3。 Expoが開始されたら、オプション2を選択します。これは「Android用を押す」です。 エミュレータ」。
仮想デバイスにexpoをインストールし、そこからテストできます。