Everything you need in one place — Commands, Shortcuts, Features & Tips
2026 EDITION
| #!/usr/bin/env bash | |
| set -euo pipefail | |
| # ============================================================ | |
| # ASO Metadata Generator (Named Arguments) | |
| # ============================================================ | |
| # ---------------------------- | |
| # CONFIG | |
| # ---------------------------- |
| /* | |
| * Copyright 2025 Kyriakos Georgiopoulos | |
| * | |
| * 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 |
| /* ----------------------------------------- Activity ------------------------------------------ */ | |
| /* make sure you have at least 'androidx.activity:activity-ktx:1.6.0-rc01' at your dependencies | |
| (just to let you know this dependency is not stable yet ) | |
| */ | |
| implementation 'androidx.activity:activity-ktx:1.6.0-rc01' | |
| fun AppCompatActivity.onBackPressed(isEnabled: Boolean, callback: () -> Unit) { | |
| onBackPressedDispatcher.addCallback(this, |
| package des.c5inco.cardswipecompose | |
| import androidx.compose.animation.core.Animatable | |
| import androidx.compose.animation.core.CubicBezierEasing | |
| import androidx.compose.animation.core.LinearOutSlowInEasing | |
| import androidx.compose.animation.core.animateDpAsState | |
| import androidx.compose.animation.core.animateFloatAsState | |
| import androidx.compose.animation.core.calculateTargetValue | |
| import androidx.compose.animation.core.keyframes | |
| import androidx.compose.animation.splineBasedDecay |
| package des.c5inco.material3 | |
| import androidx.compose.animation.core.Animatable | |
| import androidx.compose.animation.core.spring | |
| import androidx.compose.foundation.Canvas | |
| import androidx.compose.foundation.layout.Box | |
| import androidx.compose.foundation.layout.fillMaxSize | |
| import androidx.compose.foundation.layout.offset | |
| import androidx.compose.foundation.layout.size | |
| import androidx.compose.material3.Surface |
| # Add project specific ProGuard rules here. | |
| # You can control the set of applied configuration files using the | |
| # proguardFiles setting in build.gradle. | |
| # | |
| # For more details, see | |
| # http://developer.android.com/guide/developing/tools/proguard.html | |
| # If your project uses WebView with JS, uncomment the following | |
| # and specify the fully qualified class name to the JavaScript interface | |
| # class: |
| package com.shreyaspatil.callbackflownetwork | |
| import android.content.Context | |
| import android.net.ConnectivityManager | |
| import android.net.Network | |
| import android.net.NetworkCapabilities | |
| import android.net.NetworkRequest | |
| import kotlinx.coroutines.ExperimentalCoroutinesApi | |
| import kotlinx.coroutines.channels.awaitClose | |
| import kotlinx.coroutines.flow.MutableStateFlow |
| import android.R | |
| import android.annotation.SuppressLint | |
| import android.app.NotificationChannel | |
| import android.app.NotificationManager | |
| import android.content.Context | |
| import androidx.core.app.NotificationCompat | |
| import androidx.work.* | |
| import org.koin.core.KoinComponent | |
| import org.koin.core.inject |