• <noscript id="e0iig"><kbd id="e0iig"></kbd></noscript>
  • <td id="e0iig"></td>
  • <option id="e0iig"></option>
  • <noscript id="e0iig"><source id="e0iig"></source></noscript>
  • react-native--03開發環境&amp;真機調試

    IDE -> WebStorm

    目前市面上的IDE,有知名的Sublime和jetbrains,其中jetbrains有一系列的IDE支持多種語言,如JAVA(IntelliJ IDEA)、Python(Pycharm)、Ruby(RubyMine)、Javascript/html/css(WebStorm),由于我本人長期開發Python,采用的是Pycharm,因此我個人傾向與采用WebStorm作為react native的IDE開發工具。

    安裝到手機

    1. 用usb線對接上 電腦 和 手機.
    2. 查看設備是否已經連接.
      C:\Users\zhengtong>adb devices
      List of devices attached
      5b921483        device   
      
      注意:如果這里沒有列出任何東西, 請參考 問題記錄 的 1. adb device沒有列出任何東西.
    3. 啟動項目
      C:\Users\zhengtong\WebstormProjects\rn_practice>react-native start
      C:\Users\zhengtong\WebstormProjects\rn_practice>react-native run-android
      
      注意:如果項目啟動過程中出現錯誤,請參考 問題記錄 的 2. 會話連接失敗.
    4. 最終效果

      最終效果

    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顯示懸浮窗口

    參考網址: http://www.lcode.org/%E3%80%90react-native%E5%BC%80%E5%8F%91%E3%80%91react-native%E5%BA%94%E7%94%A8%E8%AE%BE%E5%A4%87%E8%BF%90%E8%A1%8Crunning%E4%BB%A5%E5%8F%8A%E8%B0%83%E8%AF%95debugging/

    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
    來源:簡書
    簡書著作權歸作者所有,任何形式的轉載都請聯系作者獲得授權并注明出處。
    版權聲明:本文為hahahhahahahha123456原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。
    本文鏈接:https://blog.csdn.net/hahahhahahahha123456/article/details/80981820

    智能推薦

    阿里云騰訊云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;amp;Static&amp;amp;Const&amp;amp;友元函數&amp;amp;友元

    this Static 1,Static數據成員 static用來修飾類的成員,控制成員的存儲方式。靜態數據成員是該類所有對象共有的。靜態數據成員只分配一次內存,供所有對象共用。 靜態數據初始化格式:數據類型  類名::靜態數據成員 = 值 訪問靜態數據成員的方式: 類對象名.靜態數據成員名 類類型名::靜態數據成員名 2,Static函數成員 Const const用來定義常量,就是值...

    DFS&amp;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...

    HTML中常用操作關于:頁面跳轉,空格

    1.頁面跳轉 2.空格的代替符...

    猜你喜歡

    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_...

    精品国产乱码久久久久久蜜桃不卡