Wednesday, 1 August 2018

Camera,Gallery Image

-----------------------------------Androidmanifest--------------------------

<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />



-------------------Activity------------------
package com.loggedin.mmf.myapplicationcameraimagetake;

import android.Manifest;
import android.app.Activity;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.graphics.Bitmap;
import android.net.Uri;
import android.os.Build;
import android.provider.MediaStore;
import android.support.v4.app.ActivityCompat;
import android.support.v4.content.ContextCompat;
import android.support.v7.app.AlertDialog;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;

import static android.Manifest.permission.CAMERA;

public class MainActivity extends AppCompatActivity {
    private Button buttonImage;
    public static int SELECT_FROM_GALLERY = 2;
    public static int CAMERA_PIC_REQUEST = 0;
    private static final int REQUEST = 1337;
    public static final int PERMISSION_REQUEST_CODE = 1111;
    Uri mImageCaptureUri;
    Bitmap productImageBitmap;
    ImageView profilePic;

    @Override    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        buttonImage = (Button) findViewById(R.id.buttonImage);
        profilePic = (ImageView) findViewById(R.id.profilePic);
        buttonImage.setOnClickListener(new View.OnClickListener() {
            @Override            public void onClick(View v) {
                selectImage();

            }
        });
    }

    private void selectImage() {
        final CharSequence[] options = {"From Camera", "From Gallery", "Cancel"};
        AlertDialog.Builder builder = new AlertDialog.Builder(this);
        builder.setTitle("Please choose an Image");
        builder.setItems(options, new DialogInterface.OnClickListener() {
            @Override            public void onClick(DialogInterface dialog, int item) {
                if (options[item].equals("From Camera")) {
                    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
                        if (checkCameraPermission())
                            cameraIntent();
                        else                            requestPermission();
                    } else                        cameraIntent();
                } else if (options[item].equals("From Gallery")) {
                    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
                        if (checkGalleryPermission())
                            galleryIntent();
                        else                            requestGalleryPermission();
                    } else                        galleryIntent();
                } else if (options[item].equals("Cancel")) {
                    dialog.dismiss();
                }
            }
        });
        builder.create().show();
    }

    private void galleryIntent() {
        Intent intent = new Intent().setType("image/*").setAction(Intent.ACTION_PICK);
        startActivityForResult(Intent.createChooser(intent, "Select Picture"), SELECT_FROM_GALLERY);
    }

    private void cameraIntent() {
        Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
        intent.putExtra(MediaStore.EXTRA_OUTPUT, mImageCaptureUri);
        startActivityForResult(intent, CAMERA_PIC_REQUEST);
    }

    private void requestPermission() {
        ActivityCompat.requestPermissions(MainActivity.this, new String[]{CAMERA}, PERMISSION_REQUEST_CODE);
    }

    private void requestGalleryPermission() {
        ActivityCompat.requestPermissions(MainActivity.this, new String[]{Manifest.permission.READ_EXTERNAL_STORAGE}, REQUEST);
    }

    private boolean checkCameraPermission() {
        int result1 = ContextCompat.checkSelfPermission(MainActivity.this, CAMERA);
        return result1 == PackageManager.PERMISSION_GRANTED;
    }

    private boolean checkGalleryPermission() {
        int result2 = ContextCompat.checkSelfPermission(MainActivity.this, Manifest.permission.READ_EXTERNAL_STORAGE);
        return result2 == PackageManager.PERMISSION_GRANTED;
    }

    @Override    protected void onActivityResult(int requestCode, int resultCode, Intent data) {


        if (requestCode == CAMERA_PIC_REQUEST && resultCode == Activity.RESULT_OK && null != data) {
            Uri cameraURI = data.getData();
            productImageBitmap = (Bitmap) data.getExtras().get("data");
            profilePic.setImageBitmap(productImageBitmap);
            profilePic.setVisibility(View.VISIBLE);

        } else if (requestCode == SELECT_FROM_GALLERY && resultCode == Activity.RESULT_OK && null != data) {
            Uri galleryURI = data.getData();
            profilePic.setImageURI(galleryURI);
        }
    }

}





----------------activity.xml-----------------
<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:app="http://schemas.android.com/apk/res-auto"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    tools:context=".MainActivity">

    <LinearLayout        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:orientation="vertical">

        <TextView            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="Hello World!"            app:layout_constraintBottom_toBottomOf="parent"            app:layout_constraintLeft_toLeftOf="parent"            app:layout_constraintRight_toRightOf="parent"            app:layout_constraintTop_toTopOf="parent" />
<ImageView    android:layout_width="match_parent"    android:layout_height="300dp"    android:id="@+id/profilePic"/>
        <Button            android:id="@+id/buttonImage"            android:layout_width="match_parent"            android:layout_height="wrap_content"            android:text="Picture"/>
    </LinearLayout>
</RelativeLayout>

Tuesday, 26 June 2018

Password Validation

package com.dhananjay.demoravicontact.allsetting.activity;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

import com.dhananjay.demoravicontact.R;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class AllSettingActivity extends AppCompatActivity {
    protected static final String TAG = "AllSettingActivity";
    EditText password_edittext;
    Button send_button;

    @Override    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_all_setting);
        password_edittext=(EditText)findViewById(R.id.password_edittext);
        send_button=(Button) findViewById(R.id.send_button);

        send_button.setOnClickListener(new View.OnClickListener() {
            @Override            public void onClick(View view) {
                if(password_edittext.getText().toString().length()<8
 &&!isValidPassword(password_edittext.getText().toString())){
                    System.out.println("Not Valid");
                    Toast.makeText(AllSettingActivity.this, "Not Valid", 
Toast.LENGTH_SHORT).show();
                }else{
                    Toast.makeText(AllSettingActivity.this, "Valid", 
Toast.LENGTH_SHORT).show();
                    System.out.println("Valid");
                }
            }
        });
    }

    @Override    protected void onResume() {
        super.onResume();

    }
    public static boolean isValidPassword(final String password) {

        Pattern pattern;
        Matcher matcher;
        final String PASSWORD_PATTERN =
 "^(?=.*[0-9])(?=.*[A-Z])(?=.*[@#$%^&+=!])(?=\\S+$).{4,}$";
        pattern = Pattern.compile(PASSWORD_PATTERN);
        matcher = pattern.matcher(password);

        return matcher.matches();

    }

}

Saturday, 23 June 2018

Snack bar



Snackbar snackbar = Snackbar.make(findViewById(android.R.id.content)
, message,
 Snackbar.LENGTH_LONG);
snackbar.show();



AND MAKE FUNCTION CLASS

Function.Snackbar(_context, view,"Something went wrong!");


Function.Snackbar(_context, findViewById(android.R.id.content)
,"Something went wrong!");

Saturday, 24 February 2018

Important Library for Android

Using Parceler


Although creating Android Parcelables is usually at least 10x faster than using Serializable, creating Parcelable objects requires creating a lot of boilerplate code in defining exactly the stream of data that should be serialized and deserialized as documented in this section.

https://github.com/codepath/android_guides/wiki/Using-Parceler



---------------------------------------------------------------------------------




Reducing View Boilerplate with Butterknife


Butterknife is a popular View "injection" library for Android. This means that the library writes common boilerplate view code for you based on annotations to save you time and significantly reduce the lines of boilerplate code written.


Android Plugin
-----Android ButterKnifeZelezny----



https://github.com/codepath/android_guides/wiki/Reducing-View-Boilerplate-with-Butterknife

AutoComplete Address (Updated)

-------------------------------------Activity---------------------------------- package placeautocomplete.iteritory.com; import androi...