Commit 91748612 authored by wanglei's avatar wanglei

...

parent c89d55f4
......@@ -25,6 +25,8 @@ import com.swiftcleaner.chovey.view.adapter.AppInfoAdapter;
import com.swiftcleaner.chovey.view.adapter.AppProcessAdapter;
import com.swiftcleaner.chovey.view.dialog.CustomScoreDialog;
import com.zxdemo.admob.AdmobHelper;
import com.zxdemo.admob.ReportAdUtils;
import com.zxdemo.http.ZxHttp;
import java.util.ArrayList;
import java.util.List;
......@@ -32,25 +34,28 @@ import java.util.List;
public class AppProcessActivity extends AppCompatActivity {
ActivityAppProcessBinding binding;
private AppProcessAdapter adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
binding = ActivityAppProcessBinding.inflate(getLayoutInflater());
View view = binding.getRoot();
setContentView(view);
ZxHttp.INSTANCE.getHttpReportInterface("page_AppProcessActivity", "", null);
initBar();
initShow();
}
private void initShow() {
binding.ivReturn.setOnClickListener(v->{
binding.ivReturn.setOnClickListener(v -> {
initCustDialog();
});
binding.appProcessButtonOk.setOnClickListener(v->{
binding.appProcessButtonOk.setOnClickListener(v -> {
initCustDialog();
});
binding.appProcessRecy.setLayoutManager(new LinearLayoutManager(this));
List<AppInfoBean> appInfoList = getNonSystemAppInfos();
adapter=new AppProcessAdapter(appInfoList,this);
adapter = new AppProcessAdapter(appInfoList, this);
binding.appProcessRecy.setAdapter(adapter);
initProcess();
}
......@@ -64,7 +69,7 @@ public class AppProcessActivity extends AppCompatActivity {
String usedDiskMemoryPercent = MemoryUtils.getUsedDiskMemoryPercent(this);
binding.memoryInfoText.setText(totalMemory+"/"+usedMemory);
binding.memoryInfoText.setText(totalMemory + "/" + usedMemory);
binding.appProcessNum.setText(usedDiskMemoryPercent);
try {
......@@ -76,6 +81,7 @@ public class AppProcessActivity extends AppCompatActivity {
binding.progressBar.setProgress(0);
}
}
private List<AppInfoBean> getNonSystemAppInfos() {
PackageManager packageManager = getPackageManager();
List<ApplicationInfo> installedApps = packageManager.getInstalledApplications(0);
......@@ -121,7 +127,7 @@ public class AppProcessActivity extends AppCompatActivity {
initCustDialog();
}
private void initCustDialog(){
private void initCustDialog() {
CustomScoreDialog customScoreDialog = new CustomScoreDialog(this);
customScoreDialog.setOnDialogClickListener(new CustomScoreDialog.OnDialogClickListener() {
@Override
......
......@@ -20,6 +20,7 @@ import com.swiftcleaner.chovey.model.tool.AppUtils;
import com.swiftcleaner.chovey.view.adapter.AppInfoAdapter;
import com.swiftcleaner.chovey.view.dialog.CustomScoreDialog;
import com.zxdemo.admob.AdmobHelper;
import com.zxdemo.http.ZxHttp;
import java.util.ArrayList;
import java.util.List;
......@@ -34,6 +35,7 @@ public class BatteryInfoActivity extends AppCompatActivity {
binding = ActivityBatteryInfoBinding.inflate(getLayoutInflater());
View view = binding.getRoot();
setContentView(view);
ZxHttp.INSTANCE.getHttpReportInterface("page_BatteryInfoActivity", "", null);
initBar();
initShow();
}
......
......@@ -20,6 +20,7 @@ import com.swiftcleaner.chovey.view.adapter.LogsCleanAdapter;
import com.swiftcleaner.chovey.view.adapter.TempCleanAdapter;
import com.swiftcleaner.chovey.view.dialog.CustomScoreDialog;
import com.zxdemo.admob.AdmobHelper;
import com.zxdemo.http.ZxHttp;
import java.text.DecimalFormat;
import java.util.ArrayList;
......@@ -48,6 +49,7 @@ public class CleanJunkActivity extends AppCompatActivity {
binding = ActivityCleanJunkBinding.inflate(getLayoutInflater());
View view = binding.getRoot();
setContentView(view);
ZxHttp.INSTANCE.getHttpReportInterface("page_CleanJunkActivity", "", null);
initBar();
initDate();
}
......
......@@ -10,6 +10,7 @@ import com.gyf.immersionbar.ImmersionBar;
import com.swiftcleaner.chovey.databinding.ActivityEndCleanJunkBinding;
import com.swiftcleaner.chovey.view.dialog.CustomScoreDialog;
import com.zxdemo.admob.AdmobHelper;
import com.zxdemo.http.ZxHttp;
public class EndCleanJunkActivity extends AppCompatActivity {
ActivityEndCleanJunkBinding binding;
......@@ -19,6 +20,7 @@ public class EndCleanJunkActivity extends AppCompatActivity {
binding = ActivityEndCleanJunkBinding.inflate(getLayoutInflater());
View view = binding.getRoot();
setContentView(view);
ZxHttp.INSTANCE.getHttpReportInterface("page_EndCleanJunkActivity", "", null);
initBar();
initShow();
}
......
......@@ -9,6 +9,7 @@ import com.swiftcleaner.chovey.databinding.ActivityInfoBinding;
import com.swiftcleaner.chovey.model.util.BatteryReceiver;
import com.swiftcleaner.chovey.view.dialog.CustomScoreDialog;
import com.zxdemo.admob.AdmobHelper;
import com.zxdemo.http.ZxHttp;
public class InfoActivity extends AppCompatActivity {
private ActivityInfoBinding binding;
......@@ -20,6 +21,7 @@ public class InfoActivity extends AppCompatActivity {
binding = ActivityInfoBinding.inflate(getLayoutInflater());
View view = binding.getRoot();
setContentView(view);
ZxHttp.INSTANCE.getHttpReportInterface("page_InfoActivity", "", null);
initBar();
initShow();
registerReceiver();
......
......@@ -25,6 +25,7 @@ import com.swiftcleaner.chovey.model.tool.ToastUtil;
import com.swiftcleaner.chovey.view.adapter.LargeFileAdapter;
import com.swiftcleaner.chovey.view.dialog.CustomScoreDialog;
import com.zxdemo.admob.AdmobHelper;
import com.zxdemo.http.ZxHttp;
import java.io.File;
import java.text.DecimalFormat;
......@@ -48,6 +49,7 @@ public class LargeFileActivity extends AppCompatActivity {
binding = ActivityLargeFileBinding.inflate(getLayoutInflater());
View view = binding.getRoot();
setContentView(view);
ZxHttp.INSTANCE.getHttpReportInterface("page_LargeFileActivity", "", null);
initBar();
initShow();
}
......
......@@ -23,6 +23,7 @@ import com.swiftcleaner.chovey.view.activity.EndCleanJunkActivity;
import com.swiftcleaner.chovey.view.adapter.ScreenShotAdapter;
import com.swiftcleaner.chovey.view.dialog.CustomScoreDialog;
import com.zxdemo.admob.AdmobHelper;
import com.zxdemo.http.ZxHttp;
import java.text.DecimalFormat;
import java.util.ArrayList;
......@@ -45,6 +46,7 @@ public class ScreenShotActivity extends AppCompatActivity {
super.onCreate(savedInstanceState);
binding = ActivityScreenShotBinding.inflate(getLayoutInflater());
setContentView(binding.getRoot());
ZxHttp.INSTANCE.getHttpReportInterface("page_ScreenShotActivity", "", null);
initBar();
initShow();
}
......
......@@ -18,6 +18,7 @@ import com.swiftcleaner.chovey.databinding.ActivityMainBinding;
import com.swiftcleaner.chovey.databinding.ActivitySettingBinding;
import com.swiftcleaner.chovey.view.dialog.CustomScoreDialog;
import com.zxdemo.admob.AdmobHelper;
import com.zxdemo.http.ZxHttp;
public class SettingActivity extends AppCompatActivity {
ActivitySettingBinding binding;
......@@ -27,6 +28,7 @@ public class SettingActivity extends AppCompatActivity {
binding = ActivitySettingBinding.inflate(getLayoutInflater());
View view = binding.getRoot();
setContentView(view);
ZxHttp.INSTANCE.getHttpReportInterface("page_SettingActivity", "", null);
initBar();
initShow();
}
......
......@@ -15,6 +15,7 @@ import com.swiftcleaner.chovey.model.tool.MediaHelps;
import com.swiftcleaner.chovey.view.adapter.SimilarPhotosAdapter;
import com.swiftcleaner.chovey.view.dialog.CustomScoreDialog;
import com.zxdemo.admob.AdmobHelper;
import com.zxdemo.http.ZxHttp;
import java.util.ArrayList;
import java.util.HashSet;
......@@ -37,6 +38,7 @@ public class SimilarPhotosActivity extends AppCompatActivity {
binding = ActivitySimilarPhotosBinding.inflate(getLayoutInflater());
View view = binding.getRoot();
setContentView(view);
ZxHttp.INSTANCE.getHttpReportInterface("page_SimilarPhotosActivity", "", null);
initBar();
initShow();
}
......
......@@ -30,6 +30,7 @@ import com.swiftcleaner.chovey.databinding.ActivityStartBinding;
import com.swiftcleaner.chovey.model.util.PermissionUtils;
import com.swiftcleaner.chovey.view.MainActivity;
import com.zxdemo.admob.AdmobHelper;
import com.zxdemo.http.ZxHttp;
import com.zxdemo.utils.NonBlockingCountdown;
import java.util.Objects;
......@@ -53,6 +54,7 @@ public class StartActivity extends AppCompatActivity {
binding = ActivityStartBinding.inflate(getLayoutInflater());
View view = binding.getRoot();
setContentView(view);
ZxHttp.INSTANCE.getHttpReportInterface("page_StartActivity", "", null);
initBar();
initPermission();
sharedPreferences = getSharedPreferences("AppPreferences", MODE_PRIVATE);
......
......@@ -18,6 +18,7 @@ import com.swiftcleaner.chovey.view.adapter.EmptyCleanAdapter;
import com.swiftcleaner.chovey.view.adapter.WhatsAppCleanAdapter;
import com.swiftcleaner.chovey.view.dialog.CustomScoreDialog;
import com.zxdemo.admob.AdmobHelper;
import com.zxdemo.http.ZxHttp;
import java.text.DecimalFormat;
import java.util.ArrayList;
......@@ -44,6 +45,7 @@ public class WhatsAppActivity extends AppCompatActivity {
binding = ActivityWhatsAppBinding.inflate(getLayoutInflater());
View view = binding.getRoot();
setContentView(view);
ZxHttp.INSTANCE.getHttpReportInterface("page_StartActivity", "", null);
initBar();
initShow();
......
package com.zxdemo.admob
import android.animation.ObjectAnimator
import android.animation.ValueAnimator.INFINITE
import android.app.AlertDialog
import android.content.Context
import android.view.LayoutInflater
import android.view.animation.LinearInterpolator
import com.swiftcleaner.chovey.databinding.DialogAdPreparingBinding
import com.zxdemo.utils.DensityUtils
object AdDialog {
private val TAG = "AdDialog"
fun Context.showAdPreparingDialog(where: Int = 0): AlertDialog {
val binding = DialogAdPreparingBinding.inflate(LayoutInflater.from(this))
val dialog = AlertDialog.Builder(this).create()
dialog.setView(binding.root)
dialog.setCancelable(false)
dialog.setCanceledOnTouchOutside(false)
dialog.show()
val params = dialog.window?.attributes
params?.width = DensityUtils.dip2px(200f)
params?.height = DensityUtils.dip2px(146f)
dialog.window?.attributes = params
dialog.window?.setBackgroundDrawableResource(android.R.color.transparent)
// 创建一个旋转动画
val rotateAnimator = ObjectAnimator.ofFloat(binding.iv, "rotation", 0f, -360f)
rotateAnimator.setDuration(1000) // 设置动画持续时间为1000毫秒
rotateAnimator.repeatCount = INFINITE
rotateAnimator.interpolator = LinearInterpolator() // 设置插值器为线性插值
rotateAnimator.start()
return dialog
}
}
\ No newline at end of file
package com.zxdemo.admob
import android.app.Activity
import android.app.Dialog
import android.content.Context
import android.os.Bundle
import android.util.Log
......@@ -34,6 +35,7 @@ import com.google.android.gms.ads.interstitial.InterstitialAd
import com.google.android.gms.ads.interstitial.InterstitialAdLoadCallback
import com.google.android.gms.ads.nativead.NativeAd
import com.google.android.gms.ads.nativead.NativeAdOptions
import com.zxdemo.admob.AdDialog.showAdPreparingDialog
import com.zxdemo.utils.SpUtils
import java.util.Calendar
import java.util.UUID
......@@ -390,7 +392,7 @@ object AdmobHelper {
completed?.invoke()
SpUtils.getInstance().putLong(KEY_LAST_DISPLAY_TIME, System.currentTimeMillis())
calculate(KEY_DISPLAY_NUMBER)
// com.zxdemo.admob.ReportAdUtils.showAd(appOpenAd?.responseInfo, APP_OPEN_AD_UNIT, activity)
ReportAdUtils.showAd(appOpenAd?.responseInfo, APP_OPEN_AD_UNIT, activity)
appOpenMaxAd = null
loadAppOpenAd(activity)
}
......@@ -422,6 +424,7 @@ object AdmobHelper {
}
}
private var adDialog: Dialog? = null
fun showInterstitialAd(
activity: Activity,
dismissed: (() -> Unit?)? = null,
......@@ -445,6 +448,7 @@ object AdmobHelper {
})
return
}
adDialog = activity.showAdPreparingDialog()
if (useAdmob) {
interstitialAd?.fullScreenContentCallback = object : FullScreenContentCallback() {
override fun onAdClicked() {
......@@ -467,6 +471,8 @@ object AdmobHelper {
}
override fun onAdShowedFullScreenContent() {
adDialog?.dismiss()
adDialog = null
Log.d(TAG, "interstitial Ad showed fullscreen content.")
completed?.invoke()
calculate(KEY_DISPLAY_NUMBER)
......
package com.zxdemo.utils;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.Context;
import android.util.DisplayMetrics;
import android.view.Display;
import android.view.WindowManager;
import androidx.annotation.NonNull;
import com.zxdemo.ZxApplication;
/**
* 做尺寸转换的工具类。在dp/sp/px之间自由转换
*
* @noinspection unused
*/
public class DensityUtils {
@SuppressLint("StaticFieldLeak")
static Context context = ZxApplication.context;
public static int dip2px(float dipValue) {
float scale = context.getResources()
.getDisplayMetrics().density;
return (int) (dipValue * scale + 0.5f);
}
public static int dip2px(float dipValue, float toScale) {
float scale = context.getResources()
.getDisplayMetrics().density;
return (int) ((dipValue * scale + 0.5f) * toScale);
}
public static int px2dip(float pxValue) {
float scale = context.getResources()
.getDisplayMetrics().density;
return (int) (pxValue / scale + 0.5f);
}
public static int px2sp(float pxValue) {
float scale = context.getResources()
.getDisplayMetrics().density;
return (int) (pxValue / scale + 0.5f);
}
public static int sp2px(float spValue) {
float scale = context.getResources()
.getDisplayMetrics().density;
return (int) (spValue * scale + 0.5f);
}
public static int getWidth() {
initScreen();
if (screen != null) {
return screen.widthPixels;
}
return 0;
}
public static int getHeight() {
initScreen();
if (screen != null) {
return screen.heightPixels;
}
return 0;
}
/**
* @noinspection SuspiciousNameCombination
*/
static void initScreen() {
if (screen == null) {
DisplayMetrics dm = new DisplayMetrics();
WindowManager windowManager = (WindowManager) context
.getSystemService(Context.WINDOW_SERVICE);
windowManager.getDefaultDisplay().getMetrics(dm);
if (dm.widthPixels > dm.heightPixels) {
screen = new Screen(dm.heightPixels, dm.widthPixels);
} else {
screen = new Screen(dm.widthPixels, dm.heightPixels);
}
}
}
static Screen screen = null;
public static class Screen {
public int widthPixels;
public int heightPixels;
public Screen() {
}
public Screen(int widthPixels, int heightPixels) {
this.widthPixels = widthPixels;
this.heightPixels = heightPixels;
}
@NonNull
@Override
public String toString() {
return "(" + widthPixels + "," + heightPixels + ")";
}
}
/**
* Get Screen Real Width 包含状态栏导航栏
*
* @return Real Width
*/
public static int getRealWidth() {
Display display = getDisplay(context);
if (display == null) {
return 0;
}
DisplayMetrics dm = new DisplayMetrics();
display.getRealMetrics(dm);
return dm.widthPixels;
}
/**
* Get Screen Real Height 包含状态栏导航栏
*
* @return Real Height
*/
public static int getRealHeight() {
Display display = getDisplay(context);
if (display == null) {
return 0;
}
DisplayMetrics dm = new DisplayMetrics();
display.getRealMetrics(dm);
return dm.heightPixels;
}
/**
* Get Display
*
* @param context Context for get WindowManager
* @return Display
*/
private static Display getDisplay(Context context) {
WindowManager wm;
if (context instanceof Activity) {
Activity activity = (Activity) context;
wm = activity.getWindowManager();
} else {
wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
}
if (wm != null) {
return wm.getDefaultDisplay();
}
return null;
}
/**
* Get Screen Height 不含状态栏导航栏
*/
public static int getScreenHeight(Context context) {
return context.getResources().getDisplayMetrics().heightPixels;
}
/**
* Get Screen Width 不含状态栏导航栏
*/
public static int getScreenWidth(Context context) {
return context.getResources().getDisplayMetrics().widthPixels;
}
}
<?xml version="1.0" encoding="utf-8"?>
<androidx.cardview.widget.CardView 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="180dp"
android:layout_height="136dp"
android:layout_margin="5dp"
app:cardCornerRadius="25dp"
app:cardElevation="0dp">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:ignore="UseCompoundDrawables">
<ImageView
android:id="@+id/iv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="23dp"
android:src="@mipmap/jiazai_ad"
tools:ignore="ContentDescription" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="18dp"
android:layout_marginBottom="22dp"
android:includeFontPadding="false"
android:text="@string/preparing_advertisement"
android:textColor="@color/black"
android:textSize="13sp"
tools:ignore="HardcodedText" />
</LinearLayout>
</androidx.cardview.widget.CardView>
\ No newline at end of file
......@@ -17,4 +17,6 @@
<item>1111</item>
<item>1111</item>
</string-array>
<string name="preparing_advertisement">Preparing advertisement</string>
</resources>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment