Fazer o download de Play Core Native SDK
Antes de fazer o download, é necessário concordar com os Termos e Condições a seguir.
Termos e Condições
Última modificação: 24 de setembro de 2020- Ao usar o kit de desenvolvimento de software da Play Core, você concorda com estes termos, além dos Termos de Serviço das APIs do Google ("TOS da API"). Se eles entrarem em conflito, estes termos terão precedência em relação aos TOS da API. Leia estes termos e os TOS da API com atenção.
- Para os fins destes termos, "APIs" significa as APIs do Google, outros serviços para desenvolvedores e os softwares associados, incluindo códigos redistribuíveis.
- Um "código redistribuível" é um arquivo principal ou código de objeto fornecido pelo Google que chama as APIs.
- Sujeito a estes termos e aos TOS da API, você pode copiar e distribuir códigos redistribuíveis exclusivamente para inclusão como parte do seu cliente da API. O Google e nossos licenciantes são proprietários de todos os direitos, títulos e participações, incluindo toda e qualquer propriedade intelectual e outros direitos de propriedade relacionados aos códigos redistribuíveis. Não é permitido modificar, traduzir ou criar obras derivadas de códigos redistribuíveis.
- O Google pode fazer alterações nestes termos a qualquer momento, mediante aviso prévio e incluindo a possibilidade de se recusar a continuar usando o kit de desenvolvimento de software da Play Core. O Google publicará avisos de modificações nos termos em https://developer.android.com/guide/playcore/license. As mudanças não são retroativas.
SDK nativo da Play Core
Ao fazer o download e usar o SDK nativo da Google Play Core, você concorda com os Termos de Serviço do kit de desenvolvimento de software da Play Core.
O SDK nativo da Play Core oferece uma interface C/C++ da API para algumas bibliotecas do Google Play, incluindo a Play Asset Delivery. O SDK foi projetado para criar bibliotecas nativas ARM e x86 com o CMake e para usar o Gradle para gerar Android App Bundles e APKs.
Configurar seu ambiente de desenvolvimento
Realize uma das ações abaixo:
- Instale a versão mais recente do Android Studio. Use a IU do SDK Manager para instalar a versão 10.0 do Android SDK Platform (nível 29 da API).
- Instale as ferramentas de linha de comando do SDK do Android
e use o
sdkmanager
para instalar o Android SDK Platform versão 10.0 (API de nível 29).
Prepare o Android Studio para o desenvolvimento nativo usando o SDK Manager para instalar o CMake e o Android Native Development Kit (NDK) mais recentes. Para saber mais sobre como criar ou importar projetos nativos, consulte Começar a usar o NDK.
Faça o download do arquivo ZIP e extraia ele junto com o projeto.
Link de download Tamanho Soma de verificação SHA-256 70,9 MiB 84c9e9579f05d6e29bbbd9c9cde2fde8210947f2007866b0045f4c40fabb7368 Atualize o arquivo
build.gradle
do app como mostrado abaixo:Groovy
// App build.gradle plugins { id 'com.android.application' } // Define a path to the extracted Play Core SDK files. // If using a relative path, wrap it with file() since CMake requires absolute paths. def playcoreDir = file('../path/to/playcore-native-sdk') android { defaultConfig { ... externalNativeBuild { cmake { // Define the PLAYCORE_LOCATION directive. arguments "-DANDROID_STL=c++_static", "-DPLAYCORE_LOCATION=$playcoreDir" } } ndk { // Skip deprecated ABIs. Only required when using NDK 16 or earlier. abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64' } } buildTypes { release { // Include Play Core Library proguard config files to strip unused code while retaining the Java symbols needed for JNI. proguardFile '$playcoreDir/proguard/common.pgcfg' proguardFile '$playcoreDir/proguard/gms_task.pgcfg' proguardFile '$playcoreDir/proguard/per-feature-proguard-files' ... } debug { ... } } externalNativeBuild { cmake { path 'src/main/CMakeLists.txt' } } } dependencies { // Import these feature-specific AARs for each Google Play Core library. implementation 'com.google.android.play:app-update:2.0.0' implementation 'com.google.android.play:asset-delivery:2.0.0' implementation 'com.google.android.play:integrity:1.1.0-beta01' implementation 'com.google.android.play:review:2.0.0' // Import these common dependencies. implementation 'com.google.android.gms:play-services-tasks:18.0.2' implementation files("$playcoreDir/playcore-native-metadata.jar") ... }
Kotlin
// App build.gradle.kts plugins { id("com.android.application") } // Define a path to the extracted Play Core SDK files. // If using a relative path, wrap it with file() since CMake requires absolute paths. val playcoreDir = file("../path/to/playcore-native-sdk") android { defaultConfig { ... externalNativeBuild { cmake { // Define the PLAYCORE_LOCATION directive. arguments += listOf("-DANDROID_STL=c++_static", "-DPLAYCORE_LOCATION=$playcoreDir") } } ndk { // Skip deprecated ABIs. Only required when using NDK 16 or earlier. abiFilters.clear() abiFilters += listOf("armeabi-v7a", "arm64-v8a", "x86", "x86_64") } } buildTypes { release { // Include Play Core Library proguard config files to strip unused code while retaining the Java symbols needed for JNI. proguardFile("$playcoreDir/proguard/common.pgcfg") proguardFile("$playcoreDir/proguard/gms_task.pgcfg") proguardFile("$playcoreDir/proguard/per-feature-proguard-files") ... } debug { ... } } externalNativeBuild { cmake { path = "src/main/CMakeLists.txt" } } } dependencies { // Import these feature-specific AARs for each Google Play Core library. implementation("com.google.android.play:app-update:2.0.0") implementation("com.google.android.play:asset-delivery:2.0.0") implementation("com.google.android.play:integrity:1.1.0-beta01") implementation("com.google.android.play:review:2.0.0") // Import these common dependencies. implementation("com.google.android.gms:play-services-tasks:18.0.2") implementation(files("$playcoreDir/playcore-native-metadata.jar")) ... }
Atualize os arquivos
CMakeLists.txt
do app como mostrado abaixo:cmake_minimum_required(VERSION 3.6) ... # Add a static library called “playcore” built with the c++_static STL. include(${PLAYCORE_LOCATION}/playcore.cmake) add_playcore_static_library() // In this example “main” is your native code library, i.e. libmain.so. add_library(main SHARED ...) target_include_directories(main PRIVATE ${PLAYCORE_LOCATION}/include ...) target_link_libraries(main android playcore ...)
Termos de Serviço do kit de desenvolvimento de software da Play Core
Última modificação: 24 de setembro de 2020- Ao usar o kit de desenvolvimento de software da Play Core, você concorda com estes termos, além dos Termos de Serviço das APIs do Google ("TOS da API"). Se eles entrarem em conflito, estes termos terão precedência em relação aos TOS da API. Leia estes termos e os TOS da API com atenção.
- Para os fins destes termos, "APIs" significa as APIs do Google, outros serviços para desenvolvedores e os softwares associados, incluindo códigos redistribuíveis.
- Um "código redistribuível" é um arquivo principal ou código de objeto fornecido pelo Google que chama as APIs.
- Sujeito a estes termos e aos TOS da API, você pode copiar e distribuir códigos redistribuíveis exclusivamente para inclusão como parte do seu cliente da API. O Google e nossos licenciantes são proprietários de todos os direitos, títulos e participações, incluindo toda e qualquer propriedade intelectual e outros direitos de propriedade relacionados aos códigos redistribuíveis. Não é permitido modificar, traduzir ou criar obras derivadas de códigos redistribuíveis.
- O Google pode fazer alterações nestes termos a qualquer momento, mediante aviso prévio e incluindo a possibilidade de se recusar a continuar usando o kit de desenvolvimento de software da Play Core. O Google publicará avisos de modificações nos termos em https://developer.android.com/guide/playcore/license. As mudanças não são retroativas.
Coleta de dados
O SDK nativo da Play Core pode coletar dados relacionados à versão para que o Google melhore o produto, incluindo:
- Nome do pacote do app
- Versão do pacote do app
- Versão do SDK nativo da Play Core
Esses dados vão ser coletados quando você fizer upload do seu pacote de apps
para o Play Console. Para desativar esse processo de coleta de dados, remova a
importação de $playcoreDir/playcore-native-metadata.jar
no arquivo build.gradle.
Essa coleta de dados relacionada ao seu uso do SDK nativo da Play Core e o uso do Google dos dados coletados são independentes e não estão relacionados à coleta de dependências de biblioteca do Google declaradas no Gradle quando você faz upload do pacote do app para o Play Console.