Cliqz é o primeiro navegador com pesquisa rápida anônima integrada e tecnologia anti-rastreamento inteligente. Onde quer que você esteja na Internet: Cliqz protege sua privacidade. Nosso próprio mecanismo de busca, desenvolvido em Munique, economiza tempo e volume de dados: basta digitar uma consulta, selecionar um site sugerido ou deslizar para a esquerda para obter mais resultados. E a propósito: Cliqz é gratuito e de código aberto.
Resumo dos recursos do Cliqz:
Execute estes comandos em um shell:
$ > git clone [email protected]:cliqz-oss/browser-android.git
$ > cd browser-android
Depois que o repositório for verificado, obtenha as dependências do pacote react-native e construa-o
$ > npm ci
$ > npm run dev-bundle
Você pode compilar o projeto usando o gradle wrapper na linha de comando:
$ > ./gradlew :app:assembleCliqzDebug
Observe que você precisa ter o Android SDK. No Mac OSX, este último pode ser instalado usando brew:
$ > brew install android
O APK deve estar assinado para ser publicado na PlayStore, para mais informações siga este link. Para assinar o aplicativo você precisa do keystore CLIQZ, porém ele não é e não deve ser distribuído com o código fonte, também as senhas do keystore devem ser mantidas em segredo. Se você tiver o keystore e as senhas, poderá configurar o gradle para gerar o APK assinado. Para fazer isso, crie um arquivo gradle.properties e adicione (ou anexe a ele, se já existir) as seguintes linhas:
Browser . storeFile = < key_store_path >
Browser . storePassword = < key_store_password >
Browser . keyAlias = < key_alias >
Browser . keyPassword = < key_password >
Substitua <param> pelos argumentos apropriados e você poderá compilar o APK de lançamento usando as tarefas usuais do Gradle ( :app:assembleCliqzRelease
).
O projeto usa react-native para algumas lógicas e visualizações. Este código é desenvolvido no repositório principal do navegador. Para depurar esses componentes, siga estas etapas:
npm run dev-server
Agora, se o aplicativo for executado, o código JS será carregado do servidor de desenvolvimento. Além disso, as opções de depuração react-native estarão disponíveis na opção 'React Native Debug' no menu de configurações. Se aberto no depurador do Chrome, o objeto app
(a raiz de todos os módulos do browser-core
será exposto no contexto do web-worker.
Para desenvolver código também a partir browser-core
, siga estas etapas:
./fern.js install
fern serve
significa que o projeto será reconstruído se você fizer alterações no código: CLIQZ_OUTPUT_PATH=/path/to/android-browser/node_modules/browser-core/build/ ./fern.js serve configs/cliqz-android.js
Agora o servidor de desenvolvimento verá e carregará os arquivos atualizados gerados pela compilação do fern quando você recarregar o código no aplicativo.
Para trabalhar com o servidor de recarregamento ao vivo react, a opção Suporte ao desenvolvedor deve ser definida em ReactInstanceManager em /app/src/main/java/com/cliqz/jsengine/Engine.java
, usando .setUseDeveloperSupport(true)
.
Em seguida, deve ser solicitada ao Android permissão de sobreposição do sistema para mostrar o menu de depuração do React Native. Uma maneira de pedir essa permissão é com adb
:
adb shell am start -a android.settings.action.MANAGE_OVERLAY_PERMISSION -d package:com.cliqz.browser.debug
O aplicativo detectará automaticamente se o servidor react dev está em execução e carregará o pacote dele, caso contrário, o pacote será carregado a partir dos ativos do aplicativo.