用)
Expo 十分鐘上手指南用一條命令跑通 Android、iOS 與 Web 應(yīng)用【免費下載鏈接】expoAn open-source framework for making universal native apps with React. Expo runs on Android, iOS, and the web.項目地址: https://gitcode.com/GitHub_Trending/ex/expoExpo 是開源的跨端應(yīng)用框架寫一套 React 代碼同時編譯到 Android、iOS 和 Web 三個平臺。它把 React Native 生態(tài)里最勸退的部分——原生工程配置、依賴安裝、原生模塊橋接——打包成開箱即用的命令。裝好 Node.js 之后你只需一條npx命令生成項目再執(zhí)行expo start掃一個二維碼十分鐘內(nèi)在手機上看自己的第一個界面。用 create-expo-app 一條命令完成項目初始化Expo 項目不從空目錄手寫起步而是從模板生成。模板就放在倉庫的 templates/ 目錄下包括default帶示例頁面、blank純 JS、blank-typescript純 TS、tabs底部導(dǎo)航和bare-minimum最小原生工程五種創(chuàng)建時交互式選擇。生成后直接啟動開發(fā)服務(wù)器npx create-expo-applatest my-app cd my-app npx expo startexpo start會起一個本地開發(fā)服務(wù)器并展示二維碼改代碼即時熱更新不用重新安裝應(yīng)用。用 Expo Go 連接真機或用模擬器離線跑expo start的二維碼不是隨便掃的手機裝上 Expo Go 客戶端 后掃碼即可加載你的 JS 代碼運行在真機上全程不需要安裝 Android Studio 或 Xcode。沒有真機也不礙事expo start按a或i可在 Android / iOS 模擬器中啟動效果如下Expo SDK相機、定位、通知開箱即用應(yīng)用能跑起來只是起點Expo 真正解決的是調(diào)用設(shè)備能力要寫多少原生代碼這個痛點。SDK 以獨立 npm 包形式提供每個模塊都自帶 TypeScript 接口和 Kotlin/Swift 實現(xiàn)npm install即可用expo-camera相機拍攝、視頻錄制expo-locationGPS 定位與連續(xù)追蹤expo-notifications本地與推送通知expo-router文件路由用目錄結(jié)構(gòu)聲明頁面expo-sqlite、expo-secure-store本地存儲與加密存儲模塊清單可以看 expo 主包 與 expo-camera 的目錄結(jié)構(gòu)一個模塊下src/、android/、ios/三層并列這正是一套代碼、原生實現(xiàn)的直觀體現(xiàn)。需要原生代碼時prebuild 生成完整工程當(dāng)你要寫 Kotlin/Swift 或修改Info.plist時npx expo prebuild會按當(dāng)前配置一鍵生成android/和ios/原生工程之后再交給 Android Studio 或 Xcode 處理改配置圖標(biāo)、包名、簽名則用 Config Plugins 聲明式完成不碰原生源碼。創(chuàng)建自定義開發(fā)構(gòu)建Development Build用的expo-dev-client也走同一條鏈路CLI 相關(guān)邏輯可參考 Expo CLI 源碼。npx expo prebuild常見卡點 真機掃碼失敗手機和電腦必須連同一 Wi-Fi隔網(wǎng)調(diào)試時改用expo start --tunnel。API 報不支持Expo Go 只內(nèi)置固定版本 SDK 的模塊本地 SDK 版本與 Expo Go 版本對不上時先升級 Expo Go 或改用 Development Build。依賴沖突項目內(nèi)引入的第三方原生庫版本需與當(dāng)前 Expo SDK 對齊以 官方文檔 的版本說明為準(zhǔn)。下一步建議想快速過一遍各模塊的真實用法可以翻 native-component-list 這個組件演示應(yīng)用它把默認(rèn) SDK 里的組件和 API 逐一做成了可交互頁面。【免費下載鏈接】expoAn open-source framework for making universal native apps with React. Expo runs on Android, iOS, and the web.項目地址: https://gitcode.com/GitHub_Trending/ex/expo創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考