正在查看: St.John's v1.0.9 应用的 HiddenActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: St.John's v1.0.9 应用的 HiddenActivity.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.mlsdev.rximagepicker;
import android.app.Activity;
import android.content.ClipData;
import android.content.ContentResolver;
import android.content.ContentValues;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.provider.MediaStore;
import androidx.core.app.ActivityCompat;
import androidx.core.content.ContextCompat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.Locale;
public class HiddenActivity extends Activity {
public static final String ALLOW_MULTIPLE_IMAGES = "allow_multiple_images";
public static final String IMAGE_SOURCE = "image_source";
private static final String KEY_CAMERA_PICTURE_URL = "cameraPictureUrl";
private static final int SELECT_PHOTO = 100;
private static final int TAKE_PHOTO = 101;
private Uri cameraPictureUrl;
@Override
protected void onCreate(Bundle bundle) {
super.onCreate(bundle);
if (bundle == null) {
handleIntent(getIntent());
}
}
@Override
protected void onSaveInstanceState(Bundle bundle) {
bundle.putParcelable(KEY_CAMERA_PICTURE_URL, this.cameraPictureUrl);
super.onSaveInstanceState(bundle);
}
@Override
protected void onRestoreInstanceState(Bundle bundle) {
super.onRestoreInstanceState(bundle);
this.cameraPictureUrl = (Uri) bundle.getParcelable(KEY_CAMERA_PICTURE_URL);
}
@Override
protected void onNewIntent(Intent intent) {
handleIntent(intent);
}
@Override
public void onRequestPermissionsResult(int i, String[] strArr, int[] iArr) {
if (iArr.length > 0 && iArr[0] == 0) {
handleIntent(getIntent());
} else {
finish();
}
}
@Override
protected void onActivityResult(int i, int i2, Intent intent) {
if (i2 == -1) {
if (i == 100) {
handleGalleryResult(intent);
} else if (i == 101) {
RxImagePicker.with(this).onImagePicked(this.cameraPictureUrl);
}
}
finish();
}
private void handleGalleryResult(Intent intent) {
if (getIntent().getBooleanExtra(ALLOW_MULTIPLE_IMAGES, false)) {
ArrayList arrayList = new ArrayList();
ClipData clipData = intent.getClipData();
if (clipData != null) {
for (int i = 0; i < clipData.getItemCount(); i++) {
arrayList.add(clipData.getItemAt(i).getUri());
}
} else {
arrayList.add(intent.getData());
}
RxImagePicker.with(this).onImagesPicked(arrayList);
return;
}
RxImagePicker.with(this).onImagePicked(intent.getData());
}
private void handleIntent(Intent intent) {
Intent intent2;
if (checkPermission()) {
int i = 0;
int i2 = AnonymousClass1.$SwitchMap$com$mlsdev$rximagepicker$Sources[Sources.values()[intent.getIntExtra(IMAGE_SOURCE, 0)].ordinal()];
if (i2 == 1) {
this.cameraPictureUrl = createImageUri();
intent2 = new Intent("android.media.action.IMAGE_CAPTURE");
intent2.putExtra("output", this.cameraPictureUrl);
i = 101;
} else if (i2 != 2) {
intent2 = null;
} else {
intent2 = new Intent("android.intent.action.OPEN_DOCUMENT");
intent2.putExtra("android.intent.extra.ALLOW_MULTIPLE", getIntent().getBooleanExtra(ALLOW_MULTIPLE_IMAGES, false));
intent2.addFlags(64);
intent2.putExtra("android.intent.extra.LOCAL_ONLY", true);
intent2.addFlags(1);
intent2.setType("image/*");
i = 100;
}
startActivityForResult(intent2, i);
}
}
static class AnonymousClass1 {
static final int[] $SwitchMap$com$mlsdev$rximagepicker$Sources;
static {
int[] iArr = new int[Sources.values().length];
$SwitchMap$com$mlsdev$rximagepicker$Sources = iArr;
try {
iArr[Sources.CAMERA.ordinal()] = 1;
} catch (NoSuchFieldError unused) {
}
try {
$SwitchMap$com$mlsdev$rximagepicker$Sources[Sources.GALLERY.ordinal()] = 2;
} catch (NoSuchFieldError unused2) {
}
}
}
private boolean checkPermission() {
if (ContextCompat.checkSelfPermission(this, "android.permission.WRITE_EXTERNAL_STORAGE") == 0) {
return true;
}
ActivityCompat.requestPermissions(this, new String[]{"android.permission.WRITE_EXTERNAL_STORAGE"}, 0);
return false;
}
private Uri createImageUri() {
ContentResolver contentResolver = getContentResolver();
ContentValues contentValues = new ContentValues();
contentValues.put("title", new SimpleDateFormat("yyyyMMdd_HHmmss", Locale.getDefault()).format(new Date()));
return contentResolver.insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, contentValues);
}
}