溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Weex中WEEX-EROS開發(fā)的示例分析

發(fā)布時間:2021-08-19 10:32:31 來源:億速云 閱讀:125 作者:小新 欄目:web開發(fā)

小編給大家分享一下Weex中WEEX-EROS開發(fā)的示例分析,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

Weex Eros就是一個面向前端Vue的開源APP解決方案。 目前,如果直接使用Weex框架開發(fā)應(yīng)用會存在很多痛點,諸如初始化啟動的環(huán)境問題、項目工程化問題、版本升級與版本兼容問題和不支持增量更新等,而Weex Eros等開源解決方案能對上述問題進行有效的解決。 Weex Eros的定位不是組件庫,而是基于Weex封裝的面向前端Vue的一整套APP開源解決方案,它關(guān)心的是整個APP項目。在Weex的強大支持下,用一份Vue代碼即可編譯出iOS、Android兩端原生的app,并且通過Weex Eros內(nèi)置的熱更新邏輯和開源的服務(wù)器邏輯,開發(fā)的APP還具有熱更新能力。

由于weex-eros安卓端久久不更新,導(dǎo)致開發(fā)過程中安卓端總會有那么些問題,需要大家動動手改改SDK源碼,可能需要對原生知識進行補充或者定制開發(fā)。

本文針對EROS 2018.10.11 更新的版本進行的介紹

1,屏幕旋轉(zhuǎn)問題

在android/WeexFrameworkWrapper/app/src/main/AndroidManifest.xml這個文件中,
控制屏幕旋轉(zhuǎn),需要添加:

android:screenOrientation="user"
android:configChanges="orientation|keyboardHidden|screenSize"
  • screenOrientation表示用戶當前首選方向,如果值是'sensor',關(guān)閉屏幕旋轉(zhuǎn)也是會旋轉(zhuǎn),會根據(jù)重力傳感器切換。

  • configChanges用于配置橫豎片切換,配置configChanges為以上配置時,切屏不會重新調(diào)用各個生命周期,只會執(zhí)行onConfigurationChanged方法,Activity中的數(shù)據(jù)不會被銷毀。

2,鍵盤擋住輸入框問題

防止鍵盤擋住輸入框,自動將頁面上頂,需要添加如下配置:

android:windowSoftInputMode="adjustPan"

具體可以參考下圖:

Weex中WEEX-EROS開發(fā)的示例分析

3,點擊對話框背景或按返回按鈕對話框消失

使用Android studio打開WEEX-EROS的Android源碼,然后再源碼中查找ModalManager.java這個SDK源碼文件,將下圖圈起來的位置設(shè)置為false即可,對應(yīng)的是setCancelabel(calcel)這個屬性。

Weex中WEEX-EROS開發(fā)的示例分析

WEEX的Picker模塊如果選項多的話會出現(xiàn)默認選項有多個的情況,需要將Picker模塊的SDK源碼替換成官方github上的最新源碼,官方github源碼地址。

4,iOS屏幕旋轉(zhuǎn)

EROS本身是不支持橫屏開發(fā)的,如果要進行橫屏開發(fā),可以勾選Landscape Left和Landscape Right兩個選項,如下圖。

Weex中WEEX-EROS開發(fā)的示例分析

5, 修改包名修改原生Android工程包名

原生Android工程在打包的時候需要修改Android原生工程的包名,對于WEEX-EROS項目來說,只需要修改Android的gradle.properties的APPLICATION_ID即可。

Weex中WEEX-EROS開發(fā)的示例分析

修改原生iOS工程包名

iOS原生的包名比較好修改,如下圖:

Weex中WEEX-EROS開發(fā)的示例分析

另外,Android修改完SDK源碼后需要對文件夾做修改才可以提交到git上,不然修改完沒提交到git,下次拉下來,重新安裝Android依賴就白改了,打開文件夾下的.gitignore文件,刪除wxframework和sdk,然后添加如下配置:

# eros 
platforms/android/WeexFrameworkWrapper/app/src/main/assets/bundle.zip 
platforms/android/WeexFrameworkWrapper/app/src/main/assets/bundle.config
platforms/ios/WeexEros/WeexEros/bundle.zip 
platforms/ios/WeexEros/WeexEros/bundle.config
!.gitkeep
ip.txt

然后分別進入platforms/WeexFrameworkWrapper/nexus、platforms/WeexFrameworkWrapper/wxframework文件夾下執(zhí)行rm -rf .git清除原本的git信息,之后就可以將Android的源碼提交到git倉庫里了,之后拉下來不用再安裝Android依賴了。

6, CocoaPods多個版本切換問題

EROS推薦1.4.0,因為當前使用的WXDevtool插件(1.5.3)基于1.4.0,個人僅發(fā)現(xiàn)此插件有問題,可以使用如下的版本來查看本地的CocoaPods版本。

gem list --local | grep cocoapods

Weex中WEEX-EROS開發(fā)的示例分析

然后,可以使用下面的命令來查看當前系統(tǒng)默認使用CocoaPods版本。

pod --version

如果涉及多個CocoaPods版本,那么怎么管理CocoaPods呢?此時,我們需要安裝一個Bundler管理工具。

gem install bundler

使用方法

1.到Podfile文件所在目錄輸入以下命令,創(chuàng)建Bundler的配置文件Gemfile。

bundle init

2.將Gemfile文件修改成以下內(nèi)容,版本號可根據(jù)自己的需求修改。

Weex中WEEX-EROS開發(fā)的示例分析

3.最終,如果要使用指定的CocoaPods去安裝插件只需要在pod命令上加上bundle exec前綴。

bundle exec pod update

以上是“Weex中WEEX-EROS開發(fā)的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI