具有多种风味尺寸的Android Wear项目

时间:2016-02-03 11:08:01

标签: android android-gradle build.gradle wear-os android-productflavors

问题

我们遇到了一个项目的问题,该项目具有多个(2)产品风味尺寸和磨损模块。在构建版本时,我们没有编译错误,手机应用程序正常工作,但磨损应用程序从未同步观看。

代码示例

手机应用模块build.gradle包含(示例且仅提取)

flavorDimensions 'brand', 'type'

productFlavors {
    nikon {
        dimension 'brand'
    }
    canon {
        dimension 'brand'
    }
    compact {
        dimension 'type'
    }
    slr {
        dimension 'type'
    }
}

dependencies {
    wearApp project(':wear')
}

Wear app module build.gradle包含相同的尺寸配置

publishNonDefault true

flavorDimensions 'brand', 'type'

productFlavors {
    nikon {
        dimension 'brand'
    }
    canon {
        dimension 'brand'
    }
    compact {
        dimension 'type'
    }
    slr {
        dimension 'type'
    }
}

dependencies {

}

我们做了什么

我们检查了磨损应用程序是否在apk中通过安装在手机上并触发官方android磨损应用程序中的磨损应用程序同步选项。在日志记录中,您可以获得同步观看的packageId的概述:

I/WearablePkgInstaller: Setting DataItem to install wearable apps for your.package.id.here

我们还尝试在依赖项中指定重定向到特定配置的风格。

nikonCompactWearApp compile(path:':wear', configuration:'nikonCompactRelease')

然而,添加两个风味​​尺寸会立即打破构建。有一个风味维度确实有效,并且磨损应用程序已正确发布,但我们确实需要多个维度。

nikonWearApp compile(path:':wear', configuration:'nikonCompactRelease')

显而易见的

为了清楚起见,在我们切换到多个维度之前,磨损应用程序已经运行。我们还检查了明显的穿着apk包装选项,如:

  • 手机和磨损应用程序具有相同的applicationId
  • 也可以通过手机应用程序获得穿戴应用程序的所有许可
  • 构建一个版本,因为调试从不包括磨损应用程序
  • publishNonDefault true在wear模块
  • 中设置

0 个答案:

没有答案