Skip to content

Instantly share code, notes, and snippets.

@shanmugasanthosh7
shanmugasanthosh7 / ThemeUtils.java
Last active January 27, 2020 14:16
Theme Utils for light and dark.
public class ThemeUtils {
/**
* MODE_NIGHT_NO
*/
public static final int LIGHT = AppCompatDelegate.MODE_NIGHT_NO;
/**
* MODE_NIGHT_YES
*/
@shanmugasanthosh7
shanmugasanthosh7 / styles.xml
Last active January 27, 2020 14:07
Dark Theme
<style name="AppTheme_theme" parent="Theme.AppCompat.DayNight.NoActionBar"/>
@shanmugasanthosh7
shanmugasanthosh7 / EncryptionHelper.java
Created November 8, 2019 14:46 — forked from rliuzzi/EncryptionHelper.java
Encryption Cheat sheet, pre and post M. Just leaving this here as a demo. I couldn't recommend using different Encryption providers that depend on Android version as encrypted files could be corrupt after a OS update. Use at your own risk. Coded while playing around with this article: https://medium.com/@ericfu/securely-storing-secrets-in-an-and…
package com.zzivi.core.security;
public interface EncryptionHelper {
String encrypt(String input) throws Exception;
String decrypt(String input) throws Exception;
}
@shanmugasanthosh7
shanmugasanthosh7 / MainPresenterImplTest.kt
Created June 23, 2018 07:38
Simple Unit test with RxJava and Mockito
@RunWith(MockitoJUnitRunner::class)
class MainPresenterImplTest {
@Mock
private lateinit var apiService: ApiService
@Mock
private lateinit var mainView: MainView
private lateinit var testScheduler: TestScheduler
@shanmugasanthosh7
shanmugasanthosh7 / build.gradle
Created June 23, 2018 07:32
Unit and UI Testing setup
dependencies {
testImplementation 'junit:junit:4.12'
testImplementation "org.mockito:mockito-core:${rootProject.ext.mockitoVersion}"
androidTestImplementation "org.mockito:mockito-core:${rootProject.ext.mockitoVersion}"
androidTestImplementation "org.mockito:mockito-android:${rootProject.ext.mockitoVersion}"
androidTestImplementation "org.hamcrest:hamcrest-library:${rootProject.ext.hamcrest}"
testImplementation "org.hamcrest:hamcrest-library:${rootProject.ext.hamcrest}"
androidTestImplementation "com.android.support.test:runner:${rootProject.ext.runnerVersion}"
androidTestImplementation "com.android.support.test:rules:$rootProject.ext.rulesVersion"
androidTestImplementation "com.android.support.test.espresso:espresso-core:${rootProject.ext.espressoVersion}"
@shanmugasanthosh7
shanmugasanthosh7 / PassTypeSafeFragment.kt
Created May 26, 2018 16:16
Receives Type Safe arguments
class PassTypeSafeFragment : Fragment() {
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?): View? {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_pass_type_safe, container, false)
}
override fun onActivityCreated(savedInstanceState: Bundle?) {
super.onActivityCreated(savedInstanceState)
class TypeSafeFragment : Fragment() {
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?): View? {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_type_safe, container, false)
}
override fun onActivityCreated(savedInstanceState: Bundle?) {
super.onActivityCreated(savedInstanceState)
@shanmugasanthosh7
shanmugasanthosh7 / nav_graph_typesafe.xml
Last active August 6, 2018 10:38
Type safe navgraph
<?xml version="1.0" encoding="utf-8"?>
<navigation xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
app:startDestination="@id/typeSafeFragment">
<fragment
android:id="@+id/typeSafeFragment"
android:name="com.aptus.navigatioarchitecture.passdatatypesafe.TypeSafeFragment"
android:label="fragment_type_safe"
class PassBundleFragment : Fragment() {
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?): View? {
return inflater.inflate(R.layout.fragment_pass_bundle, container, false)
}
override fun onActivityCreated(savedInstanceState: Bundle?) {
super.onActivityCreated(savedInstanceState)
val name = arguments?.getString("name")
@shanmugasanthosh7
shanmugasanthosh7 / BundleFragment.kt
Created May 26, 2018 14:42
Create bundle argument
class BundleFragment : Fragment() {
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?): View? {
return inflater.inflate(R.layout.fragment_bundle, container, false)
}
override fun onActivityCreated(savedInstanceState: Bundle?) {
super.onActivityCreated(savedInstanceState)
val bundle = Bundle()