Posts

MVVM Kotlin setup Android

1)Create project with kotlin 2) Add below library     //lifecycler     implementation "android.arch.lifecycle:runtime:1.1.1"     implementation "android.arch.lifecycle:extensions:1.1.1" 3)Creat MyViewModel Class open class MyViewModel: ViewModel(){ var apiError = MutableLiveData<String>() var onFailure = MutableLiveData<Throwable>() var badRequest = MutableLiveData<String>() var isLoading = MutableLiveData<Boolean>() var isPullToRefreshLoading = MutableLiveData<Boolean>() } 4)Creact LoginViewMode class class LoginViewMode : MyViewModel() { var response = MutableLiveData<User>() fun login(name: String, pass: String) { isLoading.value=true LoginRepository.getLoginData({ response.value=it isLoading.value=false },{ apiError.value=it isLoading.value=false },name,pass) } } 5) Create LoginRepository object class object LoginReposito

Take screen shot in android programmatic (Android Studio)

Take screen shot function private void takeScreenshot() { Date now = new Date(); android.text.format.DateFormat.format("yyyy-MM-dd_hh:mm:ss", now); try { // image naming and path to include sd card appending name you choose for file String mPath = Environment.getExternalStorageDirectory().toString() + "/" + now + ".jpeg"; // create bitmap screen capture View v1 = getWindow().getDecorView().getRootView(); v1.setDrawingCacheEnabled(true); Bitmap bitmap = Bitmap.createBitmap(v1.getDrawingCache()); v1.setDrawingCacheEnabled(false); File imageFile = new File(mPath); FileOutputStream outputStream = new FileOutputStream(imageFile); int quality = 100; bitmap.compress(Bitmap.CompressFormat.JPEG, quality, outputStream); outputStream.flush(); outputStream.close(); //setting screenshot in imageview String filePath = imageFile

How to give run time permission in android

RunTime Permission in android private void checkGalleryPermissions() { if (ActivityCompat.checkSelfPermission(MainActivity.this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) { if (ActivityCompat.shouldShowRequestPermissionRationale(MainActivity.this, Manifest.permission.WRITE_EXTERNAL_STORAGE)) { AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this); builder.setTitle("Need Storage Permission"); builder.setMessage("This app needs storage permission..."); builder.setPositiveButton("Grant", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.cancel(); ActivityCompat.requestPermissions(MainActivity.this, new String[] {Manifest.permission.WRITE_EXTERNAL_STORAGE},

Load and Play Video in android using video url.

Load & Play Videos in Android  "video_viewer.xml" file: <?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_gravity="center" > <VideoView android:id="@+id/video_view" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_gravity="center"/> </FrameLayout> "MyPlaylistVideoActivity.java" file: package  com.digipicsworks.friendlien.activity; import  android.app.Activity; import  android.app.Dialog; import  android.app.ProgressDialog; import  android.content.Intent; import  android.media.MediaPlayer; import  android.net.Uri; import  android.os.Bundle; import  android.support.v7.app.AppCompatActivity;

Android SQLite Example

SQLite Android Tutorial "DatabaseHandler.java" class in Android project. package com.digipicsworks.friendlien. SqliteDatabase; import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.sqlite. SQLiteDatabase; import android.database.sqlite. SQLiteOpenHelper; import android.util.Log; import java.util.ArrayList; import java.util.List; /** * Created by user on 1/22/2018. */ public class DatabaseHandler extends SQLiteOpenHelper { private static final int DATABASE_VERSION = 1; // Database Name private static final String DATABASE_NAME = "friendliens"; // MyPlayListTable table name private static final String TABLE_MYPLAYLIST = "myPlayList"; private static final String TABLE_SUGGESTED_VIDEO=" suggestedVideos"; // MyPlayLIst Table Columns names private static final String KEY_ID = "videoId"; private static final String KEY

Android libraries

Use full library and resource for android Image loading library for android :  1 ) https://github.com/bumptech/glide developed by Square 2 ) https://github.com/facebook/fresco developed by Facebook Networking library for android : 1 ) http://square.github.io/retrofit/ developed by Square 2 ) https://github.com/google/volley   developed by Google Dimension manage for library :  1 ) https://github.com/intuit/sdp Offline data support storage library : 1 ) https://realm.io/blog/realm-for-android/ Data binding library for android  1 ) https://developer.android.com/topic/libraries/data-binding/index.html Eventbus for object communication  1 ) https://github.com/greenrobot/EventBus Image effects like instagram : 1 ) https://github.com/CyberAgent/android-gpuimage Animation library for android 1 ) https://github.com/airbnb/lottie-android Material icons : 1 ) https://materialdesignicons.com/ Device matrix :  1 ) https://material.io/devices/ Library find for android :

Android Retrofit Tutorial

Android Retrofit Example Add Below CompileLine in module level "app.gradle" file compile 'com.squareup.retrofit2:retrofit:2.0.2' compile 'com.squareup.retrofit2:converter-gson:2.1.0' compile 'com.squareup.okhttp3:logging-interceptor:3.0.1' MainActivity.java package android.social_integration.semwal.socialintegration.RecyclerViewExample; import android.os.Bundle; import android.social_integration.semwal.socialintegration.R; import android.social_integration.semwal.socialintegration.RetrofitExample.APIService; import android.social_integration.semwal.socialintegration.RetrofitExample.PojoClass; import android.social_integration.semwal.socialintegration.RetrofitExample.Result; import android.support.annotation.Nullable; import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.LinearLayoutManager; import android.support.v7.widget.RecyclerView; import android.util.Log; import java.util.ArrayList; impo