react-native--03開發環境&真機調試
IDE -> WebStorm
目前市面上的IDE,有知名的Sublime和jetbrains,其中jetbrains有一系列的IDE支持多種語言,如JAVA(IntelliJ IDEA)、Python(Pycharm)、Ruby(RubyMine)、Javascript/html/css(WebStorm),由于我本人長期開發Python,采用的是Pycharm,因此我個人傾向與采用WebStorm作為react native的IDE開發工具。
安裝到手機
- 用usb線對接上 電腦 和 手機.
- 查看設備是否已經連接.
注意:如果這里沒有列出任何東西, 請參考 問題記錄 的 1. adb device沒有列出任何東西.C:\Users\zhengtong>adb devices List of devices attached 5b921483 device
- 啟動項目
注意:如果項目啟動過程中出現錯誤,請參考 問題記錄 的 2. 會話連接失敗.C:\Users\zhengtong\WebstormProjects\rn_practice>react-native start C:\Users\zhengtong\WebstormProjects\rn_practice>react-native run-android
- 最終效果最終效果
Debugging(調試)
代碼寫完了之后,除了每次都重新安裝(react-native run-android)之外,還有另外一種方法可以直接發起重新加載最新文件內容。
- Reload
如果是模擬器(Simulator),那么就直接點擊模擬器窗口,然后快速按下兩次R,即可完成重新加載動作。
如果是實體手機,則需要搖一搖手機,然后app會自動彈出一個懸浮窗口,只需點擊Reload即可完成重新加載動作。如果搖一搖不起作用,那請參考 問題記錄 的 3.紅米 Note 3 - Enable Live Reload
開啟該功能之后,只要文件發生變化,則會即時的更新到手機設備上,這種場景適合調試樣式時開啟,不適合在開發功能時開啟。 - Console Log
javascript/EcmaScript 的日志輸出是利用console.log('xxx'),在react native中也支持這種寫法,這有利于我們即時調試代碼時進行日志觀察。C:\Users\zhengtong\WebstormProjects\rn_practice>react-native log-android
問題記錄
1. adb devices沒有列出任何東西
這是因為手機默認情況下,不是開發者模式,需要去開啟開發者模式:設置
-> 關于手機
-> MIUI版本(連續點擊7次即可變為開發者模式)
開啟開發者模式之后,仍需開啟USB連接:設置
-> 系統和設備
-> 更多設置
-> 開發者選項
-> 開啟USB調試
2. 會話連接失敗
Installing APK 'app-debug.apk' on 'Redmi Note 3 - 5.1.1'
Unable to install C:\Users\zhengtong\WebstormProjects\rn_practice\android\app\build\outputs\apk\app-debug.apk
com.android.ddmlib.InstallException: Failed to establish session
at com.android.ddmlib.Device.installPackages(Device.java:894)
at com.android.builder.testing.ConnectedDevice.installPackages(ConnectedDevice.java:113)
at com.android.builder.testing.ConnectedDevice$installPackages$0.call(Unknown Source)
解決辦法:
關閉 <MIUI優化>設置
-> 系統和設備
-> 更多設置
-> 開發者選項
-> 啟用MIUI優化
參考網址: http://blog.csdn.net/eric_niezhangyu/article/details/51692297
3. 實體手機搖一搖沒有出現開發者菜單
3.1、去手機設置里把該app的懸浮窗權限打開3.2、全局安裝 npm i react-native-cli -g
授權顯示懸浮窗口設置
-> 設備
-> 授權管理
-> 應用權限管理
-> 權限管理
-> 顯示懸浮窗
-> 找到并勾選允許react native項目app顯示懸浮窗口
4. 無法連接開發服務器
正常情況下,調試APP時都是接上USB連接線,但是很多時候會因為一些事情而帶著手機離開電腦旁邊,當在回來接上USB后,搖一搖手機點擊Reload時會拋出異常錯誤(紅色屏幕),錯誤信息如下:
Could not connect to development server.
Try the following to fix the issue:
...
...
URL: http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=false&minify=false
解決辦法:
C:\Users\zhengtong\WebstormProjects\rn_practice>adb reverse tcp:8081 tcp:8081
通過上面這條命令,會告訴adb向手機發送指令,通知其服務可正常連接。
作者:極光火狐貍
鏈接:https://www.jianshu.com/p/0e768f6a83c2
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯系作者獲得授權并注明出處。
智能推薦
阿里云騰訊云yum方式快速搭建amp環境
lamp-yum安裝 一、yum更新整個系統(非必須) 二、安裝php7 (1)安裝CentOS7適用的epel (2)獲取PHP7的yum源 (3)安裝PHP7.2及其常用擴展 三、安裝Apache2 (1)執行命令安裝apache (2)設置Apache開機啟動并且啟動Apache (3)編寫靜態文件測試php文件是否解析正常 四、安裝Nginx (1)安裝準備 (2)添加源 五、安裝Mari...
C++this關鍵字&amp;Static&amp;Const&amp;友元函數&amp;友元
this Static 1,Static數據成員 static用來修飾類的成員,控制成員的存儲方式。靜態數據成員是該類所有對象共有的。靜態數據成員只分配一次內存,供所有對象共用。 靜態數據初始化格式:數據類型 類名::靜態數據成員 = 值 訪問靜態數據成員的方式: 類對象名.靜態數據成員名 類類型名::靜態數據成員名 2,Static函數成員 Const const用來定義常量,就是值...
DFS&amp;BFS總結
DFS&BFS總結 目錄..........................................................................................1 B - LakeCounting.............................1 C - Red and Black...............................
React Native環境安裝 、并啟用真機調試
準備工作 下載必備軟件 軟件列表 Node.js 地址:https://nodejs.org/en/(下載LTS版本) Java Development Kit(JDK) 地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 以上所有軟件百度網盤下載地址:http://pan.b...
猜你喜歡
freemarker + ItextRender 根據模板生成PDF文件
1. 制作模板 2. 獲取模板,并將所獲取的數據加載生成html文件 2. 生成PDF文件 其中由兩個地方需要注意,都是關于獲取文件路徑的問題,由于項目部署的時候是打包成jar包形式,所以在開發過程中時直接安照傳統的獲取方法沒有一點文件,但是當打包后部署,總是出錯。于是參考網上文章,先將文件讀出來到項目的臨時目錄下,然后再按正常方式加載該臨時文件; 還有一個問題至今沒有解決,就是關于生成PDF文件...
電腦空間不夠了?教你一個小秒招快速清理 Docker 占用的磁盤空間!
Docker 很占用空間,每當我們運行容器、拉取鏡像、部署應用、構建自己的鏡像時,我們的磁盤空間會被大量占用。 如果你也被這個問題所困擾,咱們就一起看一下 Docker 是如何使用磁盤空間的,以及如何回收。 docker 占用的空間可以通過下面的命令查看: TYPE 列出了docker 使用磁盤的 4 種類型: Images:所有鏡像占用的空間,包括拉取下來的鏡像,和本地構建的。 Con...
requests實現全自動PPT模板
http://www.1ppt.com/moban/ 可以免費的下載PPT模板,當然如果要人工一個個下,還是挺麻煩的,我們可以利用requests輕松下載 訪問這個主頁,我們可以看到下面的樣式 點每一個PPT模板的圖片,我們可以進入到詳細的信息頁面,翻到下面,我們可以看到對應的下載地址 點擊這個下載的按鈕,我們便可以下載對應的PPT壓縮包 那我們就開始做吧 首先,查看網頁的源代碼,我們可以看到每一...
Linux C系統編程-線程互斥鎖(四)
互斥鎖 互斥鎖也是屬于線程之間處理同步互斥方式,有上鎖/解鎖兩種狀態。 互斥鎖函數接口 1)初始化互斥鎖 pthread_mutex_init() man 3 pthread_mutex_init (找不到的情況下首先 sudo apt-get install glibc-doc sudo apt-get install manpages-posix-dev) 動態初始化 int pthread_...