gradle transitive dependencies in APK
adding an Android dependency (for example OkHttp) as:
api 'com.squareup.okhttp3:okhttp:3.11.0'
in a gradle (sub) module will make it available to other modules when included (eg in the main android app
module)
This removes the need to add implementation 'com.squareup.okhttp3:okhttp:3.11.0'
in the modules.
Is there any difference in the resulting APK size to have each module include the dependency separately as implementation [...]
instead of just once as api [...]
in a module that other app-modules depend on.
In other words are api
gradle-dependencies from an included module included into the resulting APK in their entirety (disregarding ProGuard) and assuming said dependency is referenced and has at least one method invocation.
These links describe the compilation-visibility differences but not whether or not there is any difference in the resulting APK.
android dependencies apk build.gradle transitive-dependency
add a comment |
adding an Android dependency (for example OkHttp) as:
api 'com.squareup.okhttp3:okhttp:3.11.0'
in a gradle (sub) module will make it available to other modules when included (eg in the main android app
module)
This removes the need to add implementation 'com.squareup.okhttp3:okhttp:3.11.0'
in the modules.
Is there any difference in the resulting APK size to have each module include the dependency separately as implementation [...]
instead of just once as api [...]
in a module that other app-modules depend on.
In other words are api
gradle-dependencies from an included module included into the resulting APK in their entirety (disregarding ProGuard) and assuming said dependency is referenced and has at least one method invocation.
These links describe the compilation-visibility differences but not whether or not there is any difference in the resulting APK.
android dependencies apk build.gradle transitive-dependency
add a comment |
adding an Android dependency (for example OkHttp) as:
api 'com.squareup.okhttp3:okhttp:3.11.0'
in a gradle (sub) module will make it available to other modules when included (eg in the main android app
module)
This removes the need to add implementation 'com.squareup.okhttp3:okhttp:3.11.0'
in the modules.
Is there any difference in the resulting APK size to have each module include the dependency separately as implementation [...]
instead of just once as api [...]
in a module that other app-modules depend on.
In other words are api
gradle-dependencies from an included module included into the resulting APK in their entirety (disregarding ProGuard) and assuming said dependency is referenced and has at least one method invocation.
These links describe the compilation-visibility differences but not whether or not there is any difference in the resulting APK.
android dependencies apk build.gradle transitive-dependency
adding an Android dependency (for example OkHttp) as:
api 'com.squareup.okhttp3:okhttp:3.11.0'
in a gradle (sub) module will make it available to other modules when included (eg in the main android app
module)
This removes the need to add implementation 'com.squareup.okhttp3:okhttp:3.11.0'
in the modules.
Is there any difference in the resulting APK size to have each module include the dependency separately as implementation [...]
instead of just once as api [...]
in a module that other app-modules depend on.
In other words are api
gradle-dependencies from an included module included into the resulting APK in their entirety (disregarding ProGuard) and assuming said dependency is referenced and has at least one method invocation.
These links describe the compilation-visibility differences but not whether or not there is any difference in the resulting APK.
android dependencies apk build.gradle transitive-dependency
android dependencies apk build.gradle transitive-dependency
edited Dec 28 '18 at 23:32
xst
asked Nov 9 '18 at 18:44
xstxst
56921030
56921030
add a comment |
add a comment |
0
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53231645%2fgradle-transitive-dependencies-in-apk%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53231645%2fgradle-transitive-dependencies-in-apk%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown