Main.java Source code

Java tutorial

Introduction

Here is the source code for Main.java

Source

//package com.java2s;
/**
 * Copyright 2009, 2010 Kevin Gaudin
 *
 * This file is part of EmailAlbum.
 *
 * EmailAlbum is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * EmailAlbum is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with EmailAlbum.  If not, see <http://www.gnu.org/licenses/>.
 */

import java.io.File;
import android.content.ContentResolver;
import android.content.ContentValues;
import android.content.Context;

import android.net.Uri;
import android.provider.MediaStore.Images;

public class Main {
    private static Uri sStorageURI = Images.Media.EXTERNAL_CONTENT_URI;

    /**
     * Store a picture that has just been saved to disk in the MediaStore.
     * 
     * @param imageFile
     *            The File of the picture
     * @return The Uri provided by the MediaStore.
     */
    public static Uri storePicture(Context ctx, File imageFile, String imageName) {
        ContentResolver cr = ctx.getContentResolver();
        imageName = imageName.substring(imageName.lastIndexOf('/') + 1);
        ContentValues values = new ContentValues(7);
        values.put(Images.Media.TITLE, imageName);
        values.put(Images.Media.DISPLAY_NAME, imageName);
        values.put(Images.Media.DESCRIPTION, "");
        values.put(Images.Media.DATE_TAKEN, System.currentTimeMillis());
        values.put(Images.Media.MIME_TYPE, "image/jpeg");
        values.put(Images.Media.ORIENTATION, 0);
        File parentFile = imageFile.getParentFile();
        String path = parentFile.toString().toLowerCase();
        String name = parentFile.getName().toLowerCase();
        values.put(Images.ImageColumns.BUCKET_ID, path.hashCode());
        values.put(Images.ImageColumns.BUCKET_DISPLAY_NAME, name);
        values.put("_data", imageFile.toString());

        Uri uri = cr.insert(sStorageURI, values);

        return uri;
    }
}