/envoy

C and Java Library derived from Chromium Cronet which can be used to make Android apps resistant to censorship

Primary LanguageJavaApache License 2.0Apache-2.0

C and Java Library derived from chromium cronet.

Technical details are explained here.

  • for pure c and java cronet library, see directory native/.
  • for the android library, import directory android/ from android studio or build with gradle from the command line.

App examples

Go to patches for each application in directory apps to learn how to integrate envoy library, or test with our demo apk files.

  1. Wikipedia: ./gradlew clean assembleDevDebug, demo apk, and the migration guide.
  2. DuckDuckGo: ./gradlew assembleDebug, demo apk
  3. Wordpress:
    1. WordPress-FluxC-Android: echo "sdk.dir=YOUR_SDK_DIR" > local.properties && ./gradlew fluxc:build
    2. WordPress-Android: set wp.oauth.app_id and wp.oauth.app_secret, then cp gradle.properties-example gradle.properties && ./gradlew assembleVanillaDebug

You can submit more apps with git -c diff.noprefix=false format-patch --numbered --binary HEAD~.

Release steps

  1. Rebuild cronet-debug.aar and cronet-release.aar: run ./native/build_cronet.sh debug and ./native/build_cronet.sh release
  2. Rebuild envoy: ./android/build-envoy.sh
  3. Rebuild demo apps: ./apps/build-apps.sh

History

  1. Google to reimplement curl in libcrurl | daniel.haxx.se, 谷歌想实现自己的 curl,为什么?
  2. 973603 - [Cronet] libcurl wrapper library using Cronet API - chromium