@@ -71,7 +71,7 @@ dependencies {
7171 androidTestImplementation ' androidx.test.espresso:espresso-core:3.3.0'
7272
7373 // Branch
74- api ' io.branch.sdk.android:library:5.14 .0'
74+ api ' io.branch.sdk.android:library:5.15 .0'
7575 implementation (' com.google.android.gms:play-services-ads-identifier:17.0.0' )
7676 // for Huawei devices without GMS, adding it requires bumping up min api level to 19 though, so we
7777 // leave it up to the client to add it following Branch documentation here: https://help.branch.io/developers-hub/docs/android-basic-integration
@@ -124,14 +124,23 @@ def applyCommonConfig = { MavenPublication publication ->
124124 }
125125
126126 withXml {
127- asNode(). dependencies. dependency. findAll {
128- it. artifactId. text() == ' okhttp' || it. artifactId. text() == ' firebase-appindexing'
129- }. each { dependency ->
130- def optionalNode = dependency. optional
131- if (optionalNode) {
132- optionalNode[0 ]. value = ' true'
133- } else {
134- dependency. appendNode(' optional' , ' true' )
127+ def node = asNode()
128+ def dependenciesNode = node. appendNode(' dependencies' )
129+
130+ configurations. implementation. allDependencies. each { dependency ->
131+ if (dependency. group != null && dependency. name != null && dependency. version != null ) {
132+ def dependencyNode = dependenciesNode. appendNode(' dependency' )
133+ dependencyNode. appendNode(' groupId' , dependency. group)
134+ dependencyNode. appendNode(' artifactId' , dependency. name)
135+ dependencyNode. appendNode(' version' , dependency. version)
136+
137+ // Default scope to compile
138+ dependencyNode. appendNode(' scope' , ' compile' )
139+
140+ // Check for specific artifact IDs and add 'optional' flag
141+ if (dependency. name in [' okhttp' , ' firebase-appindexing' ]) {
142+ dependencyNode. appendNode(' optional' , ' true' )
143+ }
135144 }
136145 }
137146 }
@@ -154,15 +163,15 @@ project.afterEvaluate {
154163 }
155164
156165 repositories {
157- maven {
158- url = isReleaseBuild() ? getReleaseRepositoryUrl() : getSnapshotRepositoryUrl()
159- credentials {
160- username = getRepositoryUsername()
161- password = getRepositoryPassword()
166+ maven {
167+ url = isReleaseBuild() ? getReleaseRepositoryUrl() : getSnapshotRepositoryUrl()
168+ credentials {
169+ username = getRepositoryUsername()
170+ password = getRepositoryPassword()
171+ }
162172 }
163173 }
164174 }
165- }
166175
167176 signing {
168177 sign publishing. publications. release
0 commit comments