добавление зависимости Android (например, OkHttp) в виде:
api 'com.squareup.okhttp3:okhttp:3.11.0'
в модуле Gradle (Sub) сделает его доступным для других модулей, когда они включены (например, в основной модуль Android app
)
Это устраняет необходимость добавлять implementation 'com.squareup.okhttp3:okhttp:3.11.0'
в модули.
Есть ли какая-либо разница в итоговом размере APK, чтобы каждый модуль включал зависимость отдельно как implementation [...]
вместо одного раза как api [...]
в модуле, от которого зависят другие модули приложения.
Другими словами, api
gradle-зависимости от включенного модуля, включенного в итоговый APK полностью (без учета ProGuard), и при условии, что на указанную зависимость ссылается и имеет хотя бы один вызов метода.
Эти ссылки описывают различия в видимости компиляции, но не в том, есть ли разница в результирующем APK.