release signing stuff

clean
This commit is contained in:
Donald
2017-08-06 21:25:00 +02:00
parent 4384c7e3c3
commit 17a80462b9
14 changed files with 45 additions and 285 deletions

4
.gitignore vendored
View File

@@ -6,6 +6,10 @@
*.iml
/local.properties
# release
/signing.properties
*.jks
.DS_Store
/build
/captures

View File

@@ -2,8 +2,6 @@ apply plugin: 'com.android.application'
repositories {
maven { url "http://dl.bintray.com/dasar/maven" }
}
@@ -38,11 +36,16 @@ android {
targetCompatibility JavaVersion.VERSION_1_8
}
signingConfigs {
release
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
resValue "string", "app_name", "LeafPic"
signingConfig signingConfigs.release
}
debug {
@@ -116,3 +119,22 @@ dependencies {
compile 'com.turingtechnologies.materialscrollbar:lib:10.0.3'
compile 'de.psdev.licensesdialog:licensesdialog:1.8.0'
}
Properties props = new Properties()
def propFile = new File('signing.properties')
if (propFile.canRead()) {
props.load(new FileInputStream(propFile))
if (props != null && props.containsKey('STORE_FILE') && props.containsKey('KEY_ALIAS') && props.containsKey('PASSWORD')) {
android.signingConfigs.release.storeFile = file(props['STORE_FILE'])
android.signingConfigs.release.storePassword = props['PASSWORD']
android.signingConfigs.release.keyAlias = props['KEY_ALIAS']
android.signingConfigs.release.keyPassword = props['PASSWORD']
} else {
println 'signing.properties found but some entries are missing'
android.buildTypes.release.signingConfig = null
}
} else {
println 'signing.properties not found'
android.buildTypes.release.signingConfig = null
}

View File

@@ -1,9 +1,11 @@
package org.horaapps.leafpic.adapters;
import android.content.Context;
import android.graphics.Color;
import android.graphics.PorterDuff;
import android.graphics.drawable.Drawable;
import android.os.Build;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@@ -331,7 +333,8 @@ public class MediaAdapter extends ThemedAdapter<MediaAdapter.ViewHolder> {
@Override
public void refreshTheme(ThemeHelper themeHelper) {
icon.setColor(Color.WHITE);
Log.wtf("asd", "asdasd");
}
}
}

View File

@@ -1,157 +0,0 @@
package org.horaapps.leafpic.adapters;
import android.content.Context;
import android.graphics.PorterDuff;
import android.graphics.drawable.BitmapDrawable;
import android.support.v4.content.ContextCompat;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import com.bumptech.glide.Glide;
import com.bumptech.glide.load.engine.DiskCacheStrategy;
import com.koushikdutta.ion.Ion;
import com.mikepenz.community_material_typeface_library.CommunityMaterial;
import com.mikepenz.iconics.view.IconicsImageView;
import org.horaapps.leafpic.R;
import org.horaapps.leafpic.data.Media;
import java.util.ArrayList;
import horaapps.org.liz.ColorPalette;
import horaapps.org.liz.ThemeHelper;
/**
* Created by dnld on 1/7/16.
*/
public class OldMediaAdapter extends RecyclerView.Adapter<OldMediaAdapter.ViewHolder> {
private ArrayList<Media> medias;
private BitmapDrawable drawable;
private View.OnClickListener mOnClickListener;
private View.OnLongClickListener mOnLongClickListener;
public OldMediaAdapter(ArrayList<Media> ph , Context context) {
medias = ph;
updatePlaceholder(context);
}
public void updatePlaceholder(Context context) {
drawable = (BitmapDrawable) ThemeHelper.getPlaceHolder(context);
}
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View v = LayoutInflater.from(parent.getContext()).inflate(org.horaapps.leafpic.R.layout.card_photo, parent, false);
v.setOnClickListener(mOnClickListener);
v.setOnLongClickListener(mOnLongClickListener);
return new ViewHolder(v);
}
@Override
public void onBindViewHolder(final OldMediaAdapter.ViewHolder holder, int position) {
Media f = medias.get(position);
holder.path.setTag(f);
holder.icon.setVisibility(View.GONE);
if (f.isGif()) {
Ion.with(holder.imageView.getContext())
.load(f.getPath())
.intoImageView(holder.imageView);
holder.gifIcon.setVisibility(View.VISIBLE);
} else {
Glide.with(holder.imageView.getContext())
.load(f.getUri())
.asBitmap()
.signature(f.getSignature())
.centerCrop()
.diskCacheStrategy(DiskCacheStrategy.RESULT)
.thumbnail(0.5f)
//.placeholder(drawable)
.animate(R.anim.fade_in)//TODO:DONT WORK WELL
.into(holder.imageView);
holder.gifIcon.setVisibility(View.GONE);
}
if(f.isVideo()) {
holder.icon.setVisibility(View.VISIBLE);
holder.path.setVisibility(View.VISIBLE);
holder.path.setText(f.getName());
holder.path.setTextColor(ContextCompat.getColor(holder.path.getContext(), org.horaapps.leafpic.R.color.md_dark_primary_text));
holder.path.setBackgroundColor(
ColorPalette.getTransparentColor(
ContextCompat.getColor(holder.path.getContext(), org.horaapps.leafpic.R.color.md_black_1000), 100));
holder.icon.setIcon(CommunityMaterial.Icon.cmd_play_circle);
//ANIMS
holder.icon.animate().alpha(1).setDuration(250);
holder.path.animate().alpha(1).setDuration(250);
} else {
holder.icon.setVisibility(View.GONE);
holder.path.setVisibility(View.GONE);
holder.icon.animate().alpha(0).setDuration(250);
holder.path.animate().alpha(0).setDuration(250);
}
if (f.isSelected()) {
holder.icon.setIcon(CommunityMaterial.Icon.cmd_check);
holder.icon.setVisibility(View.VISIBLE);
holder.imageView.setColorFilter(0x88000000, PorterDuff.Mode.SRC_ATOP);
holder.layout.setPadding(15,15,15,15);
//ANIMS
holder.icon.animate().alpha(1).setDuration(250);
//holder.layout.setBackgroundColor(ThemeHelper.getPrimaryColor(holder.path.getContext()));
} else {
holder.imageView.clearColorFilter();
holder.layout.setPadding(0,0,0,0);
}
}
@Override
public int getItemCount() {
return medias.size();
}
public void setOnClickListener(View.OnClickListener lis) {
mOnClickListener = lis;
}
public void setOnLongClickListener(View.OnLongClickListener lis) {
mOnLongClickListener = lis;
}
public void swapDataSet(ArrayList<Media> asd) {
medias.clear();
medias.addAll(asd);
notifyDataSetChanged();
}
static class ViewHolder extends RecyclerView.ViewHolder {
ImageView imageView; View gifIcon, layout;
TextView path; IconicsImageView icon;
ViewHolder(View itemView) {
super(itemView);
layout = itemView.findViewById(org.horaapps.leafpic.R.id.media_card_layout);
imageView = (ImageView) itemView.findViewById(org.horaapps.leafpic.R.id.photo_preview);
gifIcon = itemView.findViewById(org.horaapps.leafpic.R.id.gif_icon);
icon = (IconicsImageView) itemView.findViewById(org.horaapps.leafpic.R.id.icon);
path = (TextView) itemView.findViewById(org.horaapps.leafpic.R.id.photo_path);
}
}
}

View File

@@ -12,7 +12,6 @@ import android.util.Log;
import org.horaapps.leafpic.data.filter.FilterMode;
import org.horaapps.leafpic.data.sort.SortingMode;
import org.horaapps.leafpic.data.sort.SortingOrder;
import org.horaapps.leafpic.new_way.CursorHandler;
import org.horaapps.leafpic.util.StringUtils;
import java.io.File;

View File

@@ -20,8 +20,8 @@ import java.io.File;
import java.io.FileOutputStream;
import java.util.List;
import static org.horaapps.leafpic.new_way.BitmapUtils.addWhiteBorder;
import static org.horaapps.leafpic.new_way.BitmapUtils.getCroppedBitmap;
import static org.horaapps.leafpic.util.BitmapUtils.addWhiteBorder;
import static org.horaapps.leafpic.util.BitmapUtils.getCroppedBitmap;
/**
* Created by dnld on 3/25/17.

View File

@@ -1,4 +1,4 @@
package org.horaapps.leafpic.new_way;
package org.horaapps.leafpic.data;
import android.database.Cursor;

View File

@@ -20,9 +20,9 @@ import java.util.HashSet;
*/
public class HandlingAlbums extends SQLiteOpenHelper {
private static final int DATABASE_VERSION = 8;
private static final String DATABASE_NAME = "tracked_albums.db";
private static final String TABLE_ALBUMS = "tracked_albums";
private static final int DATABASE_VERSION = 12;
private static final String DATABASE_NAME = "folders.db";
private static final String TABLE_ALBUMS = "folders";
public static final int EXCLUDED = 1;
public static final int INCLUDED = 2;
@@ -58,10 +58,13 @@ public class HandlingAlbums extends SQLiteOpenHelper {
ALBUM_STATUS + " INTEGER, " +
ALBUM_SORTING_MODE + " INTEGER, " +
ALBUM_SORTING_ORDER + " INTEGER)");
db.execSQL(String.format("CREATE UNIQUE INDEX idx_path ON %s (%s)", TABLE_ALBUMS, ALBUM_PATH));
}
@Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS " + TABLE_ALBUMS);
db.execSQL("DROP INDEX IF EXISTS idx_path");
onCreate(db);
}

View File

@@ -13,7 +13,6 @@ import android.provider.MediaStore;
import com.drew.lang.GeoLocation;
import com.drew.lang.annotations.NotNull;
import org.horaapps.leafpic.new_way.CursorHandler;
import org.horaapps.leafpic.util.MediaSignature;
import org.horaapps.leafpic.util.StringUtils;

View File

@@ -3,7 +3,7 @@ package org.horaapps.leafpic.data.provider;
import android.content.ContentResolver;
import android.database.Cursor;
import org.horaapps.leafpic.new_way.CursorHandler;
import org.horaapps.leafpic.data.CursorHandler;
import io.reactivex.Observable;

View File

@@ -13,7 +13,6 @@ import android.support.v7.app.AlertDialog;
import android.support.v7.widget.CardView;
import android.support.v7.widget.GridLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuInflater;
@@ -100,7 +99,6 @@ public class AlbumsFragment extends BaseFragment {
}
private void displayAlbums() {
adapter.clear();
SQLiteDatabase db = HandlingAlbums.getInstance(getContext()).getReadableDatabase();
CPHelper.getAlbums(getContext(), hidden, excuded, sortingMode(), sortingOrder())
@@ -111,8 +109,7 @@ public class AlbumsFragment extends BaseFragment {
album -> adapter.add(album),
throwable -> {
refresh.setRefreshing(false);
Log.wtf("asd", throwable);
throwable.printStackTrace();
},
() -> {
db.close();

View File

@@ -99,6 +99,7 @@ public class RvMediaFragment extends BaseFragment {
adapter.clear();
CPHelper.getMedia(getContext(), album, sortingMode(), sortingOrder())
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())

View File

@@ -1,111 +0,0 @@
package org.horaapps.leafpic.new_way;
import com.jakewharton.rxrelay2.PublishRelay;
import org.horaapps.leafpic.data.Album;
import org.horaapps.leafpic.data.Media;
import java.util.List;
public class DataManager {
private static final String TAG = "DataManager";
private static DataManager instance;
private PublishRelay<Media> mediaRelay = PublishRelay.create();
private PublishRelay<Album> albumsRelay = PublishRelay.create();
/* private BriteDatabase whitelistDatabase;
private Subscription whitelistSubscription;
private BehaviorRelay<List<WhitelistFolder>> whitelistRelay = BehaviorRelay.create();*/
public static DataManager getInstance() {
if (instance == null) {
instance = new DataManager();
}
return instance;
}
private DataManager() {
}
/*
public Observable<List<Media>> getSongsRelay() {
if (songsSubscription == null || songsSubscription.isUnsubscribed()) {
Observable<List<Media>> songsObservable = SqlBriteUtils.createContinuousQuery(ShuttleApplication.make(), Song::new, Song.getQuery());
songsSubscription = (songs) ->
{
List<Media> result = songs;
//Filter out blacklisted songs
if (!blacklistedSongs.isEmpty()) {
result = Stream.of(songs)
.filter(song -> !Stream.of(blacklistedSongs)
.anyMatch(blacklistedSong -> blacklistedSong.songId == song.id))
.collect(Collectors.toList());
}
//Filter out non-whitelisted folders
if (!whitelistFolders.isEmpty()) {
result = Stream.of(result)
.filter(song -> Stream.of(whitelistFolders)
.anyMatch(whitelistFolder -> StringUtils.containsIgnoreCase(song.path, whitelistFolder.folder)))
.collect(Collectors.toList());
}
return result;
}).subscribe(mediaRelay, error -> Crashlytics.log("getSongsRelay error: " + error.getMessage()));
}
return mediaRelay.subscribeOn(Schedulers.io()).map(ArrayList::new);
}
public Observable<List<Media>> getSongsObservable(Func1<Media, Boolean> predicate) {
return getSongsRelay()
.first()
.flatMap(Observable::from)
.filter(predicate).toList();
}
*/
/* *//**
* @return a {@link BriteDatabase} wrapping the whitelist SqliteOpenHelper.
*//*
public BriteDatabase getWhitelistDatabase() {
if (whitelistDatabase == null) {
whitelistDatabase = new SqlBrite.Builder().build()
.wrapDatabaseHelper(new WhitelistDbOpenHelper(ShuttleApplication.make()), Schedulers.io());
}
return whitelistDatabase;
}
*//**
* @return a <b>continuous</b> stream of {@link List<WhitelistFolder>>}, backed by a behavior relay for caching getCursor results.
*//*
private Observable<List<WhitelistFolder>> getWhitelistRelay() {
if (whitelistSubscription == null || whitelistSubscription.isUnsubscribed()) {
whitelistSubscription = getWhitelistDatabase()
.createQuery(WhitelistDbOpenHelper.TABLE_FOLDERS, "SELECT * FROM " + WhitelistDbOpenHelper.TABLE_FOLDERS)
.mapToList(WhitelistFolder::new)
.subscribe(whitelistRelay, error -> Crashlytics.log("getWhitelistRelay error: " + error.getMessage()));
}
return whitelistRelay.subscribeOn(Schedulers.io()).map(ArrayList::new);
}*/
}

View File

@@ -1,4 +1,4 @@
package org.horaapps.leafpic.new_way;
package org.horaapps.leafpic.util;
import android.graphics.Bitmap;
import android.graphics.Canvas;