https://github.com/peterhdd/cordova-plugin-crypto-file
Encrypts source files, works with cordova-plugin-ionic-webview
https://github.com/peterhdd/cordova-plugin-crypto-file
cordova ionic plugin
Last synced: 15 days ago
JSON representation
Encrypts source files, works with cordova-plugin-ionic-webview
- Host: GitHub
- URL: https://github.com/peterhdd/cordova-plugin-crypto-file
- Owner: PeterHdd
- License: apache-2.0
- Created: 2019-01-18T23:45:55.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2021-10-04T05:31:27.000Z (almost 5 years ago)
- Last Synced: 2025-09-02T08:39:46.745Z (11 months ago)
- Topics: cordova, ionic, plugin
- Language: JavaScript
- Homepage:
- Size: 27.3 KB
- Stars: 30
- Watchers: 7
- Forks: 28
- Open Issues: 16
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README


# Cordova crypto file plugin
HTML source file is encrypted at build, and decrypted at run.
https://www.npmjs.com/package/cordova-plugin-crypto-file
## Add Plugin
`cordova plugin add cordova-plugin-crypto-file`
## Purpose
This plugin was created to solve the issue of using cordova-plugin-ionic-webview with cordova-crypt-file, refer to [#75](https://github.com/tkyaji/cordova-plugin-crypt-file/issues/75)
## Important
The file `IonicWebViewEngine.java` (that is inside the ionic webview plugin) needs to be modified for this plugin to work and for the source code to be encrypted.
### Steps:
1. After adding the cordova-plugin-ionic-webview, navigate to the following location:
For cordova-android@6 :
**platforms/android/src/com/ionicframework/cordova/webview/IonicWebViewEngine.java**
For cordova-android@7 :
**platforms/android/app/src/main/java/com/ionicframework/cordova/webview/IonicWebViewEngine.java**
2. Remove the following code:
```
@RequiresApi(Build.VERSION_CODES.LOLLIPOP)
@Override
public WebResourceResponse shouldInterceptRequest(WebView view, WebResourceRequest request) {
super.shouldInterceptRequest(view,request);
return localServer.shouldInterceptRequest(request.getUrl());
}
@TargetApi(Build.VERSION_CODES.KITKAT)
@Override
public WebResourceResponse shouldInterceptRequest(WebView view, String url) {
return localServer.shouldInterceptRequest(Uri.parse(url));
}
```
3. Add this instead:
```
@Override
public WebResourceResponse shouldInterceptRequest(WebView view, WebResourceRequest request) {
return super.shouldInterceptRequest(view, request);
}
```
Then the plugin will work.
## Configuration
You can also change the port in the `config.xml`, but it needs to be the same port as the one used in the "cordova-plugin-ionic-webview".
To change the port, do the following:
#### cryptoPort
```xml
```
## Encrypt
`cordova build [ios / android]`
## Decrypt
`cordova emulate [ios / android]`
or
`cordova run [ios / android]`
## Encryption subjects.
### Default
* .html
* .htm
* .js
* .css
### Edit subjects
You can specify the encryption subjects by editing `plugin.xml`.
**plugins/cordova-plugin-crypt-file/plugin.xml**
```
```
Specify the target file as a regular expression.
## Supported platforms
* iOS
* Android
* CrossWalk
## Based on the original cordova-crypt-file created by tkyaji
https://github.com/tkyaji/cordova-plugin-crypt-file
## License
Apache version 2.0