91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

在SAP除了使用Cordova生產移動應用外,還有這種方式

發布時間:2020-08-11 12:02:52 來源:ITPUB博客 閱讀:127 作者:i042416 欄目:移動開發

本文和Jerry過去的文章不太一樣,算不上Jerry的知識分享,只是記錄一下Jerry用React-Native把應用安裝到Android手機上遇到的一些問題,方便以后查看。

Jerry的同事Leo用React-Native開發了一個應用,現在Jerry需要把這個應用在自己的安卓手機上運行起來。


在SAP除了使用Cordova生產移動應用外,還有這種方式


客戶啟動這個應用后,自動召喚出手機上的攝像頭,對身邊的物品進行拍照,然后把照片上傳到SAP Cloud Platform的Leonardo那里,消費機器學習API之一的Similarity score服務,返回最相似的三個圖案。


在SAP除了使用Cordova生產移動應用外,還有這種方式


去年Jerry的C4C開發團隊同事,Yang Joey曾經寫過一篇文章:SAP移動應用解決方案之一:HTML5應用 + Cordova = 平臺相關的混合應用,介紹了SAP Cloud for Customer的移動端應用是怎么基于開源項目Cordova創建的,當時文章曾經提及,使用Cordova打包成的移動應用,實際上運行在移動平臺的WebView里。而React-Native則有著和Cordova完全不同的設計理念。


在SAP除了使用Cordova生產移動應用外,還有這種方式


關于這兩種技術的比較,網上有很多的文章,大家根據關鍵字“React-Native Cordova”搜索就行了,比如這篇:

https://www.toptal.com/mobile/comparing-react-native-to-cordova


在SAP除了使用Cordova生產移動應用外,還有這種方式


Jerry是按照React-Native中文網站一步一步操作的,過程中遇到一些問題,全都是和Android平臺相關的,React-Native官網沒有提及,最后靠Google都順利解決了。


在SAP除了使用Cordova生產移動應用外,還有這種方式


Could not resolve project: react-native-camera


在SAP除了使用Cordova生產移動應用外,還有這種方式


Google找到一個鏈接: https://github.com/react-native-community/react-native-camera/blob/master/docs/migrationV2.md#android

需要在應用的android/app/build.gradle文件里添加一行配置:missingDimensionStrategy 'react-native-camera', 'general'


在SAP除了使用Cordova生產移動應用外,還有這種方式


com.android.builder.testing.api.DeviceException: No connected devices!


在SAP除了使用Cordova生產移動應用外,還有這種方式


這報錯信息很清楚,React-Native cli不知道應該將打好包的應用安裝在什么地方。解決方法也很容易,要么啟動一個Android模擬器,要么用USB連接真機。

用AVD manager啟動一個模擬器:


在SAP除了使用Cordova生產移動應用外,還有這種方式


然后重新執行react-native run-android, 就能將應用安裝到模擬器上了。


在SAP除了使用Cordova生產移動應用外,還有這種方式


或者用USB連接手機,打開手機上的USB調試選項:


在SAP除了使用Cordova生產移動應用外,還有這種方式


一樣能夠通過react-native run-android將應用直接裝到手機上:


在SAP除了使用Cordova生產移動應用外,還有這種方式


Failed to install the following Android SDK packages as some licences have not been accepted.


在SAP除了使用Cordova生產移動應用外,還有這種方式


這個錯也容易解決,執行sdkmanager.bat --licenses, 一路選擇Y接受所有的licenses即可。


在SAP除了使用Cordova生產移動應用外,還有這種方式


cannot find symbol import androidx.annotation.Nullable;


在SAP除了使用Cordova生產移動應用外,還有這種方式


編譯錯誤。在應用的android文件夾的gradle.properties配置文件里,增加下面兩條配置記錄:
android.useAndroidX=true
android.enableJetifier=true


在SAP除了使用Cordova生產移動應用外,還有這種方式


之后這個編譯錯誤就沒有了。


在SAP除了使用Cordova生產移動應用外,還有這種方式


因為Leo開發的這個React-Native應用里面可以用JavaScript代碼調用手機攝像頭,Jerry覺得非常神奇,出于好奇,打開Leo的代碼學習了一下。

從react-native-camera庫里導出RNCamera組件:


在SAP除了使用Cordova生產移動應用外,還有這種方式


到React-Native應用文件夾node_modules下查看RNCamera的實現,發現果然是根據移動操作系統的類型分別作了處理。如果是Android平臺,使用攝像頭對應的權限為:PermissionsAndroid.PERMISSIONS.CAMERA


在SAP除了使用Cordova生產移動應用外,還有這種方式


在Android平臺下使用攝像頭的Java代碼,存放在對應的android文件夾里。


在SAP除了使用Cordova生產移動應用外,還有這種方式


Jerry以前使用Cordova生產移動移動時,曾經研究過Cordova應用里的JavaScript代碼是如何調用Android平臺上原生的Java代碼的,也在SAP社區上寫了一些文章:

https://blogs.sap.com/2017/08/18/step-by-step-to-create-a-custom-cordova-plugin-for-android-and-consume-it-in-your-ui5-application/

這篇文章介紹的是如果發現Cordova提供的標準插件不能滿足我們的需求時,我們可以用Java開發自定義的Cordova插件,然后在JavaScript代碼里調用。


在SAP除了使用Cordova生產移動應用外,還有這種方式


Cordova里JavaScript代碼調用Java代碼的原理,Jerry在這三篇SAP社區博客里介紹過:

  • How is OData request routed to Offline data store by Odata offline plugin
  • How is JavaScript code in OData offline plugin delegated to native Java code in Android
  • How is OData offline store opened in Android platform

至于React-Native應用里的JavaScript代碼是否通過同樣的原理調用Java代碼,Jerry還沒有時間去研究,因為我下一步需要弄清楚如何使用React-Native基于Android平臺打一個可以安裝的apk文件出來,這樣才能分發給其他同事測試。

感謝閱讀。

更多閱讀

  • SAP移動應用解決方案之一:HTML5應用 + Cordova = 平臺相關的混合應用
  • SAP Fiori應用的三種部署方式

要獲取更多Jerry的原創文章,請關注公眾號"汪子熙":



在SAP除了使用Cordova生產移動應用外,還有這種方式

向AI問一下細節

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

AI

台东市| 南投市| 新晃| 涿州市| 定陶县| 鄢陵县| 晋城| 丹东市| 阿克苏市| 阿勒泰市| 遂宁市| 宕昌县| 双鸭山市| 南乐县| 麻江县| 满城县| 辽阳县| 龙南县| 呈贡县| 潞西市| 南投市| 天全县| 北辰区| 桃园县| 临夏市| 富民县| 连州市| 苍山县| 嘉荫县| 榆林市| 仁化县| 东台市| 嘉定区| 巩留县| 黔西县| 安乡县| 射阳县| 剑阁县| 绥中县| 溆浦县| 乌苏市|