正在查看: Cleaner for WhatsApp v2.9.6 应用的 N.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: Cleaner for WhatsApp v2.9.6 应用的 N.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.lookandfeel.cleanerforwhatsapp.shared;
import android.app.Activity;
import android.content.ActivityNotFoundException;
import android.content.ContentResolver;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.database.Cursor;
import android.media.MediaScannerConnection;
import android.net.ConnectivityManager;
import android.net.NetworkCapabilities;
import android.net.NetworkInfo;
import android.net.Uri;
import android.os.Build;
import android.os.Environment;
import android.os.storage.StorageManager;
import android.os.storage.StorageVolume;
import android.provider.DocumentsContract;
import android.util.Log;
import android.view.View;
import android.webkit.MimeTypeMap;
import android.widget.Toast;
import com.google.android.material.snackbar.Snackbar;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.nio.channels.FileChannel;
import java.text.DecimalFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
public abstract class N {
public static ArrayList a;
class a implements MediaScannerConnection.OnScanCompletedListener {
a() {
}
@Override
public void onScanCompleted(String str, Uri uri) {
Log.v("kml_ExternalStorage", "Scanned " + str + ":");
StringBuilder sb = new StringBuilder();
sb.append("-> uri=");
sb.append(uri);
Log.v("kml_ExternalStorage", sb.toString());
}
}
class b implements MediaScannerConnection.OnScanCompletedListener {
b() {
}
@Override
public void onScanCompleted(String str, Uri uri) {
Log.v("kml_ExternalStorage", "Scanned " + str + ":");
StringBuilder sb = new StringBuilder();
sb.append("-> uri=");
sb.append(uri);
Log.v("kml_ExternalStorage", sb.toString());
}
}
public static String a() {
File file = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/WhatsApp");
File file2 = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/Android/media/com.whatsapp/WhatsApp");
File file3 = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/WhatsApp Business");
File file4 = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/Android/media/com.whatsapp.w4b/WhatsApp Business");
boolean z = false;
boolean z5 = (file.listFiles() != null && file2.listFiles() == null) || ((file.listFiles() != null || file2.listFiles() == null) && (file.listFiles() == null || file2.listFiles() == null || file.listFiles().length >= file2.listFiles().length));
if ((file3.listFiles() != null && file4.listFiles() == null) || ((file3.listFiles() != null || file4.listFiles() == null) && (file3.listFiles() == null || file4.listFiles() == null || file3.listFiles().length >= file4.listFiles().length))) {
z = true;
}
return (z5 && file.exists() && file.isDirectory()) ? file.getAbsolutePath() : (!z5 && file2.exists() && file2.isDirectory()) ? file2.getAbsolutePath() : (z && file3.exists() && file3.isDirectory()) ? file3.getAbsolutePath() : (!z && file4.exists() && file4.isDirectory()) ? file4.getAbsolutePath() : file.getAbsolutePath();
}
public static String b() {
File file = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/WhatsApp");
File file2 = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/Android/media/com.whatsapp/WhatsApp");
File file3 = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/WhatsApp Business");
File file4 = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/Android/media/com.whatsapp.w4b/WhatsApp Business");
boolean z = false;
boolean z5 = (file.listFiles() != null && file2.listFiles() == null) || ((file.listFiles() != null || file2.listFiles() == null) && (file.listFiles() == null || file2.listFiles() == null || file.listFiles().length >= file2.listFiles().length));
if ((file3.listFiles() != null && file4.listFiles() == null) || ((file3.listFiles() != null || file4.listFiles() == null) && (file3.listFiles() == null || file4.listFiles() == null || file3.listFiles().length >= file4.listFiles().length))) {
z = true;
}
return (z5 && file.exists() && file.isDirectory()) ? "WhatsApp" : (!z5 && file2.exists() && file2.isDirectory()) ? "WhatsApp" : (z && file3.exists() && file3.isDirectory()) ? "WhatsApp Business" : (!z && file4.exists() && file4.isDirectory()) ? "WhatsApp Business" : "WhatsApp";
}
public static boolean c(File file, Context context) {
boolean z;
try {
try {
z = file.delete();
} catch (Exception e) {
Log.v("kml_error", e.getMessage());
String[] strArr = {file.toString()};
MediaScannerConnection.scanFile(context, strArr, null, new b());
z = false;
file = strArr;
}
return z;
} finally {
MediaScannerConnection.scanFile(context, new String[]{file.toString()}, null, new b());
}
}
public static void d(String str, View view, Activity activity) {
try {
try {
Snackbar.m0(view, str, -1).p0("Action", null).W();
} catch (Exception unused) {
Toast.makeText(activity, "" + str, 0).show();
}
} catch (Exception e) {
e.printStackTrace();
}
}
public static ArrayList e() {
return a;
}
public static Uri f(String str, Activity activity) {
StorageVolume primaryStorageVolume;
Intent createOpenDocumentTreeIntent;
primaryStorageVolume = ((StorageManager) activity.getApplication().getSystemService("storage")).getPrimaryStorageVolume();
createOpenDocumentTreeIntent = primaryStorageVolume.createOpenDocumentTreeIntent();
return Uri.parse(((Uri) createOpenDocumentTreeIntent.getParcelableExtra("android.provider.extra.INITIAL_URI")).toString().replace("/root/", "/document/") + "%3A" + str);
}
public static String g(String str) {
String substring = str.substring(str.lastIndexOf(".") + 1);
return substring.equals("opus") ? "audio/opus" : MimeTypeMap.getSingleton().getMimeTypeFromExtension(substring);
}
public static boolean h(String str) {
return "vnd.android.document/directory".equals(str);
}
public static Q.a i(Q.a[] aVarArr, String str) {
for (Q.a aVar : new ArrayList(Arrays.asList(aVarArr))) {
if (aVar.g() && aVar.f().getLastPathSegment().toLowerCase().endsWith(str.toLowerCase())) {
return aVar;
}
}
return null;
}
public static Uri j(List list, String str) {
Iterator it = list.iterator();
while (it.hasNext()) {
Uri uri = (Uri) it.next();
if (uri.getLastPathSegment().toLowerCase().endsWith(str.toLowerCase())) {
return uri;
}
}
return null;
}
public static boolean k(Context context) {
ConnectivityManager connectivityManager;
if (context != null && (connectivityManager = (ConnectivityManager) context.getSystemService("connectivity")) != null) {
if (Build.VERSION.SDK_INT >= 29) {
NetworkCapabilities networkCapabilities = connectivityManager.getNetworkCapabilities(E0.e.a(connectivityManager));
if (networkCapabilities != null) {
if (networkCapabilities.hasTransport(0) || networkCapabilities.hasTransport(1)) {
return true;
}
return networkCapabilities.hasTransport(3);
}
} else {
try {
NetworkInfo activeNetworkInfo = connectivityManager.getActiveNetworkInfo();
if (activeNetworkInfo != null) {
if (activeNetworkInfo.isConnected()) {
return true;
}
}
} catch (Exception e) {
Log.i("update_statut", "" + e.getMessage());
}
}
}
return false;
}
public static boolean l(String str, PackageManager packageManager) {
try {
return packageManager.getApplicationInfo(str, 0).enabled;
} catch (PackageManager.NameNotFoundException unused) {
return false;
}
}
public static boolean m(Activity activity) {
int checkSelfPermission;
int i = Build.VERSION.SDK_INT;
if (i < 23 || i >= 30) {
return true;
}
checkSelfPermission = activity.checkSelfPermission("android.permission.WRITE_EXTERNAL_STORAGE");
if (checkSelfPermission == 0) {
return true;
}
androidx.core.app.b.u(activity, new String[]{"android.permission.WRITE_EXTERNAL_STORAGE"}, 1);
return false;
}
public static List n(Context context, Uri uri) {
ContentResolver contentResolver = context.getContentResolver();
Uri buildChildDocumentsUriUsingTree = DocumentsContract.buildChildDocumentsUriUsingTree(uri, DocumentsContract.getDocumentId(uri));
ArrayList arrayList = new ArrayList();
try {
Cursor query = contentResolver.query(buildChildDocumentsUriUsingTree, new String[]{"document_id"}, null, null, null);
while (query.moveToNext()) {
try {
arrayList.add(DocumentsContract.buildDocumentUriUsingTree(uri, query.getString(0)));
} finally {
}
}
query.close();
} catch (Exception e) {
Log.v("kml_test3", "Failed query: " + e);
}
return arrayList;
}
public static boolean o(File file, File file2, Context context) {
FileChannel fileChannel;
File file3 = new File(file2, file.getName());
FileChannel fileChannel2 = null;
try {
fileChannel = new FileOutputStream(file3).getChannel();
try {
FileChannel channel = new FileInputStream(file).getChannel();
try {
channel.transferTo(0L, channel.size(), fileChannel);
channel.close();
boolean delete = file.delete();
MediaScannerConnection.scanFile(context, new String[]{file3.toString()}, null, new a());
channel.close();
if (fileChannel != null) {
fileChannel.close();
}
return delete;
} catch (Throwable th) {
th = th;
fileChannel2 = channel;
if (fileChannel2 != null) {
fileChannel2.close();
}
if (fileChannel != null) {
fileChannel.close();
}
throw th;
}
} catch (Throwable th2) {
th = th2;
}
} catch (Throwable th3) {
th = th3;
fileChannel = null;
}
}
public static void p(Activity activity, String str) {
Uri parse = Uri.parse("market://details?id=" + str);
Log.v("kml_link", "uri: " + parse.toString());
Intent intent = new Intent("android.intent.action.VIEW", parse);
intent.addFlags(1208483840);
try {
activity.startActivity(intent);
} catch (ActivityNotFoundException unused) {
Log.v("kml_link", "link: http://play.google.com/store/apps/details?id=" + str);
activity.startActivity(new Intent("android.intent.action.VIEW", Uri.parse("http://play.google.com/store/apps/details?id=" + str)));
}
}
public static String q(long j, String str) {
if (j <= 0) {
return "0";
}
double d = j;
int log10 = (int) (Math.log10(d) / Math.log10(1024.0d));
return new DecimalFormat("#,##0.##").format(d / Math.pow(1024.0d, log10)) + str + new String[]{"B", "kB", "MB", "GB", "TB"}[log10];
}
public static void r(ArrayList arrayList) {
a = arrayList;
}
}