# Android library

Published articles for Android library.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Fastlane in Kotlin Multiplatform projects - Gustavo Fão Valvassori

DevFeed: [Fastlane in Kotlin Multiplatform projects - Gustavo Fão Valvassori](<https://devfeed.tech/articles/fastlane-in-kotlin-multiplatform-projects-gustavo-fao-valvassori-38203.md>)

Original publisher: [Read original article](<https://touchlab.co/fastlane-kmp>)

Published: 2025-03-11T00:00:00Z

Content type: tutorial

Language: en

Sources: [Touchlab | Enterprise Mobile Innovation & Development](<https://devfeed.tech/sources/touchlab-enterprise-mobile-innovation-development.md>)

Topics: [Kotlin Multiplatform](<https://devfeed.tech/topics/kotlin-multiplatform.md>), [Mobile](<https://devfeed.tech/topics/mobile.md>), [Development](<https://devfeed.tech/topics/development.md>), [Android](<https://devfeed.tech/topics/android.md>), [iOS](<https://devfeed.tech/topics/ios.md>), [Android Library](<https://devfeed.tech/topics/android-library.md>), [cocoapods](<https://devfeed.tech/topics/cocoapods.md>), [Gradle](<https://devfeed.tech/topics/gradle.md>), [Ruby](<https://devfeed.tech/topics/ruby.md>), [rubygems](<https://devfeed.tech/topics/rubygems.md>), [Terminal](<https://devfeed.tech/topics/terminal.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [android-development](<https://devfeed.tech/tags/android-development.md>), [android-library](<https://devfeed.tech/tags/android-library.md>), [cocoapods](<https://devfeed.tech/tags/cocoapods.md>), [community](<https://devfeed.tech/tags/community.md>), [fastlane](<https://devfeed.tech/tags/fastlane.md>), [gradle](<https://devfeed.tech/tags/gradle.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [ios](<https://devfeed.tech/tags/ios.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [kotlin-multiplatform](<https://devfeed.tech/tags/kotlin-multiplatform.md>), [mobile](<https://devfeed.tech/tags/mobile.md>), [multiplatform](<https://devfeed.tech/tags/multiplatform.md>), [ruby](<https://devfeed.tech/tags/ruby.md>), [rubygems](<https://devfeed.tech/tags/rubygems.md>), [terminal](<https://devfeed.tech/tags/terminal.md>), [tooling](<https://devfeed.tech/tags/tooling.md>)

### AI overview

A tutorial on using Fastlane to automate build, testing, and deployment tasks in Kotlin Multiplatform projects. It explains differences between Android and iOS setups, including projects using CocoaPods, Xcode Build Phases, or KMMBridge, and introduces Fastfile lanes and command-line execution.

### Source excerpt

Fastlane is a great tool for automating your mobile app tasks. In this post, we will show how to use Fastlane in a Kotlin Multiplatform project.

## How OkCredit uses Philology to experiment with Android strings without releasing a new app version

DevFeed: [How OkCredit uses Philology to experiment with Android strings without releasing a new app version](<https://devfeed.tech/articles/how-okcredit-android-app-improves-ux-writing-by-changing-strings-on-the-fly-and-you-can-too-37401.md>)

Original publisher: [Read original article](<https://medium.com/okcredit/how-okcredit-android-app-improves-ux-writing-by-changing-strings-on-the-fly-and-you-can-too-8f38da8e69b9?source=rss----40ea5327aac7---4>)

Author: Rashanjyot Singh

Published: 2022-07-13T06:31:23Z

Content type: tutorial

Language: en

Sources: [OkCredit - Medium](<https://devfeed.tech/sources/okcredit-medium.md>)

Topics: [Android](<https://devfeed.tech/topics/android.md>), [User experience (UX)](<https://devfeed.tech/topics/ux.md>), [Library](<https://devfeed.tech/topics/library.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>), [Localization (l10n)](<https://devfeed.tech/topics/localization.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [android-app-development](<https://devfeed.tech/tags/android-app-development.md>), [android-library](<https://devfeed.tech/tags/android-library.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [experimentation](<https://devfeed.tech/tags/experimentation.md>), [language](<https://devfeed.tech/tags/language.md>), [mobile-app-development](<https://devfeed.tech/tags/mobile-app-development.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [ux](<https://devfeed.tech/tags/ux.md>), [ux-writing](<https://devfeed.tech/tags/ux-writing.md>)

### AI overview

This tutorial explains how OkCredit experimented with Android string resources and translations without releasing a new app version, using the open-source Philology library. The article describes the need for faster string experimentation across a multilingual user base and the use of a pilot to assess the approach.

### Source excerpt

How OkCredit Android App improves UX writing by changing strings on the fly (and you can too!)Foreword⚠ First things first! We don't want to make any false claims, and to tell you straight off, you cannot update the strings stored as XML resources in your android app. However, we are here to tell you how we achieved that effect in OkCredit android app by using 'Philology', an open-source android library. OkCredit is a digital ledger app used by millions of small business owners and their customers daily to facilitate the recording of credit/payment transactions digitally all over India. The app supports over 11 different languages and to cater to such a diverse userbase, one key aspect is to communicate effectively. A pain point often shared by our product managers and language localization teams was that each time we wanted to experiment with strings, change/update them or make changes to translations of specific languages, we had to release a new version of the app. Hence, we wanted to have a setup that would enable us to experiment with strings faster and update them on the fly without releasing a new version of the app. Let's Get Started Like most apps, OkCredit app uses a lot of XML string resources, and an ideal implementation to set up string experimentation would be one that requires the bare minimum amount of changes in the way we conventionally fetch strings, which is using getString(...) method of the Resources class. The android developer community is amazing and that's what we realized yet again when we instantly found exactly what we needed. We figured out quite a few technical blogs and a couple of open-source libraries that explained the underlying mechanism well (hence, we won't do that much herein and simply share the relevant links). However, to build conviction that it could run flawlessly at scale, we needed to pilot the solution first-hand. After using it for numerous experiments to improve the experience for millions of our users, with this b

## Writing Paparazzi tests for your Kotlin Multiplatform projects

DevFeed: [Writing Paparazzi tests for your Kotlin Multiplatform projects](<https://devfeed.tech/articles/writing-paparazzi-tests-for-your-kotlin-multiplatform-projects-38560.md>)

Original publisher: [Read original article](<https://msfjarvis.dev/posts/writing-paparazzi-tests-for-your-kotlin-multiplatform-projects/>)

Author: Harsh Shandilya

Published: 2022-06-26T06:30:00Z

Content type: tutorial

Language: en

Sources: [Posts on Harsh Shandilya](<https://devfeed.tech/sources/posts-on-harsh-shandilya.md>)

Topics: [Kotlin Multiplatform](<https://devfeed.tech/topics/kotlin-multiplatform.md>), [Testing](<https://devfeed.tech/topics/testing.md>), [Gradle](<https://devfeed.tech/topics/gradle.md>), [Kotlin](<https://devfeed.tech/topics/kotlin.md>), [ui-testing](<https://devfeed.tech/topics/ui-testing.md>), [Compose](<https://devfeed.tech/topics/compose.md>), [Android Library](<https://devfeed.tech/topics/android-library.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [android-library](<https://devfeed.tech/tags/android-library.md>), [compose](<https://devfeed.tech/tags/compose.md>), [gradle](<https://devfeed.tech/tags/gradle.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [kotlin-multiplatform](<https://devfeed.tech/tags/kotlin-multiplatform.md>), [testing](<https://devfeed.tech/tags/testing.md>), [ui-testing](<https://devfeed.tech/tags/ui-testing.md>)

### AI overview

A tutorial on working around Paparazzi's lack of direct Kotlin Multiplatform support by placing Paparazzi tests in a separate Android library Gradle module. The approach enables JVM-based UI tests for public Compose composables, with additional guidance for CI build types, JDK 12+ compatibility, and testing multiple themes.

### Source excerpt

Paparazzi enables a radically faster and improved UI testing workflow, and using a small workaround we can bring that to our multiplatform Compose projects

## Android Library UI Tests & Firebase Test Lab

DevFeed: [Android Library UI Tests & Firebase Test Lab](<https://devfeed.tech/articles/android-library-ui-tests-firebase-test-lab-27438.md>)

Original publisher: [Read original article](<https://jdvp.me/articles/Test-Lab-For-Android-Libraries>)

Author: JD Porterfield (jd.porterfield@alumni.rice.edu)

Published: 2021-09-06T00:00:00Z

Content type: tutorial

Language: en

Sources: [JD Porterfield | Articles](<https://devfeed.tech/sources/jd-porterfield-articles.md>)

Topics: [Firebase](<https://devfeed.tech/topics/firebase.md>), [Android Library](<https://devfeed.tech/topics/android-library.md>), [Testing](<https://devfeed.tech/topics/testing.md>), [ui-testing](<https://devfeed.tech/topics/ui-testing.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [android-library](<https://devfeed.tech/tags/android-library.md>), [apk](<https://devfeed.tech/tags/apk.md>), [ci-cd](<https://devfeed.tech/tags/ci-cd.md>), [command-line](<https://devfeed.tech/tags/command-line.md>), [firebase](<https://devfeed.tech/tags/firebase.md>), [test-lab](<https://devfeed.tech/tags/test-lab.md>), [testing](<https://devfeed.tech/tags/testing.md>), [ui](<https://devfeed.tech/tags/ui.md>)

### AI overview

This tutorial explains how to run Android library module UI tests with Firebase Test Lab. Because Test Lab requires separate test and application APKs with different package names, it presents a method for building the androidTest APK twice with different package names.

### Source excerpt

Firebase Test Lab generally requires 2 .apk files for testing, how can we test library module UI tests in Test Lab?

## Holi: A library of colors, gradients and utils for Jetpack Compose

DevFeed: [Holi: A library of colors, gradients and utils for Jetpack Compose](<https://devfeed.tech/articles/holi-a-library-of-colors-gradients-and-utils-for-jetpack-compose-28390.md>)

Original publisher: [Read original article](<https://siddroid.com/post/projects/holi-a-library-of-colors-for-jetpack-compose/>)

Author: Siddhesh Patil

Published: 2021-03-30T07:52:25Z

Content type: tutorial

Language: en

Sources: [Sid Patil - Android Engineer and Kotlin Advocate](<https://devfeed.tech/sources/sid-patil-android-engineer-and-kotlin-advocate.md>)

Topics: [Compose](<https://devfeed.tech/topics/compose.md>), [Android](<https://devfeed.tech/topics/android.md>), [Maven Central](<https://devfeed.tech/topics/maven-central.md>), [Library](<https://devfeed.tech/topics/library.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [android-library](<https://devfeed.tech/tags/android-library.md>), [color-picker-android](<https://devfeed.tech/tags/color-picker-android.md>), [compose](<https://devfeed.tech/tags/compose.md>), [dracula-colors](<https://devfeed.tech/tags/dracula-colors.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>), [jetpack-compose-gradients](<https://devfeed.tech/tags/jetpack-compose-gradients.md>), [jetpack-compose-library](<https://devfeed.tech/tags/jetpack-compose-library.md>), [material-color-library-for-android](<https://devfeed.tech/tags/material-color-library-for-android.md>), [material-colors-for-jetpack-compose](<https://devfeed.tech/tags/material-colors-for-jetpack-compose.md>), [maven-central](<https://devfeed.tech/tags/maven-central.md>), [open-source](<https://devfeed.tech/tags/open-source.md>)

### AI overview

Holi is an open-source MIT-licensed library for Jetpack Compose on Android. It provides predefined colors from multiple palettes, gradient-building utilities, and related helper functions, and is available through Maven Central.

### Source excerpt

An open-source library of colors, gradients and utils built using Jetpack Compose for Android. Licenced under MIT and available on Maven central.

## Test library releases using an in project Maven repository

DevFeed: [Test library releases using an in project Maven repository](<https://devfeed.tech/articles/test-library-releases-using-an-in-project-maven-repository-28693.md>)

Original publisher: [Read original article](<https://jeroenmols.com/blog/2020/12/02/inproject-maven/>)

Author: info@jeroenmols.com (Jeroen Mols)

Published: 2020-12-02T00:00:00Z

Content type: tutorial

Language: en

Sources: [Jeroen Mols](<https://devfeed.tech/sources/jeroen-mols.md>)

Topics: [Maven](<https://devfeed.tech/topics/maven.md>), [Testing](<https://devfeed.tech/topics/testing.md>), [Android Library](<https://devfeed.tech/topics/android-library.md>), [releases](<https://devfeed.tech/topics/releases.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [android-library](<https://devfeed.tech/tags/android-library.md>), [blogs](<https://devfeed.tech/tags/blogs.md>), [build](<https://devfeed.tech/tags/build.md>), [dependencies](<https://devfeed.tech/tags/dependencies.md>), [gradle](<https://devfeed.tech/tags/gradle.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [library](<https://devfeed.tech/tags/library.md>), [maven](<https://devfeed.tech/tags/maven.md>), [maven-repository](<https://devfeed.tech/tags/maven-repository.md>), [releases](<https://devfeed.tech/tags/releases.md>), [testing](<https://devfeed.tech/tags/testing.md>), [transitive-dependencies](<https://devfeed.tech/tags/transitive-dependencies.md>)

### AI overview

A tutorial explains how to test the release version of an Android library inside its project by creating and using a local Maven repository, avoiding deployment to Maven during development.

### Source excerpt

Short, powerful post on how to test the release version of libraries directly within a project without having to deploy them to Maven first. As a bonus, there will also be an open-source example showcasing all of this in action.

## Android library development - Dependencies

DevFeed: [Android library development - Dependencies](<https://devfeed.tech/articles/android-library-development-dependencies-28692.md>)

Original publisher: [Read original article](<https://jeroenmols.com/blog/2020/11/11/library-dependencies/>)

Author: info@jeroenmols.com (Jeroen Mols)

Published: 2020-11-11T00:00:00Z

Content type: tutorial

Language: en

Sources: [Jeroen Mols](<https://devfeed.tech/sources/jeroen-mols.md>)

Topics: [Android Library](<https://devfeed.tech/topics/android-library.md>), [SDKs](<https://devfeed.tech/topics/sdks.md>), [Library](<https://devfeed.tech/topics/library.md>), [Gradle](<https://devfeed.tech/topics/gradle.md>), [Maven](<https://devfeed.tech/topics/maven.md>), [Development](<https://devfeed.tech/topics/development.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [android-library](<https://devfeed.tech/tags/android-library.md>), [blogs](<https://devfeed.tech/tags/blogs.md>), [build](<https://devfeed.tech/tags/build.md>), [dependencies](<https://devfeed.tech/tags/dependencies.md>), [gradle](<https://devfeed.tech/tags/gradle.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [library](<https://devfeed.tech/tags/library.md>), [maven](<https://devfeed.tech/tags/maven.md>), [sdk](<https://devfeed.tech/tags/sdk.md>), [transitive-dependencies](<https://devfeed.tech/tags/transitive-dependencies.md>)

### AI overview

This tutorial explains how transitive dependencies in Android libraries can create integration problems for applications, including conflicting dependency versions and incompatible dependencies. It introduces common approaches to resolving version conflicts and discusses the risks of forcing dependency versions.

### Source excerpt

Ever had a build failure while integrating an SDK? Wonder how you can avoid your SDK customers having dependency conflicts? How many transitive dependencies should your SDK have?

## Android library development - Modularization

DevFeed: [Android library development - Modularization](<https://devfeed.tech/articles/android-library-development-modularization-28691.md>)

Original publisher: [Read original article](<https://jeroenmols.com/blog/2020/11/04/library-modularization/>)

Author: info@jeroenmols.com (Jeroen Mols)

Published: 2020-11-04T00:00:00Z

Content type: tutorial

Language: en

Sources: [Jeroen Mols](<https://devfeed.tech/sources/jeroen-mols.md>)

Topics: [Android Library](<https://devfeed.tech/topics/android-library.md>), [Library](<https://devfeed.tech/topics/library.md>), [SDK](<https://devfeed.tech/topics/sdk.md>), [Development](<https://devfeed.tech/topics/development.md>), [Android Gradle Plugin](<https://devfeed.tech/topics/android-gradle-plugin.md>), [Gradle](<https://devfeed.tech/topics/gradle.md>), [Jetpack](<https://devfeed.tech/topics/jetpack.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [android-gradle-plugin](<https://devfeed.tech/tags/android-gradle-plugin.md>), [android-jetpack](<https://devfeed.tech/tags/android-jetpack.md>), [android-library](<https://devfeed.tech/tags/android-library.md>), [blogs](<https://devfeed.tech/tags/blogs.md>), [development](<https://devfeed.tech/tags/development.md>), [gradle](<https://devfeed.tech/tags/gradle.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [library](<https://devfeed.tech/tags/library.md>), [maven](<https://devfeed.tech/tags/maven.md>), [modularization](<https://devfeed.tech/tags/modularization.md>), [sdk](<https://devfeed.tech/tags/sdk.md>)

### AI overview

This article explains modularization challenges in Android libraries and SDKs, including missing submodule dependencies and unintended exposure of submodule APIs. It presents three approaches: publishing submodules to Maven, bundling them into a fat AAR, or creating a single-module SDK.

### Source excerpt

With modularization being all the hype, should you also modularize an SDK? Are fat aar files really needed? And how do you prevent internal APIs from being exposed on your public interface?

## Android library development - Getting started

DevFeed: [Android library development - Getting started](<https://devfeed.tech/articles/android-library-development-getting-started-28690.md>)

Original publisher: [Read original article](<https://jeroenmols.com/blog/2020/10/28/library-gettingstarted/>)

Author: info@jeroenmols.com (Jeroen Mols)

Published: 2020-10-28T00:00:00Z

Content type: tutorial

Language: en

Sources: [Jeroen Mols](<https://devfeed.tech/sources/jeroen-mols.md>)

Topics: [Android Library](<https://devfeed.tech/topics/android-library.md>), [SDK](<https://devfeed.tech/topics/sdk.md>), [Gradle](<https://devfeed.tech/topics/gradle.md>), [Library](<https://devfeed.tech/topics/library.md>), [Maven Central](<https://devfeed.tech/topics/maven-central.md>), [LineageOS](<https://devfeed.tech/topics/lineageos.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [android-library](<https://devfeed.tech/tags/android-library.md>), [blogs](<https://devfeed.tech/tags/blogs.md>), [development](<https://devfeed.tech/tags/development.md>), [getting-started](<https://devfeed.tech/tags/getting-started.md>), [gradle](<https://devfeed.tech/tags/gradle.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [library](<https://devfeed.tech/tags/library.md>), [maven](<https://devfeed.tech/tags/maven.md>), [maven-central](<https://devfeed.tech/tags/maven-central.md>), [maven-repository](<https://devfeed.tech/tags/maven-repository.md>)

### AI overview

This tutorial introduces Android library development and explains how it differs from app development. It covers a typical SDK project structure, building an Android Archive with Gradle, publishing libraries as Maven dependencies, and the implications of external dependencies.

### Source excerpt

Having switched to Android SDK development over the past year, I've run into quite a few interesting and unexpected challenges. So how does library development differ from app development?

## Publishing an Android library to MavenCentral in 2019

DevFeed: [Publishing an Android library to MavenCentral in 2019](<https://devfeed.tech/articles/publishing-an-android-library-to-mavencentral-in-2019-27045.md>)

Original publisher: [Read original article](<https://web.archive.org/web/20210621172035/https://blog.autsoft.hu/publishing-an-android-library-to-mavencentral-in-2019/>)

Author: Márton Braun

Published: 2019-08-27T16:00:00Z

Content type: tutorial

Language: en

Sources: [zsmb.co](<https://devfeed.tech/sources/zsmb-co.md>)

Topics: [Android Library](<https://devfeed.tech/topics/android-library.md>), [Android](<https://devfeed.tech/topics/android.md>), [Maven](<https://devfeed.tech/topics/maven.md>), [Library](<https://devfeed.tech/topics/library.md>), [Publishing](<https://devfeed.tech/topics/publishing.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [android-library](<https://devfeed.tech/tags/android-library.md>), [dependencies](<https://devfeed.tech/tags/dependencies.md>), [gradle](<https://devfeed.tech/tags/gradle.md>), [integrity](<https://devfeed.tech/tags/integrity.md>), [library](<https://devfeed.tech/tags/library.md>), [maven](<https://devfeed.tech/tags/maven.md>), [mavencentral](<https://devfeed.tech/tags/mavencentral.md>), [pair](<https://devfeed.tech/tags/pair.md>), [private-key](<https://devfeed.tech/tags/private-key.md>), [publication](<https://devfeed.tech/tags/publication.md>), [repositories](<https://devfeed.tech/tags/repositories.md>)

### AI overview

A tutorial explaining how to publish an Android library to MavenCentral, including Sonatype registration, artifact signing with a GPG key pair, and the publication workflow.

### Source excerpt

MavenCental is the place to be for serious libraries, but setting up publication to it can be a truly daunting task. Here's the guide to how we do it.

## Modularization - How to approach

DevFeed: [Modularization - How to approach](<https://devfeed.tech/articles/modularization-how-to-approach-28680.md>)

Original publisher: [Read original article](<https://jeroenmols.com/blog/2019/04/24/modularizationhow/>)

Author: info@jeroenmols.com (Jeroen Mols)

Published: 2019-04-24T00:00:00Z

Content type: tutorial

Language: en

Sources: [Jeroen Mols](<https://devfeed.tech/sources/jeroen-mols.md>)

Topics: [modules](<https://devfeed.tech/topics/modules.md>), [Library](<https://devfeed.tech/topics/library.md>), [legacy](<https://devfeed.tech/topics/legacy.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [android-library](<https://devfeed.tech/tags/android-library.md>), [architecture](<https://devfeed.tech/tags/architecture.md>), [blogs](<https://devfeed.tech/tags/blogs.md>), [code](<https://devfeed.tech/tags/code.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [legacy](<https://devfeed.tech/tags/legacy.md>), [library](<https://devfeed.tech/tags/library.md>), [migrate](<https://devfeed.tech/tags/migrate.md>), [modularization](<https://devfeed.tech/tags/modularization.md>), [modules](<https://devfeed.tech/tags/modules.md>), [software-engineering](<https://devfeed.tech/tags/software-engineering.md>)

### AI overview

This tutorial explains two strategies for gradually modularizing an existing Android app: converting the old app into a library and pulling code up, or keeping the old app in place and pushing modules down. It describes the trade-offs and migration challenges of each approach, including legacy dependencies and upfront changes.

### Source excerpt

Now that we have a clear idea of how a modularized app could look like how can this be applied to an existing app? Part four will dive deeper into how existing apps can be sliced and how you can gradually migrate to a fully modularized architecture.

## Doppl Sample Update - Kevin Galligan

DevFeed: [Doppl Sample Update - Kevin Galligan](<https://devfeed.tech/articles/doppl-sample-update-kevin-galligan-38189.md>)

Original publisher: [Read original article](<https://touchlab.co/doppl-sample-update>)

Published: 2017-10-04T15:00:55Z

Content type: article

Language: en

Sources: [Touchlab | Enterprise Mobile Innovation & Development](<https://devfeed.tech/sources/touchlab-enterprise-mobile-innovation-development.md>)

Topics: [Android](<https://devfeed.tech/topics/android.md>), [RxJava](<https://devfeed.tech/topics/rxjava.md>), [Gradle](<https://devfeed.tech/topics/gradle.md>), [Kotlin](<https://devfeed.tech/topics/kotlin.md>), [Xcode](<https://devfeed.tech/topics/xcode.md>), [Objective-C](<https://devfeed.tech/topics/objective-c.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [android-library](<https://devfeed.tech/tags/android-library.md>), [architecture](<https://devfeed.tech/tags/architecture.md>), [built-by-touchlab](<https://devfeed.tech/tags/built-by-touchlab.md>), [code-sharing](<https://devfeed.tech/tags/code-sharing.md>), [dependencies](<https://devfeed.tech/tags/dependencies.md>), [gradle](<https://devfeed.tech/tags/gradle.md>), [java](<https://devfeed.tech/tags/java.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [objective-c](<https://devfeed.tech/tags/objective-c.md>), [retrofit](<https://devfeed.tech/tags/retrofit.md>), [rxjava](<https://devfeed.tech/tags/rxjava.md>), [update](<https://devfeed.tech/tags/update.md>), [version](<https://devfeed.tech/tags/version.md>), [xcode](<https://devfeed.tech/tags/xcode.md>)

### AI overview

A progress update on Touchlab's Doppl libraries and sample apps. The update covers compatibility work for J2objc 2.0.4, redeployed libraries, Party Clicker, reactive Room architecture code, and planned work on RxJava 2, Retrofit 2, Xcode support, the Gradle plugin, Architecture Components, and Kotlin.

### Source excerpt

We're going through and updating Doppl libs & sample apps. For the next few months, we'll be working with 2.0.4 and locking down the libraries and versions.

## Doppl Technical Preview - Kevin Galligan

DevFeed: [Doppl Technical Preview - Kevin Galligan](<https://devfeed.tech/articles/doppl-technical-preview-kevin-galligan-38190.md>)

Original publisher: [Read original article](<https://touchlab.co/doppl-technical-preview>)

Published: 2017-07-06T16:00:00Z

Content type: release

Language: en

Sources: [Touchlab | Enterprise Mobile Innovation & Development](<https://devfeed.tech/sources/touchlab-enterprise-mobile-innovation-development.md>)

Topics: [gradle-plugin](<https://devfeed.tech/topics/gradle-plugin.md>), [Development](<https://devfeed.tech/topics/development.md>), [Android Library](<https://devfeed.tech/topics/android-library.md>), [RxJava](<https://devfeed.tech/topics/rxjava.md>)

Tags: [android-library](<https://devfeed.tech/tags/android-library.md>), [built-by-touchlab](<https://devfeed.tech/tags/built-by-touchlab.md>), [code-sharing](<https://devfeed.tech/tags/code-sharing.md>), [gradle-plugin](<https://devfeed.tech/tags/gradle-plugin.md>), [press](<https://devfeed.tech/tags/press.md>), [preview](<https://devfeed.tech/tags/preview.md>), [release](<https://devfeed.tech/tags/release.md>), [rxjava](<https://devfeed.tech/tags/rxjava.md>), [technical](<https://devfeed.tech/tags/technical.md>)

### AI overview

Touchlab announces a technical preview of Doppl, an early-stage Gradle plugin and extended Android library built around J2objc. The article describes the current state of the tools, notes that they can be used to build apps, and outlines planned support for RxJava 2, Retrofit 2, Xcode framework packaging, OkHttp, and Mockito.

### Source excerpt

Droppl until late last year, this was mostly an internal tool, but after some successes we decided this should be a "thing". Check it out.

## Using Artifactory for Android library dependencies and Maven repository management

DevFeed: [Using Artifactory for Android library dependencies and Maven repository management](<https://devfeed.tech/articles/getting-the-most-out-of-artifactory-28639.md>)

Original publisher: [Read original article](<https://jeroenmols.com/blog/2015/08/13/artifactory2/>)

Author: info@jeroenmols.com (Jeroen Mols)

Published: 2015-08-13T00:00:00Z

Content type: tutorial

Language: en

Sources: [Jeroen Mols](<https://devfeed.tech/sources/jeroen-mols.md>)

Topics: [Maven](<https://devfeed.tech/topics/maven.md>), [Android Library](<https://devfeed.tech/topics/android-library.md>), [Library](<https://devfeed.tech/topics/library.md>), [passwords](<https://devfeed.tech/topics/passwords.md>), [GitHub](<https://devfeed.tech/topics/github.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [android-library](<https://devfeed.tech/tags/android-library.md>), [artifactory](<https://devfeed.tech/tags/artifactory.md>), [blogs](<https://devfeed.tech/tags/blogs.md>), [github](<https://devfeed.tech/tags/github.md>), [library](<https://devfeed.tech/tags/library.md>), [maven](<https://devfeed.tech/tags/maven.md>), [password](<https://devfeed.tech/tags/password.md>), [tools](<https://devfeed.tech/tags/tools.md>)

### AI overview

A tutorial on extending a private Maven repository with Artifactory for Android projects. It covers library dependencies, secure credentials, snapshot and release builds, custom repositories, and user access, including how to package required dependencies to avoid runtime crashes.

### Source excerpt

My previous blog post described how to set up your own private Maven repository with Artifactory in 30 minutes. This second and final part will make things more interesting and take your setup to the next level.

## A private Maven repository for Android in 30 min

DevFeed: [A private Maven repository for Android in 30 min](<https://devfeed.tech/articles/a-private-maven-repository-for-android-in-30-min-28638.md>)

Original publisher: [Read original article](<https://jeroenmols.com/blog/2015/08/06/artifactory/>)

Author: info@jeroenmols.com (Jeroen Mols)

Published: 2015-08-06T00:00:00Z

Content type: tutorial

Language: en

Sources: [Jeroen Mols](<https://devfeed.tech/sources/jeroen-mols.md>)

Topics: [Maven](<https://devfeed.tech/topics/maven.md>), [Gradle](<https://devfeed.tech/topics/gradle.md>), [Android](<https://devfeed.tech/topics/android.md>), [Android Library](<https://devfeed.tech/topics/android-library.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [android-library](<https://devfeed.tech/tags/android-library.md>), [artifactory](<https://devfeed.tech/tags/artifactory.md>), [blogs](<https://devfeed.tech/tags/blogs.md>), [gradle](<https://devfeed.tech/tags/gradle.md>), [installation](<https://devfeed.tech/tags/installation.md>), [java-8](<https://devfeed.tech/tags/java-8.md>), [library](<https://devfeed.tech/tags/library.md>), [maven](<https://devfeed.tech/tags/maven.md>), [maven-repository](<https://devfeed.tech/tags/maven-repository.md>), [tools](<https://devfeed.tech/tags/tools.md>)

### AI overview

A tutorial explains how to set up a private Maven repository with Artifactory and configure Gradle to upload Android library artifacts. It covers repository-manager setup, Java SDK 8 prerequisites, Artifactory installation, and Gradle configuration.

### Source excerpt

Setting up your own Maven repository and uploading artifacts to it is quite a daunting task. As I went through this experience myself recently, I want to help others in setting up their own Maven repository via Artifactory and automate uploading artifacts using Gradle.

## Customizing the ListView

DevFeed: [Customizing the ListView](<https://devfeed.tech/articles/customizing-the-listview-30567.md>)

Original publisher: [Read original article](<https://ryanharter.com/blog/2014/02/customizing-the-listview/>)

Published: 2014-02-23T07:00:00Z

Content type: tutorial

Language: en

Sources: [Blogs on Ryan Harter](<https://devfeed.tech/sources/blogs-on-ryan-harter.md>)

Topics: [Android](<https://devfeed.tech/topics/android.md>), [Android Studio](<https://devfeed.tech/topics/android-studio.md>), [Testing](<https://devfeed.tech/topics/testing.md>), [App](<https://devfeed.tech/topics/app.md>), [Android Library](<https://devfeed.tech/topics/android-library.md>), [Gradle](<https://devfeed.tech/topics/gradle.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [android-library](<https://devfeed.tech/tags/android-library.md>), [android-studio](<https://devfeed.tech/tags/android-studio.md>), [app](<https://devfeed.tech/tags/app.md>), [espresso](<https://devfeed.tech/tags/espresso.md>), [gradle](<https://devfeed.tech/tags/gradle.md>), [testing](<https://devfeed.tech/tags/testing.md>)

### AI overview

A tutorial on customizing an Android ListView in Android Studio by styling the list, adding sample data, building a custom adapter with custom layouts, and introducing Espresso-based testing through a Gradle project.

### Source excerpt

In the last post we created a basic Android project using Android Studio templates. While it's great that we have a fully functioning master/detail style app, it does look a bit bare. In this post, we'll change this by styling our list view, incorporating (sort of) real data to feed our list. We'll make a custom adapter to drive our list with custom layouts, and introduce testing into the mix to ensure that our app continues to perform as expected.

## Using ActionBarSherlock As A Base

DevFeed: [Using ActionBarSherlock As A Base](<https://devfeed.tech/articles/using-actionbarsherlock-as-a-base-15938.md>)

Original publisher: [Read original article](<https://developer.squareup.com/blog/using-actionbarsherlock-as-a-base>)

Author: Square Engineering

Published: 2012-05-15T16:01:00Z

Content type: comparison

Language: en

Sources: [Jake Wharton](<https://devfeed.tech/sources/jake-wharton.md>), [Square Corner Blog RSS Feed](<https://devfeed.tech/sources/square-corner-blog-rss-feed.md>)

Topics: [Android Library](<https://devfeed.tech/topics/android-library.md>), [Library](<https://devfeed.tech/topics/library.md>), [API](<https://devfeed.tech/topics/api.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [android-library](<https://devfeed.tech/tags/android-library.md>), [api](<https://devfeed.tech/tags/api.md>), [compatibility](<https://devfeed.tech/tags/compatibility.md>), [custom-action](<https://devfeed.tech/tags/custom-action.md>), [design](<https://devfeed.tech/tags/design.md>), [developer](<https://devfeed.tech/tags/developer.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [features](<https://devfeed.tech/tags/features.md>), [implementation](<https://devfeed.tech/tags/implementation.md>), [library](<https://devfeed.tech/tags/library.md>)

### AI overview

This article compares custom action bar layouts, Google's ActionBarCompat sample, and ActionBarSherlock for Android applications. It explains that ActionBarSherlock provides a unified API and theme, delegates to the platform action bar when appropriate, and uses a compatibility implementation on older versions.

### Source excerpt

Why adding ActionBarSherlock to your applications early will save developer time in the future.