OpenSooq / Gligar
Licence: apache-2.0
📸Image Picker for Android, Pick an image from Gallery or Capture a new image with Camera.
Stars: ✭ 96
Programming Languages
kotlin
9241 projects
Projects that are alternatives of or similar to Gligar
Coil
Image loading for Android backed by Kotlin Coroutines.
Stars: ✭ 7,469 (+7680.21%)
Mutual labels: kotlin-coroutines
Posts Mvvm Daggerhilt Dynamic Feature Rxjava3 Flow Sample
Posts Api sample with Kotlin RxJava3/Coroutines Flow, Clean Architecture, Offline first/last with Room + Retrofit2, Dagger Hilt, Dynamic Feature Modules, Static Code Analysis, Gradle DSL, MockK+ MockWebServer with Test Driven Development including Api and Database tests
Stars: ✭ 41 (-57.29%)
Mutual labels: kotlin-coroutines
Kotlin Coroutines Android
Useful extensions for coroutines. AutoDispose + MainScope
Stars: ✭ 77 (-19.79%)
Mutual labels: kotlin-coroutines
Kotlin Coroutines Retrofit
Kotlin Coroutines await() extension for Retrofit Call
Stars: ✭ 812 (+745.83%)
Mutual labels: kotlin-coroutines
Ktx
LibKTX: Kotlin extensions for LibGDX games and applications
Stars: ✭ 913 (+851.04%)
Mutual labels: kotlin-coroutines
Multiplatform
Kotlin Multiplatform(Android/iOS) project.
Stars: ✭ 50 (-47.92%)
Mutual labels: kotlin-coroutines
Reactive Mvvm Android
My way to MVVM using KotlinX Coroutines and Android data-binding
Stars: ✭ 626 (+552.08%)
Mutual labels: kotlin-coroutines
Kotlintutorial
Learn Kotlin programming from scratch
Stars: ✭ 88 (-8.33%)
Mutual labels: kotlin-coroutines
Eyepetizer
🔥基于 Kotlin 语言仿写「开眼 Eyepetizer」的一个短视频 Android 客户端项目,采用 Jetpack + 协程实现的 MVVM 架构。
Stars: ✭ 988 (+929.17%)
Mutual labels: kotlin-coroutines
Paperplane
📚 PaperPlane - An Android reading app, including articles from Zhihu Daily, Guokr Handpick and Douban Moment.
Stars: ✭ 1,147 (+1094.79%)
Mutual labels: kotlin-coroutines
Peopleinspace
Minimal Kotlin Multiplatform project using Jetpack Compose and SwiftUI
Stars: ✭ 887 (+823.96%)
Mutual labels: kotlin-coroutines
Easychatandroidclient
EasyChat是一个开源的社交类的App。主要包含消息、好友、群组等相关的IM核心功能。部分界面参照了QQ、微信等相关社交APP。EasyChat APP整体采用MVVM模式,基于JetPack(Lifecycle,LiveData,ViewModel,Room)构建
Stars: ✭ 64 (-33.33%)
Mutual labels: kotlin-coroutines
Korge
KorGE Game Engine. Multiplatform Kotlin Game Engine
Stars: ✭ 780 (+712.5%)
Mutual labels: kotlin-coroutines
Kuroba Experimental
Free and open source image board browser
Stars: ✭ 76 (-20.83%)
Mutual labels: kotlin-coroutines
Kotlinmultiplatform
Kotlin MultiPlatform App (Android, iOS, JVM & JS). MVVM/MVP - Kotlin MultiPlatform
Stars: ✭ 661 (+588.54%)
Mutual labels: kotlin-coroutines
Permissionsflow
A simple library to make it easy requesting permissions in Android using Kotlin Coroutines.
Stars: ✭ 49 (-48.96%)
Mutual labels: kotlin-coroutines
Covid 19 Tracker
Android app to track COVID-19 cases in India and globally.
Stars: ✭ 96 (+0%)
Mutual labels: kotlin-coroutines
Asynkio
Write your asynchronous Network / IO call painlessly in Kotlin !!
Stars: ✭ 82 (-14.58%)
Mutual labels: kotlin-coroutines
Comicreaderapp mvi coroutine rxkotlin jetpack
⚡️Comic reader app 📘. Learning MVVM / MVI with 🌀 RxKotlin, Retrofit, Kotlin Coroutine, Work Manager, Room, Firebase, AndroidX Startup, Clean Architecture ... ❄️
Stars: ✭ 67 (-30.21%)
Mutual labels: kotlin-coroutines
Gliger [Android Image Picker Library]
⭐️ Star us on GitHub — it helps!
Gliger is an Easy, lightweight and high performance image picker library for Android!
Gliger load images using Android content resolver with the help of coroutines to lazy load the images and improve the performance!
Gliger handle permission requests, support camera capture, and limit for the max number of images to pick.
Demo

Table of content
Download
This library is available in jCenter which is the default Maven repository used in Android Studio. You can also import this library from source as a module.
dependencies {
// other dependencies here
implementation 'com.opensooq.supernova:gligar:1.1.0'
}
Sample Project
We have a sample project demonstrating how to use the library.
Checkout the demo here
Usage
Simpler than ever!
To open the Picker:
Kotlin
GligarPicker().requestCode(PICKER_REQUEST_CODE).withActivity(this).show()
Java
new GligarPicker().requestCode(PICKER_REQUEST_CODE).withActivity(this).show();
To get the result override onActivityResult method:
Kotlin
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data)
if (resultCode != Activity.RESULT_OK) {
return
}
when (requestCode) {
PICKER_REQUEST_CODE -> {
val imagesList = data?.extras?.getStringArray(GligarPicker.IMAGES_RESULT)// return list of selected images paths.
if (!imagesList.isNullOrEmpty()) {
imagesCount.text = "Number of selected Images: ${imagesList.size}"
}
}
}
}
Java
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode != Activity.RESULT_OK) {
return;
}
switch (requestCode){
case PICKER_REQUEST_CODE : {
String pathsList[]= data.getExtras().getStringArray(GligarPicker.IMAGES_RESULT); // return list of selected images paths.
imagesCount.text = "Number of selected Images: " + pathsList.length;
break;
}
}
}
Method | usage |
---|---|
withActivity(activity: Activity) |
used to set the activity will recive the result |
withFragment(fragment: Fragment) |
used to set the fragment will recive the result |
requestCode(requestCode: Int) |
used to set the request code for the result |
limit(limit: Int) |
used to set the max number of images to select |
disableCamera(disableCamera: Boolean) |
by default the value of disableCamera is false, it determine to allow camera captures or not |
cameraDirect(cameraDirect: Boolean) |
by default the value of cameraDirect is false, it determine to open the camera before showing the picker or not |
UI customization
Customizable Colors
override any color to change inside your project colors.xml
Property | Description |
---|---|
counter_bg |
selection counter background color |
counter_color |
selection counter text color |
selector_color |
selection tint color |
place_holder_color |
empty image holder color |
ripple_color |
selection ripple color |
toolbar_bg |
toolbar color |
done |
Done button color |
change_album_color |
change album text color |
camera_icon_color |
camera icon color |
camera_text_color |
camera text color |
permission_alert_bg |
permission alert background color |
permission_alert_color |
permission alert text color |
Customizable Texts
override any string to change inside your project strings.xml
Property | Description |
---|---|
over_limit_msg |
selection limit reached message |
capture_new_image |
capture image text |
change_album_text |
change album text |
permission_storage_never_ask |
permission denied message |
all_images |
all images album name |
License
Copyright 2019 OpenSooq
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].