tkyaji / cordova-plugin-crypt-file

This plugin to encrypt the source files.
Apache License 2.0
178 stars 116 forks source link

Support for Cordova Android 10 template. Fixes #99, #97, #92 AND now also for IOS #91 #100

Open weareu opened 2 years ago

weareu commented 2 years ago

Should work with both Android 9 and 10 with insecure file mode and normal Android 10 template. Requires AndroidX. Supports new Gradle.

weareu commented 2 years ago

This includes prepare script from #85

Liquid-NeoN commented 2 years ago

Please merge this!

LongTimeNoTea commented 2 years ago

Thanks! How can i install the modified plugin ?

weareu commented 2 years ago

Best bet for now would be: cordova plugin add https://github.com/weareu/cordova-plugin-crypt-file.git or ionic cordova plugin add https://github.com/weareu/cordova-plugin-crypt-file.git

depending on your platform.

onuh commented 2 years ago

Thanks a bunch! This works!

nandarbin commented 2 years ago

not working on cordova 9 and cordova-android 10, is there any other solution ?,

onuh commented 2 years ago

not working on cordova 9 and cordova-android 10, is there any other solution ?,

Please use this to install plugin. It works for me:

Cordova plugin add https://github.com/weareu/cordova-plugin-crypt-file.git

nandarbin commented 2 years ago

gagal

I have used 'Cordova plugin add https://github.com/weareu/cordova-plugin-crypt-file.git' , but still not working normally, what should I adjust to make it work normally

onuh commented 2 years ago

gagal

I have used 'Cordova plugin add https://github.com/weareu/cordova-plugin-crypt-file.git' , but still not working normally, what should I adjust to make it work normally

Then build the project for your platform. After that, install your apk on an actual device.

That is what I used in my app here: https://smartchurchattendance.com.ng/smartChurch/downloads/Smart_Church_Mobile_1_2.0.apk

onuh commented 2 years ago

gagal

I have used 'Cordova plugin add https://github.com/weareu/cordova-plugin-crypt-file.git' , but still not working normally, what should I adjust to make it work normally

Ok seems there was something else I did. But is your build failing?

npm I jetifier Cordova plugin add cordova-plugin-androidx-adapter npx jetifier

nandarbin commented 2 years ago

photo_2022-05-12_13-46-17

after I tried it on a smartphone, it still doesn't work, no error appears when building the apk

weareu commented 2 years ago

Both platforms work for us, but I suspect you are using the ionic webview plugin. Remove this if it is the case. The webview plugin has no way to hook into.

nandarbin commented 2 years ago

i am using pure cordova without ionic, with cordova 9 and cordova-android 10.0.0

michioxd commented 2 years ago

Can u fix it on cordova 11? it got an error: Application Error net::ERR_FILE_NOT_FOUND (file:///android_assets/www/++/index.html) Thanks!

onuh commented 2 years ago

Share your package.json file. Are you correctly installing the plugin?

michioxd commented 2 years ago

Share your package.json file. Are you correctly installing the plugin?

I used cordova plugin add https://github.com/weareu/cordova-plugin-crypt-file.git to install this Screenshot_20220522-142806

My package.json { "name": "hidden", "version": "1.0.0", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "build": "cordova build --buildConfig --release android && jarsigner -storepass \"xxxxx\" -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore android_sign.keystore platforms\\android\\app\\build\\outputs\\apk\\release\\app-release-unsigned.apk mfs", "debug": "cordova build --buildConfig --debug android && adb install platforms\\android\\app\\build\\outputs\\apk\\debug\\app-debug.apk" }, "license": "Apache-2.0", "devDependencies": { "cordova-android": "^10.1.2", "cordova-android-support-gradle-release": "^3.0.1", "cordova-browser": "^6.0.0", "cordova-plugin-crypt-file": "github:weareu/cordova-plugin-crypt-file", "cordova-plugin-device": "^2.1.0", "cordova-plugin-inappbrowser": "^5.0.0", "webpack": "^5.72.1" }, "cordova": { "platforms": [ "browser", "android" ], "plugins": { "cordova-plugin-inappbrowser": {}, "cordova-android-support-gradle-release": { "ANDROID_SUPPORT_VERSION": "27.+" }, "cordova-plugin-device": {}, "cordova-plugin-crypt-file": {} } }, "dependencies": { "cordova-plugin-app-exit": "^0.0.2" } }

My config.xml `<?xml version="1.0" encoding="utf-8"?>

`
michioxd commented 2 years ago

I tried rename index file to .html but it doesn't working...

onuh commented 2 years ago

What's this content you referenced? Does the file actually exists?src="R3B93HZJ2910_MAJORX3_PRECOMPILED_390AP.HTM"

Can you remove that and rebuild project?

michioxd commented 2 years ago

What's this content you referenced? Does the file actually exists?src="R3B93HZJ2910_MAJORX3_PRECOMPILED_390AP.HTM"

Can you remove that and rebuild project?

image

that file here i tried change it back to index.html but it didn't work too... (net::ERR_FILE_NOT_FOUND (file:///android_assets/www/+++/index.html))

onuh commented 2 years ago

in the directory where you build your project npm i jetifier After that run successfully, run this command: Cordova plugin add cordova-plugin-androidx-adapter Then, do this afterwards: npx jetifier

Rebuild your project

michioxd commented 2 years ago

in the directory where you build your project npm i jetifier After that run successfully, run this command: Cordova plugin add cordova-plugin-androidx-adapter Then, do this afterwards: npx jetifier

Rebuild your project

git-cmd_AQcZTFGb69

still didn't work :( (rebuilded (debug))

onuh commented 2 years ago

Please try debugging to know if it's crypt file plugin that's causing this issue. Uninstall the plugin and build your app normally. If problem doesn't occur, then it's certainly the plugin

michioxd commented 2 years ago

Please try debugging to know if it's crypt file plugin that's causing this issue. Uninstall the plugin and build your app normally. If problem doesn't occur, then it's certainly the plugin

ah yes after i install this plugin, my app cannot be start, i tried other plugin (cordova-plugin-crypt-file-android) and it still got an same error

192kobayashi commented 1 year ago

@weareu

Thank you for your maintenace.

However, now my app is successfully encrypted, but I'm having trouble decrypting it. Please help me.

my App

steps

  1. cordova plugin add https://github.com/weareu/cordova-plugin-crypt-file.git
  2. Check existence in plugins directory
  3. npx cordova platform add android@10.1.2
  4. npx cordova run android
  5. my app is installed on my device
  6. The screen shows the following error.
    Application Error net: ERR_FILE_NOT_FOUND(file:///android_asset/www/+++/index.html)

decrypt not fire. What's wrong?

preference in config.xml

    <preference name="Orientation" value="portrait" />
    <preference name="KeepRunning" value="true" />
    <preference name="InAppBrowserStorageEnabled" value="false" />
    <preference name="SuppressesIncrementalRendering" value="true" />
    <preference name="SplashScreenDelay" value="10000" />
    <preference name="SplashScreen" value="screen" />
    <preference name="android-minSdkVersion" value="22" />
    <preference name="ShowSplashScreenSpinner" value="false" />
    <preference name="deployment-target" value="14.0" />
    <preference name="DisallowOverscroll" value="true" />
    <preference name="FadeSplashScreen" value="true" />
    <preference name="scheme" value="app" />
    <preference name="hostname" value="localhost" />
    <preference name="ScrollEnabled" value="true" />
    <preference name="android-targetSdkVersion" value="31" />
    <preference name="AndroidInsecureFileModeEnabled" value="true" />

adb logcat

adb logcat
08-10 11:09:02.501  1074  1074 I CordovaActivity: Apache Cordova native platform version 10.1.2 is starting
08-10 11:09:02.501  1074  1074 D CordovaActivity: CordovaActivity.onCreate()
08-10 11:09:02.531  1074  1074 I WebViewFactory: Loading com.google.android.webview version 103.0.5060.129 (code 506012933)
08-10 11:09:02.547  1074  1074 W com.MY.APP: Accessing hidden method Landroid/os/Trace;->isTagEnabled(J)Z (unsupported, reflection, allowed)
08-10 11:09:02.547  1074  1074 W com.MY.APP: Accessing hidden method Landroid/os/Trace;->traceBegin(JLjava/lang/String;)V (unsupported, reflection, allowed)
08-10 11:09:02.547  1074  1074 W com.MY.APP: Accessing hidden method Landroid/os/Trace;->traceEnd(J)V (unsupported, reflection, allowed)
08-10 11:09:02.547  1074  1074 W com.MY.APP: Accessing hidden method Landroid/os/Trace;->asyncTraceBegin(JLjava/lang/String;I)V (unsupported, reflection, allowed)
08-10 11:09:02.547  1074  1074 W com.MY.APP: Accessing hidden method Landroid/os/Trace;->asyncTraceEnd(JLjava/lang/String;I)V (unsupported, reflection, allowed)
08-10 11:09:02.551  1074  1074 I cr_WVCFactoryProvider: Loaded version=103.0.5060.129 minSdkVersion=29 isBundle=true multiprocess=true packageId=2
08-10 11:09:02.576  1074  1074 I cr_LibraryLoader: Successfully loaded native library
08-10 11:09:02.577  1074  1074 I cr_CachingUmaRecorder: Flushed 9 samples from 9 histograms.
08-10 11:09:02.603  1578  9596 D CompatibilityChangeReporter: Compat change id reported: 135634846; UID 10329; state: DISABLED
08-10 11:09:02.603  1578  2053 D CompatibilityChangeReporter: Compat change id reported: 143937733; UID 10329; state: ENABLED
08-10 11:09:02.626 30513 30513 D Zygote  : Forked child process 1130
08-10 11:09:02.628  1578  2053 I ActivityManager: Start proc 1130:com.google.android.webview:sandboxed_process0:org.chromium.content.app.SandboxedProcessService0:0/u0i123 for  {com.MY.APP/org.chromium.content.app.SandboxedProcessService0:0}
08-10 11:09:02.642  1130  1130 W ocessService0:: Using default instruction set features for ARM CPU variant (cortex-a9) using conservative defaults
08-10 11:09:02.648   565   565 D BoundBrokerSvc: onBind: Intent { act=com.google.android.gms.safetynet.service.START pkg=com.google.android.gms }
08-10 11:09:02.648   565   565 D BoundBrokerSvc: Loading bound service for intent: Intent { act=com.google.android.gms.safetynet.service.START pkg=com.google.android.gms }
08-10 11:09:02.653  1130  1130 E ocessService0:: Not starting debugger since process cannot load the jdwp agent.
08-10 11:09:02.656  1130  1130 D ProcessState: Binder ioctl to enable oneway spam detection failed: Invalid argument
08-10 11:09:02.679  1130  1130 D CompatibilityChangeReporter: Compat change id reported: 171979766; UID 99123; state: ENABLED
08-10 11:09:02.689  1074  1074 D CompatibilityChangeReporter: Compat change id reported: 171228096; UID 10329; state: ENABLED
08-10 11:09:02.691  1130  1130 D NetworkSecurityConfig: No Network Security Config specified, using platform default
08-10 11:09:02.691  1130  1130 D NetworkSecurityConfig: No Network Security Config specified, using platform default
08-10 11:09:02.693  1130  1130 I cr_WebViewApkApp: Launched version=103.0.5060.129 minSdkVersion=29 isBundle=true processName=com.google.android.webview:sandboxed_process0:org.chromium.content.app.SandboxedProcessService0:0
08-10 11:09:02.696  1130  1130 I cr_ChildProcessService: Creating new ChildProcessService pid=1130
08-10 11:09:02.698  1578  9596 D ConnectivityService: requestNetwork for uid/pid:10329/1074 activeRequest: null callbackRequest: 6395 [NetworkRequest [ REQUEST id=6396, [ Capabilities: INTERNET&NOT_RESTRICTED&TRUSTED&NOT_VCN_MANAGED Uid: 10329 RequestorUid: 10329 RequestorPkg: com.MY.APP UnderlyingNetworks: Null] ]] callback flags: 0 order: 2147483647
08-10 11:09:02.699  1578  2299 D ConnectivityService: NetReassign [6396 : null → 105]
08-10 11:09:02.700  1578  2291 D WifiNetworkFactory: got request NetworkRequest [ REQUEST id=6396, [ Capabilities: INTERNET&NOT_RESTRICTED&TRUSTED&NOT_VCN_MANAGED Uid: 10329 RequestorUid: 10329 RequestorPkg: com.MY.APP UnderlyingNetworks: Null] ]
08-10 11:09:02.700  1578  2291 D UntrustedWifiNetworkFactory: got request NetworkRequest [ REQUEST id=6396, [ Capabilities: INTERNET&NOT_RESTRICTED&TRUSTED&NOT_VCN_MANAGED Uid: 10329 RequestorUid: 10329 RequestorPkg: com.MY.APP UnderlyingNetworks: Null] ]
08-10 11:09:02.700  1578  2291 D OemPaidWifiNetworkFactory: got request NetworkRequest [ REQUEST id=6396, [ Capabilities: INTERNET&NOT_RESTRICTED&TRUSTED&NOT_VCN_MANAGED Uid: 10329 RequestorUid: 10329 RequestorPkg: com.MY.APP UnderlyingNetworks: Null] ]
08-10 11:09:02.703  1578  2299 D ConnectivityService: NetReassign [no changes]
08-10 11:09:02.720  2700  2700 D ShLiveWallpaper: VideoEngine#onVisibilityChanged() called. visible is [false]
08-10 11:09:02.720  2700  2700 D ShLiveWallpaper: [MediaPlayer]VideoEngine#onReceive() [onVisibilityChanged(false)] -> mIsPlayingMovie is [false]
08-10 11:09:02.720  2700  2745 D ShLiveWallpaper: VideoEngine#pauseEglBmp() called.
08-10 11:09:02.720  2700  2745 D ShLiveWallpaper: [EGL]WPImageDrawerf#unprepareDrawWithOpenGL() [12288]
08-10 11:09:02.722  1074  1074 V AutofillManager: receiver results: flags=7 enabled=true, enabledForAugmentedOnly: false
08-10 11:09:02.724  1271  1313 I SurfaceFlinger: change before DesiredDisplayModeSpecs  defaultMode : 0, primaryRefreshRateMin = 0.000000, primaryRefreshRateMax = 60.000000, appRequestRefreshRateMin = 0.000000, appRequestRefreshRateMax = 60.000000
08-10 11:09:02.724  1271  1313 I SurfaceFlinger: change after DesiredDisplayModeSpecs  defaultMode : 0, primaryRefreshRateMin = 0.000000, primaryRefreshRateMax = 60.000000, appRequestRefreshRateMin = 0.000000, appRequestRefreshRateMax = 60.000000
08-10 11:09:02.741 30437 30437 I A       : (REDACTED) onApplyWindowInsets: systemWindowInsets=%s
08-10 11:09:02.741 30437 30437 I A       : (REDACTED) onApplyWindowInsets: systemWindowInsets=%s
08-10 11:09:02.776  1074  1074 W com.MY.APP: Accessing hidden method Landroid/view/View;->computeFitSystemWindows(Landroid/graphics/Rect;Landroid/graphics/Rect;)Z (unsupported, reflection, allowed)
08-10 11:09:02.777  1074  1074 W com.MY.APP: Accessing hidden method Landroid/view/ViewGroup;->makeOptionalFitsSystemWindows()V (unsupported, reflection, allowed)
08-10 11:09:02.782  1162  2275 E libnav  : CablComputeBacklightLevel(): UpdateType = DifferentSceneUpdate
08-10 11:09:02.785  1074  1074 D SystemWebViewEngine: CordovaWebView is running on device made by: SHARP
08-10 11:09:02.785  1074  1074 D SystemWebViewEngine: Enabled insecure file access
08-10 11:09:02.789  1074  1074 D PluginManager: init()
08-10 11:09:02.792  1074  1074 D CordovaAllowList: Failed to add origin /+++/index.html
08-10 11:09:02.793  1074  1074 D PluginManager: getPlugin - put: CordovaAllowListPlugin
08-10 11:09:02.793  1074  1074 D PluginManager: startupPlugins: put - AppVersion
08-10 11:09:02.793  1074  1074 D PluginManager: startupPlugins: put - BluetoothLePlugin
08-10 11:09:02.793  1074  1074 D PluginManager: startupPlugins: put - DatePickerPlugin
08-10 11:09:02.793  1074  1074 D PluginManager: startupPlugins: put - Device
08-10 11:09:02.793  1074  1074 D PluginManager: startupPlugins: put - Exit
08-10 11:09:02.803  1074  1074 D FileUtils: Unrecognized extra filesystem identifier: assets
08-10 11:09:02.804  1074  1074 D PluginManager: getPlugin - put: File
08-10 11:09:02.804  1074  1074 D PluginManager: startupPlugins: put - Globalization
08-10 11:09:02.804  1074  1074 D PluginManager: startupPlugins: put - InAppBrowser
08-10 11:09:02.804  1074  1074 D PluginManager: startupPlugins: put - LocalNotification
08-10 11:09:02.804  1074  1074 D PluginManager: startupPlugins: put - Media
08-10 11:09:02.804  1074  1074 D PluginManager: startupPlugins: put - NetworkStatus
08-10 11:09:02.804  1074  1074 D PluginManager: startupPlugins: put - PinCheck
08-10 11:09:02.804  1074  1074 D PluginManager: startupPlugins: put - SecureKeyStore
08-10 11:09:02.845  1074  1074 D PluginManager: getPlugin - put: SplashScreen
08-10 11:09:02.845  1074  1074 D PluginManager: startupPlugins: put - SQLitePlugin
08-10 11:09:02.847  1074  1074 D PluginManager: getPlugin - put: SelectorCordovaPlugin
08-10 11:09:02.847  1074  1074 D PluginManager: startupPlugins: put - InjectorDataUpload
08-10 11:09:02.847  1074  1074 D PluginManager: startupPlugins: put - DateTimePicker
08-10 11:09:02.847  1074  1074 D PluginManager: startupPlugins: put - Badge
08-10 11:09:02.847  1074  1074 D PluginManager: startupPlugins: put - CDVIonicKeyboard
08-10 11:09:02.849  1074  1074 D Diagnostic: initialize()
08-10 11:09:02.854  1074  1074 D PluginManager: getPlugin - put: Diagnostic
08-10 11:09:02.855  1074  1074 D Diagnostic_Location: initialize()
08-10 11:09:02.857  1074  1074 D PluginManager: getPlugin - put: Diagnostic_Location
08-10 11:09:02.858  1074  1074 D Diagnostic_Bluetooth: initialize()
08-10 11:09:02.862  1074  1074 D PluginManager: getPlugin - put: Diagnostic_Bluetooth
08-10 11:09:02.862  1074  1074 D Diagnostic_Wifi: initialize()
08-10 11:09:02.862  1074  1074 D PluginManager: getPlugin - put: Diagnostic_Wifi
08-10 11:09:02.863  1074  1074 D Diagnostic_Camera: initialize()
08-10 11:09:02.863  1074  1074 D PluginManager: getPlugin - put: Diagnostic_Camera
08-10 11:09:02.863  1074  1074 D Diagnostic_Notifications: initialize()
08-10 11:09:02.863  1074  1074 D PluginManager: getPlugin - put: Diagnostic_Notifications
08-10 11:09:02.864  1074  1074 D Diagnostic_NFC: initialize()
08-10 11:09:02.867  1074  1074 D PluginManager: getPlugin - put: Diagnostic_NFC
08-10 11:09:02.868  1074  1074 D Diagnostic_External_Storage: initialize()
08-10 11:09:02.868  1074  1074 D PluginManager: getPlugin - put: Diagnostic_External_Storage
08-10 11:09:02.868  1074  1074 D PluginManager: startupPlugins: put - MobileAccessibility
08-10 11:09:02.869  1074  1074 D PluginManager: getPlugin - put: DecryptResource
08-10 11:09:02.869  1074  1074 D PluginManager: startupPlugins: put - CoreAndroid
08-10 11:09:02.869  1074  1074 D CordovaWebViewImpl: >>> loadUrl(file:///android_asset/www/+++/index.html)
08-10 11:09:02.873  1074  1131 W com.MY.APP: Accessing hidden method Landroid/media/AudioManager;->getOutputLatency(I)I (unsupported, reflection, allowed)
08-10 11:09:02.880  1074  1131 W cr_media: Requires BLUETOOTH permission
08-10 11:09:02.882  1074  1252 I AdrenoGLES-0: QUALCOMM build                   : 559e78c, Ib9d997268a
08-10 11:09:02.882  1074  1252 I AdrenoGLES-0: Build Date                       : 10/13/20
08-10 11:09:02.882  1074  1252 I AdrenoGLES-0: OpenGL ES Shader Compiler Version: EV031.32.02.02
08-10 11:09:02.882  1074  1252 I AdrenoGLES-0: Local Branch                     :
08-10 11:09:02.882  1074  1252 I AdrenoGLES-0: Remote Branch                    :
08-10 11:09:02.882  1074  1252 I AdrenoGLES-0: Remote Branch                    :
08-10 11:09:02.882  1074  1252 I AdrenoGLES-0: Reconstruct Branch               :
08-10 11:09:02.882  1074  1252 I AdrenoGLES-0: Build Config                     : S P 10.0.7 AArch64
08-10 11:09:02.882  1074  1252 I AdrenoGLES-0: Driver Path                      : /vendor/lib64/egl/libGLESv2_adreno.so
08-10 11:09:02.887  1074  1132 E AndroidProtocolHandler: Unable to open asset URL: file:///android_asset/www/+++/index.html
08-10 11:09:02.890  1074  1252 I AdrenoGLES-0: PFP: 0x016ee190, ME: 0x00000000
08-10 11:09:02.890  1074  1074 D CordovaActivity: Started the activity.
08-10 11:09:02.892  1130  1233 I cr_LibraryLoader: Successfully loaded native library
08-10 11:09:02.892  1130  1233 I cr_CachingUmaRecorder: Flushed 3 samples from 3 histograms.
08-10 11:09:02.896  1074  1252 D hw-ProcessState: Binder ioctl to enable oneway spam detection failed: Invalid argument
08-10 11:09:02.897  1074  1074 D CordovaActivity: Resumed the activity.
08-10 11:09:02.906  1130  1233 W SystemServiceRegistry: No service published for: uimode
08-10 11:09:02.948 14425 14437 I FontLog : Received query name=Google Sans&weight=700&besteffort=false, URI content://com.google.android.gms.fonts [CONTEXT service_id=132 ]
08-10 11:09:02.948 14425 14437 I FontLog : Query [name=Google Sans&weight=700&besteffort=false] resolved to {Google Sans, wdth 100.0, wght 700, ital 0.0, bestEffort false} [CONTEXT service_id=132 ]
08-10 11:09:02.950 14425 14437 I FontLog : Fetch {Google Sans, wdth 100.0, wght 700, ital 0.0, bestEffort false} end status Status{statusCode=SUCCESS, resolution=null} [CONTEXT service_id=132 ]
08-10 11:09:02.957 14425 14437 I FontLog : Pulling font file for id = 50, cache size = 9 [CONTEXT service_id=132 ]
08-10 11:09:02.962 14425 14437 I FontLog : Received query name=Noto Color Emoji Compat&weight=400&besteffort=false, URI content://com.google.android.gms.fonts [CONTEXT service_id=132 ]
08-10 11:09:02.962 14425 14437 I FontLog : Query [name=Noto Color Emoji Compat&weight=400&besteffort=false] resolved to {Noto Color Emoji Compat, wdth 100.0, wght 400, ital 0.0, bestEffort false} [CONTEXT service_id=132 ]
08-10 11:09:02.963 14425 14437 I FontLog : Fetch {Noto Color Emoji Compat, wdth 100.0, wght 400, ital 0.0, bestEffort false} end status Status{statusCode=SUCCESS, resolution=null} [CONTEXT service_id=132 ]
08-10 11:09:02.971 14425 14437 I FontLog : Pulling font file for id = 51, cache size = 6 [CONTEXT service_id=132 ]
08-10 11:09:02.974 14425 14437 I FontLog : Received query name=Google Sans&weight=400&besteffort=false, URI content://com.google.android.gms.fonts [CONTEXT service_id=132 ]
08-10 11:09:02.974 14425 14437 I FontLog : Query [name=Google Sans&weight=400&besteffort=false] resolved to {Google Sans, wdth 100.0, wght 400, ital 0.0, bestEffort false} [CONTEXT service_id=132 ]
08-10 11:09:02.975 14425 14437 I FontLog : Font PFD returned from cache for {Google Sans, wdth 100.0, wght 400, ital 0.0, bestEffort false} [CONTEXT service_id=132 ]
08-10 11:09:02.975 14425 14437 I FontLog : Fetch {Google Sans, wdth 100.0, wght 400, ital 0.0, bestEffort false} end status Status{statusCode=SUCCESS, resolution=null} [CONTEXT service_id=132 ]
08-10 11:09:02.978 14425 14437 I FontLog : Pulling font file for id = 52, cache size = 7 [CONTEXT service_id=132 ]
08-10 11:09:02.983 14425 14437 I FontLog : Received query name=Google Sans&weight=500&besteffort=false, URI content://com.google.android.gms.fonts [CONTEXT service_id=132 ]
08-10 11:09:02.983 14425 14437 I FontLog : Query [name=Google Sans&weight=500&besteffort=false] resolved to {Google Sans, wdth 100.0, wght 500, ital 0.0, bestEffort false} [CONTEXT service_id=132 ]
08-10 11:09:02.984 14425 14437 I FontLog : Font PFD returned from cache for {Google Sans, wdth 100.0, wght 500, ital 0.0, bestEffort false} [CONTEXT service_id=132 ]
08-10 11:09:02.984 14425 14437 I FontLog : Fetch {Google Sans, wdth 100.0, wght 500, ital 0.0, bestEffort false} end status Status{statusCode=SUCCESS, resolution=null} [CONTEXT service_id=132 ]
08-10 11:09:02.987 14425 14437 I FontLog : Pulling font file for id = 53, cache size = 5 [CONTEXT service_id=132 ]
08-10 11:09:03.031  1162  1162 I SDM     : HWCDisplay::GetColorModeCount: Supported color mode count = 1
08-10 11:09:03.031  1162  1162 I SDM     : HWCDisplay::GetColorModes: Color mode = 0 is supported
08-10 11:09:03.049  1074  1097 I OpenGLRenderer: Davey! duration=9222268155772ms; Flags=1, FrameTimelineVsyncId=782121, IntendedVsync=1103881081971759, Vsync=1103881231971753, InputEventId=0, HandleInputStart=1103881241758171, AnimationStart=1103881241773484, PerformTraversalsStart=1103881243187130, DrawStart=1103881268446296, FrameDeadline=1103881098638425, FrameInterval=1103881241614682, FrameStartTime=16666666, SyncQueued=1103881269958067, SyncStart=1103881270145776, IssueDrawCommandsStart=1103881270789213, SwapBuffers=1103881279497338, FrameCompleted=9223372036854775807, DequeueBufferDuration=2640833, QueueBufferDuration=1413282, GpuCompleted=9223372036854775807, SwapBuffersCompleted=1103881281304838, DisplayPresentTime=0,
08-10 11:09:03.082  1074  1074 D CordovaWebViewImpl: onPageDidNavigate(file:///android_asset/www/+++/index.html)
08-10 11:09:03.082  1074  1074 D PluginManager: postMessage: onPageStarted
08-10 11:09:03.083  1074  1074 D SystemWebViewClient: CordovaWebViewClient.onReceivedError: Error code=-1 Description=net::ERR_FILE_NOT_FOUND URL=file:///android_asset/www/+++/index.html
08-10 11:09:03.083  1074  1074 D PluginManager: postMessage: onReceivedError
08-10 11:09:03.089  1208  3658 E ANDR-PERF-LM: ThreadHelper: thread_callback() 145: More than one pending updates!!! This should not happen. MeterMgr should avoid this case.
08-10 11:09:03.094  1578  2042 I ActivityTaskManager: Displayed com.MY.APP/.MainActivity: +848ms
08-10 11:09:03.095  1208  3658 E ANDR-PERF-LM: ThreadHelper: thread_callback() 145: More than one pending updates!!! This should not happen. MeterMgr should avoid this case.
08-10 11:09:03.109  1074  1074 W libc    : Access denied finding property "vendor.perf.gestureflingboost.enable"
08-10 11:09:03.104  1074  1074 W com.MY.APP: type=1400 audit(0.0:22239): avc: denied { read } for name="u:object_r:vendor_scroll_prop:s0" dev="tmpfs" ino=366 scontext=u:r:untrusted_app:s0:c73,c257,c512,c768 tcontext=u:object_r:vendor_scroll_prop:s0 tclass=file permissive=0 app=com.MY.APP
08-10 11:09:03.120  1074  1074 W libc    : Access denied finding property "vendor.perf.gestureflingboost.enable"
08-10 11:09:03.114  1074  1074 W com.MY.APP: type=1400 audit(0.0:22240): avc: denied { read } for name="u:object_r:vendor_scroll_prop:s0" dev="tmpfs" ino=366 scontext=u:r:untrusted_app:s0:c73,c257,c512,c768 tcontext=u:object_r:vendor_scroll_prop:s0 tclass=file permissive=0 app=com.MY.APP
08-10 11:09:03.139  1074  1074 D CordovaWebViewImpl: onPageFinished(file:///android_asset/www/+++/index.html)
08-10 11:09:03.139  1074  1074 D PluginManager: postMessage: onPageFinished
08-10 11:09:03.145  1130  1293 E chromium: [ERROR:tile_manager.cc(827)] WARNING: tile memory limits exceeded, some content may not draw
08-10 11:09:03.145  1130  1293 E chromium: [ERROR:tile_manager.cc(827)] WARNING: tile memory limits exceeded, some content may not draw
08-10 11:09:03.202  1578  4334 V AutofillInlineSuggestionsRequestSession: onInputMethodFinishInput() received
08-10 11:09:03.202 18885 18885 I GoogleInputMethodService: GoogleInputMethodService.onFinishInput():3220
08-10 11:09:03.208 18885 18885 I GoogleInputMethodService: GoogleInputMethodService.updateDeviceLockedStatus():2114 repeatCheckTimes = 0, unlocked = true
08-10 11:09:03.209  1578  4648 V AutofillInlineSuggestionsRequestSession: onInputMethodStartInput() received on 1073741824
08-10 11:09:03.209 18885 18885 I GoogleInputMethodService: GoogleInputMethodService.onStartInput():1919 onStartInput(EditorInfo{inputType=0x0(NULL) imeOptions=0x0 privateImeOptions=null actionName=UNSPECIFIED actionLabel=null actionId=0 initialSelStart=-1 initialSelEnd=-1 initialCapsMode=0x0 hintText=null label=null packageName=com.MY.APP fieldId=-1 fieldName=null extras=null}, false)
08-10 11:09:03.210 18885 18885 I GoogleInputMethodService: GoogleInputMethodService.updateDeviceLockedStatus():2114 repeatCheckTimes = 2, unlocked = true
08-10 11:09:03.251  4281 20086 D MainProcessObserver: pid:3036 uid:10206 foregroundActivities:false
08-10 11:09:03.253  1578  4648 W ActivityTaskManager: MANAGE_ACTIVITY_STACKS is deprecated, please use alternative permission: MANAGE_ACTIVITY_TASKS
08-10 11:09:03.254  4281 20086 D onForegroundChanged: topActivity:ComponentInfo{com.MY.APP/com.MY.APP.MainActivity}
08-10 11:09:03.254  4281 20086 D onForegroundChanged: packageName:com.MY.APP
08-10 11:09:03.387  1578  4648 W ActivityTaskManager: MANAGE_ACTIVITY_STACKS is deprecated, please use alternative permission: MANAGE_ACTIVITY_TASKS
08-10 11:09:03.454  1578  2439 W InputManager-JNI: Input channel object 'ae8e4f8 Splash Screen com.MY.APP (client)' was disposed without first being removed with the input manager!
08-10 11:09:03.563  1578 32564 V BrightKeepService: onClick màn hình
08-10 11:09:03.566  1578 32564 W ContextImpl: Calling a method in the system process without a qualified user: android.app.ContextImpl.sendBroadcast:1173 android.content.ContextWrapper.sendBroadcast:479 jp.co.sharp.android.brightkeep.BrightKeepService.checkTimerEvent:522 jp.co.sharp.android.brightkeep.BrightKeepService.access$000:96 jp.co.sharp.android.brightkeep.BrightKeepService$TouchCheckTask.run:687
08-10 11:09:03.567  1578 32564 V BrightKeepService: changeCurrentStatus old=NoTouchTimeOutState new=NormalState
08-10 11:09:03.567  1578  1578 V BrightKeepService: getAction: jp.co.sharp.android.intent.action.CLICK_SCREEN_ON isOutOfHand: false
08-10 11:09:03.663  1162  2275 E libnav  : CablComputeBacklightLevel(): UpdateType = DifferentSceneUpdate
08-10 11:09:03.796  1271  1362 W surfaceflinger: DisplayExtnImpl::SetActiveConfig: HWC Display 0 is not registered!
08-10 11:09:03.815  1162 22249 I SDM     : HWDeviceDRM::UpdateMixerAttributes: Mixer WxH 1080x2280 for Peripheral
08-10 11:09:03.815  1162 22249 I SDM     : StrategyImpl::SetIdleTimeoutMs: Idle timeout: active = 150, inactive = 520
08-10 11:09:03.816  1162 22249 I SDM     : HWCDisplay::SubmitDisplayConfig: Active configuration changed to: 2
08-10 11:09:04.268  1271  1362 W surfaceflinger: DisplayExtnImpl::SetActiveConfig: HWC Display 0 is not registered!
08-10 11:09:04.270  1578  2439 W ActivityTaskManager: MANAGE_ACTIVITY_STACKS is deprecated, please use alternative permission: MANAGE_ACTIVITY_TASKS
08-10 11:09:04.279  1162 22249 I SDM     : HWDeviceDRM::UpdateMixerAttributes: Mixer WxH 1080x2280 for Peripheral
08-10 11:09:04.279  1162 22249 I SDM     : StrategyImpl::SetIdleTimeoutMs: Idle timeout: active = 150, inactive = 520
08-10 11:09:04.279  1162 22249 I SDM     : HWCDisplay::SubmitDisplayConfig: Active configuration changed to: 0
08-10 11:09:04.429  1271  1362 W surfaceflinger: DisplayExtnImpl::SetActiveConfig: HWC Display 0 is not registered!
08-10 11:09:04.447  1162 22249 I SDM     : HWDeviceDRM::UpdateMixerAttributes: Mixer WxH 1080x2280 for Peripheral
08-10 11:09:04.447  1162 22249 I SDM     : StrategyImpl::SetIdleTimeoutMs: Idle timeout: active = 150, inactive = 520
08-10 11:09:04.447  1162 22249 I SDM     : HWCDisplay::SubmitDisplayConfig: Active configuration changed to: 2
08-10 11:09:04.769  1271  1362 W surfaceflinger: DisplayExtnImpl::SetActiveConfig: HWC Display 0 is not registered!
08-10 11:09:04.780  1162 22249 I SDM     : HWDeviceDRM::UpdateMixerAttributes: Mixer WxH 1080x2280 for Peripheral
08-10 11:09:04.780  1162 22249 I SDM     : StrategyImpl::SetIdleTimeoutMs: Idle timeout: active = 150, inactive = 520
08-10 11:09:04.780  1162 22249 I SDM     : HWCDisplay::SubmitDisplayConfig: Active configuration changed to: 0
08-10 11:09:04.897 25341 25392 E DetectMoisture: [onUEventForWireless] IOException
08-10 11:09:04.898 25341 25392 E DetectMoisture: [onUEventForPadDetect] IOException
08-10 11:09:05.145  1074  1074 D PluginManager: postMessage: spinner
08-10 11:09:05.166  1271  1362 W surfaceflinger: DisplayExtnImpl::SetActiveConfig: HWC Display 0 is not registered!
08-10 11:09:05.178  1162 22249 I SDM     : HWDeviceDRM::UpdateMixerAttributes: Mixer WxH 1080x2280 for Peripheral
08-10 11:09:05.178  1162 22249 I SDM     : StrategyImpl::SetIdleTimeoutMs: Idle timeout: active = 150, inactive = 520
08-10 11:09:05.178  1162 22249 I SDM     : HWCDisplay::SubmitDisplayConfig: Active configuration changed to: 2
08-10 11:09:05.201  1271  1362 W surfaceflinger: DisplayExtnImpl::SetActiveConfig: HWC Display 0 is not registered!
08-10 11:09:05.246  1162 22249 I SDM     : HWDeviceDRM::UpdateMixerAttributes: Mixer WxH 1080x2280 for Peripheral
08-10 11:09:05.246  1162 22249 I SDM     : StrategyImpl::SetIdleTimeoutMs: Idle timeout: active = 150, inactive = 520
08-10 11:09:05.247  1162 22249 I SDM     : HWCDisplay::SubmitDisplayConfig: Active configuration changed to: 0
08-10 11:09:05.428  1271  1362 W surfaceflinger: DisplayExtnImpl::SetActiveConfig: HWC Display 0 is not registered!
08-10 11:09:05.445  1162 22249 I SDM     : HWDeviceDRM::UpdateMixerAttributes: Mixer WxH 1080x2280 for Peripheral
08-10 11:09:05.445  1162 22249 I SDM     : StrategyImpl::SetIdleTimeoutMs: Idle timeout: active = 150, inactive = 520
08-10 11:09:05.445  1162 22249 I SDM     : HWCDisplay::SubmitDisplayConfig: Active configuration changed to: 2
08-10 11:09:06.754  1271  1362 W surfaceflinger: DisplayExtnImpl::SetActiveConfig: HWC Display 0 is not registered!
08-10 11:09:06.779  1162 22249 I SDM     : HWDeviceDRM::UpdateMixerAttributes: Mixer WxH 1080x2280 for Peripheral
08-10 11:09:06.779  1162 22249 I SDM     : StrategyImpl::SetIdleTimeoutMs: Idle timeout: active = 150, inactive = 520
08-10 11:09:06.779  1162 22249 I SDM     : HWCDisplay::SubmitDisplayConfig: Active configuration changed to: 0
08-10 11:09:07.190  1271  1362 W surfaceflinger: DisplayExtnImpl::SetActiveConfig: HWC Display 0 is not registered!
08-10 11:09:07.207  1162 22249 I SDM     : HWDeviceDRM::UpdateMixerAttributes: Mixer WxH 1080x2280 for Peripheral
08-10 11:09:07.207  1162 22249 I SDM     : StrategyImpl::SetIdleTimeoutMs: Idle timeout: active = 150, inactive = 520
08-10 11:09:07.207  1162 22249 I SDM     : HWCDisplay::SubmitDisplayConfig: Active configuration changed to: 2
08-10 11:09:10.312  1271  1362 W surfaceflinger: DisplayExtnImpl::SetActiveConfig: HWC Display 0 is not registered!
08-10 11:09:10.318  1162 22249 I SDM     : HWDeviceDRM::UpdateMixerAttributes: Mixer WxH 1080x2280 for Peripheral
08-10 11:09:10.318  1162 22249 I SDM     : StrategyImpl::SetIdleTimeoutMs: Idle timeout: active = 150, inactive = 520
08-10 11:09:10.318  1162 22249 I SDM     : HWCDisplay::SubmitDisplayConfig: Active configuration changed to: 0
08-10 11:09:10.466  1271  1362 W surfaceflinger: DisplayExtnImpl::SetActiveConfig: HWC Display 0 is not registered!
08-10 11:09:10.485  1162 22249 I SDM     : HWDeviceDRM::UpdateMixerAttributes: Mixer WxH 1080x2280 for Peripheral
08-10 11:09:10.485  1162 22249 I SDM     : StrategyImpl::SetIdleTimeoutMs: Idle timeout: active = 150, inactive = 520
08-10 11:09:10.485  1162 22249 I SDM     : HWCDisplay::SubmitDisplayConfig: Active configuration changed to: 2
08-10 11:09:10.867  1331  1331 D ProcessState: Binder ioctl to enable oneway spam detection failed: Invalid argument
08-10 11:09:10.919  1335  1335 D ProcessState: Binder ioctl to enable oneway spam detection failed: Invalid argument
08-10 11:09:10.921  1578  4334 V UserManagerService: dumpPackageWhitelistProblems(): using mode ENFORCE|IMPLICIT_WHITELIST
08-10 11:09:12.373  1271  1362 W surfaceflinger: DisplayExtnImpl::SetActiveConfig: HWC Display 0 is not registered!
08-10 11:09:12.381  1162 22249 I SDM     : HWDeviceDRM::UpdateMixerAttributes: Mixer WxH 1080x2280 for Peripheral
08-10 11:09:12.381  1162 22249 I SDM     : StrategyImpl::SetIdleTimeoutMs: Idle timeout: active = 150, inactive = 520
08-10 11:09:12.381  1162 22249 I SDM     : HWCDisplay::SubmitDisplayConfig: Active configuration changed to: 0
08-10 11:09:12.450  1074  1097 I OpenGLRenderer: Davey! duration=9222268146192ms; Flags=0, FrameTimelineVsyncId=782403, IntendedVsync=1103890662667667, Vsync=1103890662667667, InputEventId=0, HandleInputStart=1103890663824835, AnimationStart=1103890663830616, PerformTraversalsStart=1103890663833012, DrawStart=1103890664127699, FrameDeadline=1103890696000999, FrameInterval=1103890663798689, FrameStartTime=16666666, SyncQueued=1103890664829053, SyncStart=1103890664886814, IssueDrawCommandsStart=1103890665009470, SwapBuffers=1103890675363168, FrameCompleted=9223372036854775807, DequeueBufferDuration=28229, QueueBufferDuration=647500, GpuCompleted=9223372036854775807, SwapBuffersCompleted=1103890676510147, DisplayPresentTime=0,
08-10 11:09:12.884  1578  4334 W InputManager-JNI: Input channel object 'a8a4bfb com.MY.APP/com.MY.APP.MainActivity (client)' was disposed without first being removed with the input manager!
08-10 11:09:12.926  1162  2275 E libnav  : CablComputeBacklightLevel(): UpdateType = DifferentSceneUpdate
08-10 11:09:13.053  1271  1362 W surfaceflinger: DisplayExtnImpl::SetActiveConfig: HWC Display 0 is not registered!
08-10 11:09:13.063  1162 22249 I SDM     : HWDeviceDRM::UpdateMixerAttributes: Mixer WxH 1080x2280 for Peripheral
08-10 11:09:13.063  1162 22249 I SDM     : StrategyImpl::SetIdleTimeoutMs: Idle timeout: active = 150, inactive = 520
08-10 11:09:13.063  1162 22249 I SDM     : HWCDisplay::SubmitDisplayConfig: Active configuration changed to: 2
08-10 11:09:13.119 25341 25392 E DetectMoisture: [onUEventForWireless] IOException
08-10 11:09:13.120 25341 25392 E DetectMoisture: [onUEventForPadDetect] IOException
08-10 11:09:18.039 12038 12090 I BtGatt.ScanManager: msg.what = 6
08-10 11:09:18.039   565   565 D BoundBrokerSvc: onUnbind: Intent { act=com.google.android.gms.safetynet.service.START pkg=com.google.android.gms }
08-10 11:09:19.898  1340  1340 D ProcessState: Binder ioctl to enable oneway spam detection failed: Invalid argument
08-10 11:09:19.958  1344  1344 D ProcessState: Binder ioctl to enable oneway spam detection failed: Invalid argument
08-10 11:09:19.960  1578  4334 V UserManagerService: dumpPackageWhitelistProblems(): using mode ENFORCE|IMPLICIT_WHITELIST
08-10 11:09:21.354 25341 25392 E DetectMoisture: [onUEventForWireless] IOException
08-10 11:09:21.355 25341 25392 E DetectMoisture: [onUEventForPadDetect] IOException
08-10 11:09:21.366  2856  2856 D QtiCarrierConfigHelper: WARNING, no carrier configs on phone Id: 0
08-10 11:09:21.370  2921  2921 V DeviceStatisticsService: chargerType=2 batteryLevel=100 totalBatteryCapacity=4370000
08-10 11:09:21.405  1271  1362 W surfaceflinger: DisplayExtnImpl::SetActiveConfig: HWC Display 0 is not registered!
08-10 11:09:21.428  1162 22249 I SDM     : HWDeviceDRM::UpdateMixerAttributes: Mixer WxH 1080x2280 for Peripheral
08-10 11:09:21.429  1162 22249 I SDM     : StrategyImpl::SetIdleTimeoutMs: Idle timeout: active = 150, inactive = 520
08-10 11:09:21.429  1162 22249 I SDM     : HWCDisplay::SubmitDisplayConfig: Active configuration changed to: 0
08-10 11:09:21.576  1271  1362 W surfaceflinger: DisplayExtnImpl::SetActiveConfig: HWC Display 0 is not registered!
08-10 11:09:21.595  1162 22249 I SDM     : HWDeviceDRM::UpdateMixerAttributes: Mixer WxH 1080x2280 for Peripheral
08-10 11:09:21.596  1162 22249 I SDM     : StrategyImpl::SetIdleTimeoutMs: Idle timeout: active = 150, inactive = 520
08-10 11:09:21.596  1162 22249 I SDM     : HWCDisplay::SubmitDisplayConfig: Active configuration changed to: 2
08-10 11:09:28.910  1350  1350 D ProcessState: Binder ioctl to enable oneway spam detection failed: Invalid argument
08-10 11:09:28.966  1360  1360 D ProcessState: Binder ioctl to enable oneway spam detection failed: Invalid argument
08-10 11:09:28.968  1578  4334 V UserManagerService: dumpPackageWhitelistProblems(): using mode ENFORCE|IMPLICIT_WHITELIST
08-10 11:09:29.564 25341 25392 E DetectMoisture: [onUEventForWireless] IOException
08-10 11:09:29.566 25341 25392 E DetectMoisture: [onUEventForPadDetect] IOException
08-10 11:09:30.631  1578  4334 W ActivityManager: Receiver with filter android.content.IntentFilter@7c5635a already registered for pid 2437, callerPackage is com.android.systemui
08-10 11:09:37.784 25341 25392 E DetectMoisture: [onUEventForWireless] IOException
08-10 11:09:37.784 25341 25392 E DetectMoisture: [onUEventForPadDetect] IOException
08-10 11:09:37.925  1381  1381 D ProcessState: Binder ioctl to enable oneway spam detection failed: Invalid argument
08-10 11:09:37.980  1385  1385 D ProcessState: Binder ioctl to enable oneway spam detection failed: Invalid argument
08-10 11:09:37.982  1578  4334 V UserManagerService: dumpPackageWhitelistProblems(): using mode ENFORCE|IMPLICIT_WHITELIST
08-10 11:09:46.003 25341 25392 E DetectMoisture: [onUEventForWireless] IOException
08-10 11:09:46.004 25341 25392 E DetectMoisture: [onUEventForPadDetect] IOException
weareu commented 1 year ago

Thank you for your maintenace.

However, now my app is successfully encrypted, but I'm having trouble decrypting it. Please help me.

my App

  • cordova@10.0.0
  • cordova-android@10.1.2
  • android-sdk 31
  • use cordova-plugin-androidx-adapter

steps

  1. cordova plugin add https://github.com/weareu/cordova-plugin-crypt-file.git
  2. Check existence in plugins directory
  3. npx cordova platform add android@10.1.2
  4. npx cordova run android
  5. my app is installed on my device
  6. The screen shows the following error.
Application Error net: ERR_FILE_NOT_FOUND(file:///android_asset/www/+++/index.html)

decrypt not fire. What's wrong?

preference in config.xml

    <preference name="Orientation" value="portrait" />
    <preference name="KeepRunning" value="true" />
    <preference name="InAppBrowserStorageEnabled" value="false" />
    <preference name="SuppressesIncrementalRendering" value="true" />
    <preference name="SplashScreenDelay" value="10000" />
    <preference name="SplashScreen" value="screen" />
    <preference name="android-minSdkVersion" value="22" />
    <preference name="ShowSplashScreenSpinner" value="false" />
    <preference name="deployment-target" value="14.0" />
    <preference name="DisallowOverscroll" value="true" />
    <preference name="FadeSplashScreen" value="true" />
    <preference name="scheme" value="app" />
    <preference name="hostname" value="localhost" />
    <preference name="ScrollEnabled" value="true" />
    <preference name="android-targetSdkVersion" value="31" />
    <preference name="AndroidInsecureFileModeEnabled" value="true" />

adb logcat

adb logcat

AndroidInsecureFileModeEnabled needs to be false OR removed. This plugin uses the new http method for cordova so no longer using file: if you are using Cordova 10, also make sure to update to latest cordova-file which now also supports cordova 10 secure format.

weareu commented 1 year ago

Latest Commit now also supports IOS 6+ where CDVURLProtocol is removed and no longer supported.

LongTimeNoTea commented 1 year ago

Thanks for the ios update! I'm getting an error when i run "cordova plugin add https://github.com/weareu/cordova-plugin-crypt-file"

Failed to install 'cordova-plugin-crypt-file': Error: Variable(s) missing: SCHEME, HOSTNAME at Object.mergeVariables (/opt/homebrew/lib/node_modules/cordova/node_modules/cordova-lib/src/plugman/variable-merge.js:58:15) at /opt/homebrew/lib/node_modules/cordova/node_modules/cordova-lib/src/plugman/install.js:302:44 at process.processTicksAndRejections (node:internal/process/task_queues:95:5)

192kobayashi commented 1 year ago

@weareu

AndroidInsecureFileModeEnabled needs to be false OR removed. This plugin uses the new http method for cordova so no longer using file: if you are using Cordova 10, also make sure to update to latest cordova-file which now also supports cordova 10 secure format.

thank you for your advice.

For the sake of the migration process, my app is now I would like to continue using the traditional file protocol without using the http protocol.

Do you have any advice for that?

weareu commented 1 year ago

@weareu

AndroidInsecureFileModeEnabled needs to be false OR removed. This plugin uses the new http method for cordova so no longer using file: if you are using Cordova 10, also make sure to update to latest cordova-file which now also supports cordova 10 secure format.

thank you for your advice.

For the sake of the migration process, my app is now I would like to continue using the traditional file protocol without using the http protocol.

Do you have any advice for that?

This is not possible. File has been blocked on new IOS and is moving that way on Android. Cordova 10+ has deprecated file because the hook in no longer works. So you cannot intercept requests for file. While you can enable legacy file, you can no longer intercept the requests for decryption, some other plugins is also broken due to this. Hooking into the HTTP requests is possible and is how the update works for both IOS and Android. The only way to stay on file is to stay on Cordova 9. I do however not believe that file is necessary. As long as you are using the latest cordova-file-plugin you should be able to do everything with file/cdvfile via the new protocols. Is there any other reason you would like to stay on file?

weareu commented 1 year ago

Thanks for the ios update! I'm getting an error when i run "cordova plugin add https://github.com/weareu/cordova-plugin-crypt-file"

Failed to install 'cordova-plugin-crypt-file': Error: Variable(s) missing: SCHEME, HOSTNAME at Object.mergeVariables (/opt/homebrew/lib/node_modules/cordova/node_modules/cordova-lib/src/plugman/variable-merge.js:58:15) at /opt/homebrew/lib/node_modules/cordova/node_modules/cordova-lib/src/plugman/install.js:302:44 at process.processTicksAndRejections (node:internal/process/task_queues:95:5)

Will have a look later today or tomorrow. Are you using a clean build. Using Ionic? what is the cordova env and versions?

weareu commented 1 year ago

Thanks for the ios update! I'm getting an error when i run "cordova plugin add https://github.com/weareu/cordova-plugin-crypt-file"

Failed to install 'cordova-plugin-crypt-file': Error: Variable(s) missing: SCHEME, HOSTNAME at Object.mergeVariables (/opt/homebrew/lib/node_modules/cordova/node_modules/cordova-lib/src/plugman/variable-merge.js:58:15) at /opt/homebrew/lib/node_modules/cordova/node_modules/cordova-lib/src/plugman/install.js:302:44 at process.processTicksAndRejections (node:internal/process/task_queues:95:5)

Try it now. If you are having issues, use a custom scheme (protocol) by specifying in config.xml, may be good to try without it first and let me know.

LongTimeNoTea commented 1 year ago

Thanks for the ios update! I'm getting an error when i run "cordova plugin add https://github.com/weareu/cordova-plugin-crypt-file" Failed to install 'cordova-plugin-crypt-file': Error: Variable(s) missing: SCHEME, HOSTNAME at Object.mergeVariables (/opt/homebrew/lib/node_modules/cordova/node_modules/cordova-lib/src/plugman/variable-merge.js:58:15) at /opt/homebrew/lib/node_modules/cordova/node_modules/cordova-lib/src/plugman/install.js:302:44 at process.processTicksAndRejections (node:internal/process/task_queues:95:5)

Try it now. If you are having issues, use a custom scheme (protocol) by specifying in config.xml, may be good to try without it first and let me know.

Thanks it works! Without specifying in config.xml it didn't work, there was a white page with encrypted text. With this in config.xml it works `

    <preference name="hostname" value="localhost" />

`

I'm running clean cordova build, ios version 6.2.0

192kobayashi commented 1 year ago

@weareu

Thank you for your comment.

As long as you are using the latest cordova-file-plugin you should be able to do everything with file/cdvfile via the new protocols. Is there any other reason you would like to stay on file?

my App use sqlite3 database. It seems that I misunderstood that using WebviewAssetLoader would make it difficult to migrate to SQLite3. It looked like indexDB. So I would like to proceed to utilize the http protocol. I was able to confirm that it was decrypted normally if it was http.

Thank you for your advice.

weareu commented 1 year ago

@weareu

Thank you for your comment.

As long as you are using the latest cordova-file-plugin you should be able to do everything with file/cdvfile via the new protocols. Is there any other reason you would like to stay on file?

my App use sqlite3 database. It seems that I misunderstood that using WebviewAssetLoader would make it difficult to migrate to SQLite3. It looked like indexDB. So I would like to proceed to utilize the http protocol. I was able to confirm that it was decrypted normally if it was http.

Thank you for your advice.

Using sqllite3 should not be a problem depending on what adapter/plugin you are using for that. If you are using pouch, you should be able to use the sqllite adapter, if you are using something else like cordova-sqlite-storage that should also work.

weareu commented 1 year ago

Thanks for the ios update! I'm getting an error when i run "cordova plugin add https://github.com/weareu/cordova-plugin-crypt-file" Failed to install 'cordova-plugin-crypt-file': Error: Variable(s) missing: SCHEME, HOSTNAME at Object.mergeVariables (/opt/homebrew/lib/node_modules/cordova/node_modules/cordova-lib/src/plugman/variable-merge.js:58:15) at /opt/homebrew/lib/node_modules/cordova/node_modules/cordova-lib/src/plugman/install.js:302:44 at process.processTicksAndRejections (node:internal/process/task_queues:95:5)

Try it now. If you are having issues, use a custom scheme (protocol) by specifying in config.xml, may be good to try without it first and let me know.

Thanks it works! Without specifying in config.xml it didn't work, there was a white page with encrypted text. With this in config.xml it works <platform name="ios"> <preference name="scheme" value="app" /> <preference name="hostname" value="localhost" /> </platform>

I'm running clean cordova build, ios version 6.2.0

May be necessary to add it back and then provide Readme for params, OR maybe just have the protocol/scheme instructions for IOS in ReadME. ¯_(ツ)_/¯

hrishi-neo commented 1 year ago

Getting CORS error if I remove AndroidInsecureFileModeEnabled