bazelbuild / bazelbuild/rules_android

Manifest merger, applicationId and dependency issue

Open
#11 2 comments 1 reaction 0 assignees View on GitHub
Dominant language
Java
Stars
203
Forks
95
PR merge metrics
No merged PRs in 30d

Description

I'm trying to build a small app using Bazel,[rules_kotlin](https://github.com/cgruber/rules_kotlin) and [rules_jvm_external](https://github.com/bazelbuild/rules_jvm_external), depending on `androidx.lifecycle:lifecycle-extensions` (through `maven_install`).

This library comes with [a manifest declaring a provider](https://android.googlesource.com/platform/frameworks/support/+/refs/heads/androidx-master-dev/lifecycle/lifecycle-process/src/main/AndroidManifest.xml?source=post_page---------------------------%2F%2F%2F%2F&autodive=0%2F%2F%2F%2F%2F#20), which is using `${applicationId}` as a placeholder - which should be replaced at merging time by the consuming application id.

I end up with this in the merged manifest:
```

```
where as with Gradle, the authority is (as expected) replaced by `com.example.myapp.lifecycle-process`. The fact that it isn't replaced results in a failure at installation time, as the authority is already present on the device. Everything else looks fine in the merged manifest. Am I missing something, or is this a bug in the manifest merging process?

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.