[英]Not able to build android apk in react native expo project
[英]Android APK not working properly after build using Expo React Native
我一直在開發一個應用程序,我一直在使用 Android 模擬器和我的 Android 設備來使用 Expo 進行測試。
效果很好,一切都很完美。 但是,我剛剛構建了一個Android APK(我執行了expo build:android
),並且可以看到我的應用程序的登錄信息,但是在引入憑據后,它有點顯示關閉應用程序然后恢復它,但現在它一直顯示只是一個空白的屏幕。
這是一個 gif,向您展示會發生什么。
https://giphy.com/gifs/hdtXNeM2s5Dx7FnbNJ
另外,這里是我的 App.js 的代碼,它可以顯示<AuthNavigator />
(登錄屏幕),但是當設置用戶時它停止工作,然后<AppNavigator />
沒有出現。
import React, { useState } from "react";
import { StyleSheet } from "react-native";
import { NavigationContainer } from "@react-navigation/native";
import { AppLoading } from "expo";
import AppNavigator from "./app/navigation/AppNavigator";
import AuthNavigator from "./app/navigation/AuthNavigator";
import AuthContext from "./app/auth/context";
import authStorage from "./app/auth/storage";
export default function App() {
const [user, setUser] = useState();
const [isReady, setIsReady] = useState(false);
const restoreUser = async () => {
const user = await authStorage.getUser();
if (user) setUser(user);
};
if (!isReady) {
return (
<AppLoading startAsync={restoreUser} onFinish={() => setIsReady(true)} />
);
}
return (
<AuthContext.Provider value={{ user, setUser }}>
<NavigationContainer>
{user ? <AppNavigator /> : <AuthNavigator />}
</NavigationContainer>
</AuthContext.Provider>
);
}
還有我的 app.json,以防萬一:
{
"expo": {
"name": "Agro-Mobile",
"slug": "Agro-Mobile",
"version": "1.0.0",
"orientation": "portrait",
"icon": "./app/assets/icon.png",
"splash": {
"image": "./app/assets/splash.png",
"resizeMode": "cover",
"backgroundColor": "#ffffff"
},
"updates": {
"fallbackToCacheTimeout": 0
},
"assetBundlePatterns": ["**/*"],
"ios": {
"supportsTablet": true
},
"android": {
"package": "com.smartbase.agrocognitive",
"versionCode": 1
},
"web": {
"favicon": "./app/assets/favicon.png"
},
"description": ""
}
}
在 app.json 你需要改變:
"android": {
"package": "com.smartbase.agrocognitive",
"versionCode": 1
為了這
"android": {
"package": "com.agrocognitive.agrocognitive",
"versionCode": 1
換句話說,您只需要更改應用程序名稱的公司名稱,請確保僅使用小寫字符而不使用 simbol。 您創建的文件夾與您的應用程序同名。 對於其他人,刪除 App.js 中的任何評論。
這適用於我在 bluestacks 模擬器和我的手機中運行 apk 文件我希望能幫助你
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.