Как я могу распространять свой Android Wear для альфа-бета-пользователей в Google Play Store?

Я тестирую свое приложение, и я в альфа-режиме. Мое приложение одобрено, и я могу найти его в альфа-режиме в Play Маркете. Тем не менее, часть «изнашивания» моего приложения не устанавливается автоматически на износ.

В настоящее время мое приложение для ношения имеет минимальную функциональность, поэтому «отказ» от износа продолжает лишаться. Я все равно хотел бы упаковать минимальное приложение для своих альфа-пользователей, но он, похоже, не работает. Любые идеи, как я могу получить автоматическую установку части одежды в приложении?

Вот мои файлы в настоящее время:

/build.gradle

// Used in 'mobile' and 'wear' submodules def versionMajor() { 0 } def versionMinor() { 0 } def versionPatch() { 8 } def gitVersion() { def process = "git rev-list master --first-parent --count".execute() return process.text.toInteger() } // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:1.2.3' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { jcenter() } } 

/mobile/build.gradle

 apply plugin: 'com.android.application' android { compileSdkVersion 22 buildToolsVersion "22.0.1" defaultConfig { applicationId "com.kamil.coach" minSdkVersion 19 targetSdkVersion 22 versionCode gitVersion() versionName "${versionMajor()}.${versionMinor()}.${versionPatch()}" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } packagingOptions { exclude 'META-INF/DEPENDENCIES' exclude 'META-INF/LICENSE' exclude 'META-INF/LICENSE.txt' exclude 'META-INF/license.txt' exclude 'META-INF/NOTICE' exclude 'META-INF/NOTICE.txt' exclude 'META-INF/notice.txt' exclude 'META-INF/ASL2.0' exclude 'APK META-INF/NOTICE.txt' exclude 'APK META-INF/notice.txt' } } if(project.hasProperty("MyProject.signing") && new File(project.property("MyProject.signing") + ".gradle").exists()) { println "mobile applying gradle file" apply from: project.property("MyProject.signing") + ".gradle"; } else { println "mobile not applying gradle file" } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile project(':core') wearApp project(':wear') compile "com.android.support:appcompat-v7:22.1.0" compile 'com.google.android.gms:play-services:7.3.0' compile 'com.google.android.support:wearable:1.1.0' compile 'com.google.android.gms:play-services-wearable:7.3.0' compile 'org.apache.commons:commons-lang3:3.0' compile 'joda-time:joda-time:2.7' compile 'org.ocpsoft.prettytime:prettytime:4.0.0.Final' compile 'com.uservoice:uservoice-android-sdk:+' compile(name:'cloud-release', ext:'aar') compile(name:'auth-release', ext:'aar') compile(name:'core-release', ext:'aar') } repositories { flatDir { dirs 'libs' } } 

/wear/build.gradle

 apply plugin: 'com.android.application' android { compileSdkVersion 22 buildToolsVersion "22.0.1" defaultConfig { applicationId "com.kamil.coach" minSdkVersion 20 targetSdkVersion 22 versionCode gitVersion() versionName "${versionMajor()}.${versionMinor()}.${versionPatch()}" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } packagingOptions { exclude 'META-INF/DEPENDENCIES' exclude 'META-INF/LICENSE' exclude 'META-INF/LICENSE.txt' exclude 'META-INF/license.txt' exclude 'META-INF/NOTICE' exclude 'META-INF/NOTICE.txt' exclude 'META-INF/notice.txt' exclude 'META-INF/ASL2.0' exclude 'APK META-INF/NOTICE.txt' exclude 'APK META-INF/notice.txt' } } if(project.hasProperty("MyProject.signing") && new File(project.property("MyProject.signing") + ".gradle").exists()) { println "wear applying gradle file" apply from: project.property("MyProject.signing") + ".gradle"; } else { println "wear not applying gradle file" } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile project(':core') compile 'com.google.android.support:wearable:1.1.0' compile 'com.google.android.gms:play-services-wearable:7.3.0' compile 'org.apache.commons:commons-lang3:3.0' compile(name:'cloud-release', ext:'aar') compile(name:'auth-release', ext:'aar') compile(name:'core-release', ext:'aar') } repositories { flatDir { dirs 'libs' } } 

/core/build.gradle

 apply plugin: 'com.android.library' android { compileSdkVersion 22 buildToolsVersion "22.0.1" defaultConfig { minSdkVersion 17 targetSdkVersion 22 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:22.0.0' compile 'com.squareup.retrofit:retrofit:1.9.+' } 

/mobile/AndroidManifest.xml

 <?xml version="1.0" encoding="utf-8"?> <manifest package="com.kamil.coach" xmlns:android="http://schemas.android.com/apk/res/android"> <uses-feature android:name="android.hardware.sensor.accelerometer"/> <uses-feature android:name="android.hardware.sensor.gyroscope"/> <uses-permission android:name="android.permission.VIBRATE"/> <uses-permission android:name="android.permission.BLUETOOTH"/> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/> <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <application android:name=".mobile.MobileKamilApplication" android:allowBackup="true" android:icon="@drawable/launcher_icon" android:label="@string/app_name" android:theme="@style/CoachTheme" > <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version"/> . . . </application> </manifest> 

/wear/AndroidManifest.xml

 <?xml version="1.0" encoding="utf-8"?> <manifest package="com.kamil.coach" xmlns:android="http://schemas.android.com/apk/res/android"> <uses-feature android:name="android.hardware.type.watch"/> <uses-feature android:name="android.hardware.sensor.accelerometer"/> <uses-feature android:name="android.hardware.sensor.gyroscope"/> <uses-permission android:name="android.permission.VIBRATE"/> <uses-permission android:name="android.permission.BLUETOOTH"/> <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/> <application android:name="com.core.KamilApplication" android:allowBackup="true" android:icon="@drawable/launcher_icon" android:label="@string/app_name" android:theme="@android:style/Theme.DeviceDefault" > <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version"/> . . . . </application> </manifest> 

Solutions Collecting From Web of "Как я могу распространять свой Android Wear для альфа-бета-пользователей в Google Play Store?"

Приложение для изнашивания должно быть упаковано в основном приложении, оно не распространяется отдельно. Вы просто загружаете apk для мобильного приложения в альфа-канал Play Store, как обычно.

Оба приложения должны иметь одинаковое имя пакета, быть подписанными с одним и тем же ключом и в пределах мобильных настроек градации, которые вы должны включить в проект, пригодный для носки

 wearApp project(':wearable') 

Подробнее см. В документах Google. http://developer.android.com/training/wearables/apps/packaging.html

Я вставлял aar-файл, который вызывал ошибку разрешений.
Мне пришлось скопировать разрешения из этого aar-файла в мое мобильное приложение.

Я решил это, используя «adb logcat» на износ, так как мой mobile-release.apk попытался установить из износа и выяснил, в чем проблема.