瀏覽代碼

update: changelog with 6.2.1

ryanemax 1 周之前
父節點
當前提交
5b3eb789ac
共有 2 個文件被更改,包括 89 次插入77 次删除
  1. 86 0
      CHANGELOG_6.2.1.md
  2. 3 77
      README.md

+ 86 - 0
CHANGELOG_6.2.1.md

@@ -0,0 +1,86 @@
+# TODOLIST ISSUE
+
+
+## 问题:Capacitor由于js eval执行错误导致无法通信
+### 问题描述
+- 6.2.1/capacitor/src/main/java/com/getcapacitor/JSInjector.java
+    - 暂时屏蔽了capacitor js插入
+        - 此处执行js正常,但是由于后续.eval错误导致程序报错,不停重启
+        - getScriptString()函数
+            - 注释的嵌入代码部分,让js识别为android环境,但是后续.eval执行无效导致报错
+            - 需要修复WebExtensionPortProxy.eval时同时开启
+### 临时方案
+- 暂时屏蔽 6.2.1/capacitor/src/main/java/com/getcapacitor/JSInjector.java
+    - getScriptString() 插件引用JS部分
+- 确保后续执行正常,至少可以用纯web版geckoview
+    - 问题:@capacitor会识别为web环境,部分插件,需要通过给localStorage传值实现
+
+
+
+# CHANGELOG
+
+
+## fix: Android TV support with armeabi-v7a
+- 安卓TV,安装apk,启动过了splash直接停止,无法运行
+    - 查看日志:无任何日志
+    - 已经测试:
+        - 是否程序错误安卓不能运行?否,可以运行
+            - 安卓手机安装正常运行
+        - 是否不兼容geckoview?否,是支持的
+            - 安卓电视,安装LightningBrowser正常加载geckoview访问angular网页
+        - 是否由于ISSUE 1报错导致?否,根本没有MainActivity.java
+            - 日志中空消息,根本没有启动apk
+        - 是否是Debug版本导致?否,正式打包签名Release,仍然不能启动
+        - 是否是第三方库架构不是arm64?确实不是arm64,对应的arm32位库
+            - 测试:adb -s 192.168.2.8:5555 shell getprop ro.product.cpu.abi 
+            - 结果:armeabi-v7a,不是arm64-v8a
+    - 原因分析:暂无
+    - 解决方案:直接用32位arm库
+        - 解决armeabi-v7a库问题
+            - 直接用armeabi-v7a库,因为64位兼容32的库
+
+
+## upgrade: 5.7.2 to 6.2.1
+- 将web-media项目,覆盖官方5.7.0,查看变化。
+- 在6.2.1文件中逐个修改差异文件
+
+### 复制新文件
+``` bash
+mkdir -p 6.2.1/capacitor/src/main/java/com/getcapacitor/httpserver/
+
+cp node_modules/@web-media/capacitor-geckoview/capacitor/src/main/java/com/getcapacitor/Delegates.java 6.2.1/capacitor/src/main/java/com/getcapacitor/Delegates.java
+cp node_modules/@web-media/capacitor-geckoview/capacitor/src/main/java/com/getcapacitor/IPostMessage.java 6.2.1/capacitor/src/main/java/com/getcapacitor/IPostMessage.java
+cp node_modules/@web-media/capacitor-geckoview/capacitor/src/main/java/com/getcapacitor/WebExtensionPortProxy.java 6.2.1/capacitor/src/main/java/com/getcapacitor/WebExtensionPortProxy.java
+cp node_modules/@web-media/capacitor-geckoview/capacitor/src/main/java/com/getcapacitor/WebviewExtension.java 6.2.1/capacitor/src/main/java/com/getcapacitor/WebviewExtension.java
+cp node_modules/@web-media/capacitor-geckoview/capacitor/src/main/java/com/getcapacitor/cordova/CapacitorCordovaGeckoViewCookieManager.java 6.2.1/capacitor/src/main/java/com/getcapacitor/cordova/CapacitorCordovaGeckoViewCookieManager.java
+cp node_modules/@web-media/capacitor-geckoview/capacitor/src/main/java/com/getcapacitor/cordova/MockCordovaGeckoviewImpl.java 6.2.1/capacitor/src/main/java/com/getcapacitor/cordova/MockCordovaGeckoviewImpl.java
+cp node_modules/@web-media/capacitor-geckoview/capacitor/src/main/java/com/getcapacitor/httpserver/SimpleHttpServer.java 6.2.1/capacitor/src/main/java/com/getcapacitor/httpserver/SimpleHttpServer.java
+```
+### 修改差异文件
+
+#### Changed Files 5.7.0
+- 修改文件
+``` bash
+modified:   5.7.0/capacitor/build.gradle
+modified:   5.7.0/capacitor/src/main/assets/native-bridge.js
+modified:   5.7.0/capacitor/src/main/java/com/getcapacitor/Bridge.java
+modified:   5.7.0/capacitor/src/main/java/com/getcapacitor/CapConfig.java
+modified:   5.7.0/capacitor/src/main/java/com/getcapacitor/MessageHandler.java
+modified:   5.7.0/capacitor/src/main/java/com/getcapacitor/cordova/MockCordovaInterfaceImpl.java
+modified:   5.7.0/capacitor/src/main/java/com/getcapacitor/cordova/MockCordovaWebViewImpl.java
+modified:   5.7.0/capacitor/src/main/java/com/getcapacitor/plugin/CapacitorCookies.java
+modified:   5.7.0/capacitor/src/main/java/com/getcapacitor/plugin/CapacitorHttp.java
+modified:   5.7.0/capacitor/src/main/res/layout/bridge_layout_main.xml
+modified:   5.7.0/capacitor/src/main/res/layout/fragment_bridge.xml
+```
+
+- 新增文件
+``` bash
+new file:   5.7.0/capacitor/src/main/java/com/getcapacitor/Delegates.java
+new file:   5.7.0/capacitor/src/main/java/com/getcapacitor/IPostMessage.java
+new file:   5.7.0/capacitor/src/main/java/com/getcapacitor/WebExtensionPortProxy.java
+new file:   5.7.0/capacitor/src/main/java/com/getcapacitor/WebviewExtension.java
+new file:   5.7.0/capacitor/src/main/java/com/getcapacitor/cordova/CapacitorCordovaGeckoViewCookieManager.java
+new file:   5.7.0/capacitor/src/main/java/com/getcapacitor/cordova/MockCordovaGeckoviewImpl.java
+new file:   5.7.0/capacitor/src/main/java/com/getcapacitor/httpserver/SimpleHttpServer.java
+```

+ 3 - 77
README.md

@@ -1,13 +1,12 @@
 # Capacitor Geckoview浏览器支持插件
 
-
-
 # 迁移重点
 
 - Geckoview 不支持直接evalJS(<jscode>)运行JS代码
     - 需要通过消息气泡重新实现
         - src/main/java/com/getcapacitor/WebExtensionPortProxy.java
         - src/main/java/com/getcapacitor/MessageHandler.java
+- Geckoview 默认是arm64库,需要改为32位确保兼容性
 
 ## 开发调试
 ``` bash
@@ -36,79 +35,6 @@ apksigner sign --ks ../com.fmode.stv.caipu.keystore --ks-pass pass:caipu666 --ks
     api "org.mozilla.geckoview:geckoview-armeabi-v7a:123.0.20240304104836"
 ```
 
-# 变更记录
-## TODOLIST ISSUE
-### ISSUE 1 
-- 6.2.1/capacitor/src/main/java/com/getcapacitor/JSInjector.java
-    - 暂时屏蔽了capacitor js插入
-    - 此处执行js正常,但是由于后续.eval错误导致程序报错,不停重启
-    - getScriptString()函数
-         - 注释的嵌入代码部分,让js识别为android环境,但是后续.eval执行无效导致报错
-         - 需要修复WebExtensionPortProxy.eval时同时开启
-
-### ISSUE 2
-- 安卓TV,安装apk,启动过了splash直接停止,无法运行
-    - 查看日志:无任何日志
-    - 已经测试:
-        - 是否程序错误安卓不能运行?否,可以运行
-            - 安卓手机安装正常运行
-        - 是否不兼容geckoview?否,是支持的
-            - 安卓电视,安装LightningBrowser正常加载geckoview访问angular网页
-        - 是否由于ISSUE 1报错导致?否,根本没有MainActivity.java
-            - 日志中空消息,根本没有启动apk
-        - 是否是Debug版本导致?否,正式打包签名Release,仍然不能启动
-        - 是否是第三方库架构不是arm64?确实不是arm64,对应的arm32位库
-            - 测试:adb -s 192.168.2.8:5555 shell getprop ro.product.cpu.abi 
-            - 结果:armeabi-v7a,不是arm64-v8a
-    - 原因分析:暂无
-    - 解决方案:直接用32位arm库
-        - 解决armeabi-v7a库问题
-            - 直接用armeabi-v7a库,因为64位兼容32的库
-
-## Upgrade to 6.2.1
-- 将web-media项目,覆盖官方5.7.0,查看变化。
-- 在6.2.1文件中逐个修改差异文件
-
-### 复制新文件
-``` bash
-mkdir -p 6.2.1/capacitor/src/main/java/com/getcapacitor/httpserver/
-
-cp node_modules/@web-media/capacitor-geckoview/capacitor/src/main/java/com/getcapacitor/Delegates.java 6.2.1/capacitor/src/main/java/com/getcapacitor/Delegates.java
-cp node_modules/@web-media/capacitor-geckoview/capacitor/src/main/java/com/getcapacitor/IPostMessage.java 6.2.1/capacitor/src/main/java/com/getcapacitor/IPostMessage.java
-cp node_modules/@web-media/capacitor-geckoview/capacitor/src/main/java/com/getcapacitor/WebExtensionPortProxy.java 6.2.1/capacitor/src/main/java/com/getcapacitor/WebExtensionPortProxy.java
-cp node_modules/@web-media/capacitor-geckoview/capacitor/src/main/java/com/getcapacitor/WebviewExtension.java 6.2.1/capacitor/src/main/java/com/getcapacitor/WebviewExtension.java
-cp node_modules/@web-media/capacitor-geckoview/capacitor/src/main/java/com/getcapacitor/cordova/CapacitorCordovaGeckoViewCookieManager.java 6.2.1/capacitor/src/main/java/com/getcapacitor/cordova/CapacitorCordovaGeckoViewCookieManager.java
-cp node_modules/@web-media/capacitor-geckoview/capacitor/src/main/java/com/getcapacitor/cordova/MockCordovaGeckoviewImpl.java 6.2.1/capacitor/src/main/java/com/getcapacitor/cordova/MockCordovaGeckoviewImpl.java
-cp node_modules/@web-media/capacitor-geckoview/capacitor/src/main/java/com/getcapacitor/httpserver/SimpleHttpServer.java 6.2.1/capacitor/src/main/java/com/getcapacitor/httpserver/SimpleHttpServer.java
-```
-### 修改差异文件
-
-
-## Changed Files 5.7.0
-- 修改文件
-``` bash
-modified:   5.7.0/capacitor/build.gradle
-modified:   5.7.0/capacitor/src/main/assets/native-bridge.js
-modified:   5.7.0/capacitor/src/main/java/com/getcapacitor/Bridge.java
-modified:   5.7.0/capacitor/src/main/java/com/getcapacitor/CapConfig.java
-modified:   5.7.0/capacitor/src/main/java/com/getcapacitor/MessageHandler.java
-modified:   5.7.0/capacitor/src/main/java/com/getcapacitor/cordova/MockCordovaInterfaceImpl.java
-modified:   5.7.0/capacitor/src/main/java/com/getcapacitor/cordova/MockCordovaWebViewImpl.java
-modified:   5.7.0/capacitor/src/main/java/com/getcapacitor/plugin/CapacitorCookies.java
-modified:   5.7.0/capacitor/src/main/java/com/getcapacitor/plugin/CapacitorHttp.java
-modified:   5.7.0/capacitor/src/main/res/layout/bridge_layout_main.xml
-modified:   5.7.0/capacitor/src/main/res/layout/fragment_bridge.xml
-```
-
-- 新增文件
-``` bash
-new file:   5.7.0/capacitor/src/main/java/com/getcapacitor/Delegates.java
-new file:   5.7.0/capacitor/src/main/java/com/getcapacitor/IPostMessage.java
-new file:   5.7.0/capacitor/src/main/java/com/getcapacitor/WebExtensionPortProxy.java
-new file:   5.7.0/capacitor/src/main/java/com/getcapacitor/WebviewExtension.java
-new file:   5.7.0/capacitor/src/main/java/com/getcapacitor/cordova/CapacitorCordovaGeckoViewCookieManager.java
-new file:   5.7.0/capacitor/src/main/java/com/getcapacitor/cordova/MockCordovaGeckoviewImpl.java
-new file:   5.7.0/capacitor/src/main/java/com/getcapacitor/httpserver/SimpleHttpServer.java
-```
 
-# Powered By
+# Powered By
+- Fmode Inc.