Ionic Android 已签名的产品应用程序确实 REST 请求失败/死了
Ionic Android signed prod app does REST request fails / dead
不确定发生了什么。
在为 android 构建我的应用程序时
ionic cordova run android
我手动将它部署到 phone 它运行良好,
我可以在设备和我的后端服务器之间跟踪 https
。
当我对应用程序进行代码签名时
ionic cordova build android --prod --release
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore appStoreKey.jks ./platforms/android/app/build/outputs/apk/release/app-release-unsigned.apk MyApp
应用程序和后端之间没有流量。我无法登录该应用程序,它根本不会超出登录视图并且不允许任何外部流量。
这是我的 config.xml
:
<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />
<allow-navigation href="http://*/*" />
<allow-navigation href="https://*/*" />
恕我直言,这应该允许应用程序查看所有内容(这不是默认选项,只是试图解决这个问题)。
我错过了什么吗?我什至无法使用 Chrome 进行调试,因为它不是在调试模式下构建的。我不知道可能出了什么问题以及如何解决这个问题。
iOS 在调试和生产模式下都很有魅力。
事实证明 Android Cordova 中有一个功能(或者可能是一个错误)。基于@AbdulAzeem 和 blogpost 的顶部,事实证明必须修改 CordovaWebViewClient.java
中的 onReceivedSslError
才能启用 iOS 仍接受的证书。我的理由是,由于 Apple 更加重视服务和应用程序质量,我可以接受 Apple 接受但 Cordova 失败的任何证书。无论如何,link 中显示的修复程序仍然适用于 Android 9.
编辑
platforms/android/CordovaLib/src/org/apache/cordova/engine/SystemWebViewClient.java
将 237
添加评论和代码
// super.onReceivedSslError(view, handler, error);
// add code
handler.proceed();
return;
不确定发生了什么。
在为 android 构建我的应用程序时
ionic cordova run android
我手动将它部署到 phone 它运行良好,
我可以在设备和我的后端服务器之间跟踪 https
。
当我对应用程序进行代码签名时
ionic cordova build android --prod --release
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore appStoreKey.jks ./platforms/android/app/build/outputs/apk/release/app-release-unsigned.apk MyApp
应用程序和后端之间没有流量。我无法登录该应用程序,它根本不会超出登录视图并且不允许任何外部流量。
这是我的 config.xml
:
<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />
<allow-navigation href="http://*/*" />
<allow-navigation href="https://*/*" />
恕我直言,这应该允许应用程序查看所有内容(这不是默认选项,只是试图解决这个问题)。 我错过了什么吗?我什至无法使用 Chrome 进行调试,因为它不是在调试模式下构建的。我不知道可能出了什么问题以及如何解决这个问题。
iOS 在调试和生产模式下都很有魅力。
事实证明 Android Cordova 中有一个功能(或者可能是一个错误)。基于@AbdulAzeem 和 blogpost 的顶部,事实证明必须修改 CordovaWebViewClient.java
中的 onReceivedSslError
才能启用 iOS 仍接受的证书。我的理由是,由于 Apple 更加重视服务和应用程序质量,我可以接受 Apple 接受但 Cordova 失败的任何证书。无论如何,link 中显示的修复程序仍然适用于 Android 9.
编辑
platforms/android/CordovaLib/src/org/apache/cordova/engine/SystemWebViewClient.java
将 237 添加评论和代码
// super.onReceivedSslError(view, handler, error);
// add code
handler.proceed();
return;