Skip to content

Instantly share code, notes, and snippets.

View Chandu4221's full-sized avatar
💭
I may be slow to respond.

Chandra Shekhar .D Chandu4221

💭
I may be slow to respond.
View GitHub Profile
@mitchtabian
mitchtabian / MainActivity.kt
Last active December 28, 2022 15:24
Basics #4: Dependencies that require dependencies (Concrete classes that you own)
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import androidx.fragment.app.Fragment
import dagger.hilt.android.AndroidEntryPoint
import javax.inject.Inject
@AndroidEntryPoint
class MainActivity : AppCompatActivity() {
@Inject
@andrewjapar
andrewjapar / RequestPermission.kt
Last active March 18, 2022 04:10
RequestPermission.kt
request_permission.setOnClickListener {
requestPermission.launch(permission.BLUETOOTH)
}
request_multiple_permission.setOnClickListener {
requestMultiplePermissions.launch(
arrayOf(
permission.BLUETOOTH,
permission.NFC,
permission.ACCESS_FINE_LOCATION
@andrewjapar
andrewjapar / StartActivityForResult.kt
Created May 24, 2020 06:56
StartActivityForResult.kt
// General activity result contract
private val openPostActivity =
registerForActivityResult(ActivityResultContracts.StartActivityForResult()) { result ->
if (result.resultCode == Activity.RESULT_OK) {
// Do something here
toast("Result OK from PostActivity")
}
}
btn_post.setOnClickListener {
// Requesting Location Permission
bi.btnRequestPermission.setOnClickListener {
askLocationPermission(android.Manifest.permission.ACCESS_FINE_LOCATION)
}
// Single Permission Contract
private val askLocationPermission = registerForActivityResult(ActivityResultContracts.RequestPermission()) { result ->
if(result){
Log.e("TAG", "Location permnission granted")
}else{
@alana-mullen
alana-mullen / ConnectivityExtension.kt
Created January 16, 2020 00:28
Android Kotlin extension to check network connectivity
import android.content.Context
import android.net.ConnectivityManager
import android.net.NetworkCapabilities
import android.os.Build
val Context.isConnected: Boolean
get() {
val connectivityManager = this.getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager
return when {
Build.VERSION.SDK_INT >= Build.VERSION_CODES.M -> {
@Sauloxd
Sauloxd / draftJsPluginBaseStyles.tsx
Last active June 8, 2022 13:38
Styling draft-js emoji plugin
import styled, { createGlobalStyle } from 'styled-components';
export const theme = {
emoji: 'emoji',
emojiSuggestions: 'emojiSuggestions',
emojiSuggestionsEntry: 'emojiSuggestionsEntry',
emojiSuggestionsEntryFocused: 'emojiSuggestionsEntryFocused',
emojiSuggestionsEntryText: 'emojiSuggestionsEntryText',
emojiSuggestionsEntryIcon: 'emojiSuggestionsEntryIcon',
emojiSelect: 'emojiSelect',
@p32929
p32929 / ManufacturerBatteryOptimization.java
Last active March 29, 2023 13:08
Many Android manufacturers cause trouble by implementing battery optimizations that cause apps to behave unexpectedly at runtime. This util class allows you to show a dialog to users having such phones and sends them to the settings screen where they can turn of battery optimizations for your app.
/*
MIT License
Copyright (c) 2018 Fayaz Bin Salam
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
@xiaoyunyang
xiaoyunyang / PostDisplay.js
Last active January 9, 2023 15:16
Use Draft.js to display rich text created using the Draft.js editor.
import React from 'react';
import PropTypes from 'prop-types';
import { CompositeDecorator, convertFromRaw, Editor, EditorState } from 'draft-js';
// Following code based on:
// https://github.com/facebook/draft-js/blob/master/examples/draft-0-10-0/link/link.html
const Link = (props) => {
const {url} = props.contentState.getEntity(props.entityKey).getData();
return (
<a rel="nofollow noreferrer" href={url} target="_blank">
@c4software
c4software / download-multiple-files.js
Created June 6, 2018 08:56 — forked from noelvo/download-multiple-files.js
Download multiple files then compress to one zip file using JSZip & JSZip-utils
var zip = new JSZip();
var count = 0;
var zipFilename = "zipFilename.zip";
var urls = [
'http://image-url-1',
'http://image-url-2',
'http://image-url-3'
];
urls.forEach(function(url){
@AkshayChordiya
AkshayChordiya / ApiResponse.java
Last active February 3, 2024 01:47
LiveData adapter for Retrofit
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.util.ArrayMap;
import java.io.IOException;
import java.util.Collections;
import java.util.Map;
import java.util.regex.Matcher;
import java.util.regex.Pattern;