diff --git a/.idea/.name b/.idea/.name
deleted file mode 100644
index 3a5e301..0000000
--- a/.idea/.name
+++ /dev/null
@@ -1 +0,0 @@
-superCleanMaster
\ No newline at end of file
diff --git a/.idea/caches/build_file_checksums.ser b/.idea/caches/build_file_checksums.ser
new file mode 100644
index 0000000..18764c0
Binary files /dev/null and b/.idea/caches/build_file_checksums.ser differ
diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml
new file mode 100644
index 0000000..30aa626
--- /dev/null
+++ b/.idea/codeStyles/Project.xml
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/compiler.xml b/.idea/compiler.xml
deleted file mode 100644
index 217af47..0000000
--- a/.idea/compiler.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/.idea/copyright/profiles_settings.xml b/.idea/copyright/profiles_settings.xml
deleted file mode 100644
index e7bedf3..0000000
--- a/.idea/copyright/profiles_settings.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
\ No newline at end of file
diff --git a/.idea/encodings.xml b/.idea/encodings.xml
deleted file mode 100644
index e206d70..0000000
--- a/.idea/encodings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-
-
-
diff --git a/.idea/gradle.xml b/.idea/gradle.xml
index 0628ced..66e2f6f 100644
--- a/.idea/gradle.xml
+++ b/.idea/gradle.xml
@@ -12,8 +12,8 @@
+
-
-
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 7d2fd3b..99202cc 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -1,26 +1,34 @@
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
- Abstraction issues
-
-
-
-
-
-
+
-
-
+
+
+
+
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
index cbecdf9..68ff8cf 100644
--- a/.idea/modules.xml
+++ b/.idea/modules.xml
@@ -7,5 +7,4 @@
-
-
+
\ No newline at end of file
diff --git a/.idea/runConfigurations.xml b/.idea/runConfigurations.xml
new file mode 100644
index 0000000..7f68460
--- /dev/null
+++ b/.idea/runConfigurations.xml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/scopes/scope_settings.xml b/.idea/scopes/scope_settings.xml
deleted file mode 100644
index 922003b..0000000
--- a/.idea/scopes/scope_settings.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
index 276779e..94a25f7 100644
--- a/.idea/vcs.xml
+++ b/.idea/vcs.xml
@@ -1,8 +1,6 @@
-
-
-
+
\ No newline at end of file
diff --git a/README.md b/README.md
index 74b1f1d..04c7ea8 100644
--- a/README.md
+++ b/README.md
@@ -1,30 +1,4 @@
# superCleanMaster
-一键清理 开源版,包括内存加速,缓存清理,自启管理,软件管理等。
-[点击下载最新版本](http://www.pgyer.com/superclean)
-## 说明
-前一段时间买了一个android 手机,发现竟然没有一键所清理有进程功能!
-就下载了市面上的一些一键清理软件。但是使用起来都不是特别爽。
-由于android清理软件不是系统软件。想要深度清理一些手机进程需要手机的root权限。作为一名“高大上”程序猿。怎么能轻易的让别的应用获取手机的root权限呢?于是就有了想写一款开源清理软件的想法。于是就动工了……..n个星期后。基本功能完成了。虽说有些地方还不太满意,待我以后慢慢维护吧。先把他放出来在说。
-## 基本功能
-* 内存加速
-* 缓存清理
-* 自启管理
-* 软件管理
-* 设备信息
-##应用截图
-
-
-
-
-
+superCleanMaster is deprecated Thanks for all your support!
-##Open source projects
-* [ButterKnife](http://jakewharton.github.io/butterknife/)
-* [changelog](https://github.com/gabrielemariotti/changeloglib)
-* [smoothprogressbar](https://github.com/castorflex/SmoothProgressBar)
-* [ListViewAnimations](https://github.com/nhaarman/ListViewAnimations)
-* [LDrawer](https://github.com/ikimuhendis/LDrawer)
-* [CircleProgress](https://github.com/lzyzsd/CircleProgress)
-* [TextCounter](https://github.com/premnirmal/TextCounter)
-* [WaveView](https://github.com/john990/WaveView)
diff --git a/Your Master Cleaner.jks b/Your Master Cleaner.jks
new file mode 100644
index 0000000..cd49b28
Binary files /dev/null and b/Your Master Cleaner.jks differ
diff --git a/app/app.iml b/app/app.iml
index 44beb51..369182c 100644
--- a/app/app.iml
+++ b/app/app.iml
@@ -1,5 +1,5 @@
-
+
@@ -11,9 +11,9 @@
-
-
-
+
+ generateDebugSources
+
@@ -22,92 +22,144 @@
-
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
+
+
+
+
+
+
-
+
-
+
+
+
+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
-
-
-
+
+
+
+
+
+
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index 7ae8b1a..540bae4 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,15 +1,20 @@
apply plugin: 'com.android.application'
-
+android.defaultConfig.javaCompileOptions.annotationProcessorOptions.includeCompileClasspath = true
android {
- compileSdkVersion 21
- buildToolsVersion "21.1.2"
-
+ compileSdkVersion 27
+ buildToolsVersion '27.0.3'
+ lintOptions {
+ checkReleaseBuilds false
+ // Or, if you prefer, you can continue to check for errors in release builds,
+ // but continue the build even when errors are found:
+ abortOnError false
+ }
defaultConfig {
- applicationId "com.yzy.supercleanmaster"
- minSdkVersion 14
- targetSdkVersion 21
- versionCode 3
- versionName "1.0"
+ applicationId "com.balaganovrocks.yourmasterclean"
+ minSdkVersion 16
+ targetSdkVersion 27
+ versionCode 4
+ versionName "1.1"
}
buildTypes {
release {
@@ -17,25 +22,33 @@ android {
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
-}
-dependencies {
- compile fileTree(dir: 'libs', include: ['*.jar'])
- compile 'com.android.support:appcompat-v7:21.0.3'
- compile 'com.jakewharton:butterknife:6.0.0'
- compile 'com.nhaarman.listviewanimations:lib-core:3.1.0@aar'
- compile 'com.nhaarman.listviewanimations:lib-manipulation:3.1.0@aar'
- compile 'com.nhaarman.listviewanimations:lib-core-slh:3.1.0@aar'
- compile 'com.umeng.analytics:analytics:latest.integration'
- compile 'com.github.gabrielemariotti.changeloglib:library:1.5.2'
- compile 'com.hannesdorfmann.smoothprogressbar:library:1.0.0'
- compile 'com.github.castorflex.smoothprogressbar:library-circular:1.0.0'
- compile project(':library')
- compile files('libs/nineoldandroids-2.4.0.jar')
- compile files('libs/umeng-update-v2.5.0.jar')
- compile files('libs/httpmime-4.1.3.jar')
- compile files('libs/umeng_social_sdk.jar')
- compile files('libs/SocialSDK_laiwang_1.jar')
- compile files('libs/SocialSDK_laiwang_2.jar')
- compile files('libs/SocialSDK_QQZone_1.jar')
-}
+ dependencies {
+ implementation fileTree(include: ['*.jar'], dir: 'libs')
+ implementation 'com.google.android.gms:play-services-ads:15.0.1'
+ // Библиотека Appmetrica SDK.
+ implementation 'com.yandex.android:mobmetricalib:3.2.2'
+ // Опционально. Библиотека Play Install Referrer.
+ implementation 'com.android.installreferrer:installreferrer:1.0'
+ implementation 'com.android.support:appcompat-v7:27.0.0'
+ implementation "com.android.support:support-compat:27.0.0"
+ implementation 'com.jakewharton:butterknife:6.0.0'
+ implementation 'com.nhaarman.listviewanimations:lib-core:3.1.0@aar'
+ implementation 'com.nhaarman.listviewanimations:lib-manipulation:3.1.0@aar'
+ implementation 'com.nhaarman.listviewanimations:lib-core-slh:3.1.0@aar'
+ implementation 'com.umeng.analytics:analytics:latest.integration'
+ implementation 'com.github.gabrielemariotti.changeloglib:library:1.5.2'
+ implementation 'com.hannesdorfmann.smoothprogressbar:library:1.0.0'
+ implementation 'com.github.castorflex.smoothprogressbar:library-circular:1.0.0'
+ implementation project(':library')
+ implementation files('libs/nineoldandroids-2.4.0.jar')
+ implementation files('libs/umeng-update-v2.5.0.jar')
+ implementation files('libs/httpmime-4.1.3.jar')
+ implementation files('libs/umeng_social_sdk.jar')
+ implementation files('libs/SocialSDK_laiwang_1.jar')
+ implementation files('libs/SocialSDK_laiwang_2.jar')
+ implementation files('libs/SocialSDK_QQZone_1.jar')
+ implementation 'com.android.support:support-v4:27.0.0'
+ implementation 'com.android.support.constraint:constraint-layout:1.1.3'
+ }
+}
\ No newline at end of file
diff --git a/app/release/output.json b/app/release/output.json
new file mode 100644
index 0000000..c86f282
--- /dev/null
+++ b/app/release/output.json
@@ -0,0 +1 @@
+[{"outputType":{"type":"APK"},"apkInfo":{"type":"MAIN","splits":[],"versionCode":4,"versionName":"1.1","enabled":true,"outputFile":"app-release.apk","fullName":"release","baseName":"release"},"path":"app-release.apk","properties":{}}]
\ No newline at end of file
diff --git a/app/src/androidTest/java/com/yzy/supercleanmaster/ApplicationTest.java b/app/src/androidTest/java/com/balaganovrocks/yourmasterclean/ApplicationTest.java
similarity index 87%
rename from app/src/androidTest/java/com/yzy/supercleanmaster/ApplicationTest.java
rename to app/src/androidTest/java/com/balaganovrocks/yourmasterclean/ApplicationTest.java
index a10a749..0b5978b 100644
--- a/app/src/androidTest/java/com/yzy/supercleanmaster/ApplicationTest.java
+++ b/app/src/androidTest/java/com/balaganovrocks/yourmasterclean/ApplicationTest.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster;
+package com.balaganovrocks.yourmasterclean;
import android.app.Application;
import android.test.ApplicationTestCase;
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1e37e57..ec73a1d 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -1,14 +1,18 @@
+ package="com.balaganovrocks.yourmasterclean">
+
+
+
+
@@ -27,13 +31,13 @@
android:smallScreens="true" />
@@ -44,64 +48,81 @@
+ android:theme="@style/MyAppTheme" />
+
+
-
+
+ android:name="com.balaganovrocks.yourmasterclean.ui.MemoryCleanActivity"
+ android:label="@string/app_name"
+ android:theme="@style/MyTranslucentAppTheme" />
+
+ android:name="com.balaganovrocks.yourmasterclean.ui.settings"
+ android:label="Настройки"
+ android:theme="@style/MyTranslucentAppTheme" />
+
+
+ android:name="com.balaganovrocks.yourmasterclean.ui.RubbishCleanActivity"
+ android:label="@string/app_name"
+ android:theme="@style/MyTranslucentAppTheme" />
+
+
+ android:theme="@style/MyTranslucentAppTheme" />
+ android:name="com.balaganovrocks.yourmasterclean.base.FragmentContainerActivity"
+ android:theme="@style/MyTranslucentAppTheme" />
+ android:name="com.balaganovrocks.yourmasterclean.ui.AboutActivity"
+ android:theme="@style/MyTranslucentAppTheme" />
-
+
@@ -113,6 +134,9 @@
+
mlistAppInfo;
+ // LayoutInflater infater = null;
+ // private Context mContext;
+ // public static List clearIds;
+ // private Handler mHandler;
+
+ // public AutoStartAdapter(Context context, List apps, Handler mHandler) {
+ // infater = LayoutInflater.from(context);
+ // mContext = context;
+ // clearIds = new ArrayList();
+ // this.mlistAppInfo = apps;
+ // this.mHandler = mHandler;
+ // }
+
+ // @Override
+ // public int getCount() {
+ // // TODO Auto-generated method stub
+ // return mlistAppInfo.size();
+ // }
+
+ // @Override
+ // public Object getItem(int position) {
+ // // TODO Auto-generated method stub
+ // return mlistAppInfo.get(position);
+ // }
+
+ // @Override
+ // public long getItemId(int position) {
+ // // TODO Auto-generated method stub
+ // return position;
+ // }
+
+ // @Override
+ // public View getView(int position, View convertView, ViewGroup parent) {
+ // ViewHolder holder = null;
+ // if (convertView == null) {
+ // convertView = infater.inflate(R.layout.listview_auto_start,
+ // null);
+ // holder = new ViewHolder();
+ // holder.appIcon = (ImageView) convertView
+ // .findViewById(R.id.app_icon);
+ // holder.appName = (TextView) convertView
+ // .findViewById(R.id.app_name);
+ // holder.size = (TextView) convertView
+ // .findViewById(R.id.app_size);
+ // holder.disable_switch = (TextView) convertView
+ // .findViewById(R.id.disable_switch);
+
+ // convertView.setTag(holder);
+ // } else {
+ // holder = (ViewHolder) convertView.getTag();
+ // }
+ // final AutoStartInfo item = (AutoStartInfo) getItem(position);
+ // if (item != null) {
+ // holder.appIcon.setImageDrawable(item.getIcon());
+ // holder.appName.setText(item.getLabel());
+ // if (item.isEnable()) {
+ // holder.disable_switch.setBackgroundResource(R.drawable.switch_on);
+ // holder.disable_switch.setText("Оказалось");
+ // } else {
+ // holder.disable_switch.setBackgroundResource(R.drawable.switch_off);
+ // holder.disable_switch.setText("Это было запрещено");
+ // }
+ // // holder.size.setText(Formatter.formatShortFileSize(mContext, item.getCacheSize()));
+
+ // holder.disable_switch.setOnClickListener(new View.OnClickListener() {
+ // @Override
+ // public void onClick(View v) {
+
+
+ // if (ShellUtils.checkRootPermission()) {
+
+ // if (item.isEnable()) {
+
+
+ // diasableApp(item);
+ // } else {
+
+ // enableApp(item);
+ // }
+
+ // } else {
+
+ // T.showLong(mContext, "Эта функция должна получить разрешение системного корня, щелкнуть, чтобы разрешить доступ к привилегии root");
+
+ // }
+
+ // }
+ // });
+ // holder.packageName = item.getPackageName();
+ // }
+
+
+ // return convertView;
+ // }
+
+ // private void diasableApp(AutoStartInfo item) {
+ // String packageReceiverList[] = item.getPackageReceiver().toString().split(";");
+
+ // List mSring = new ArrayList<>();
+ // for (int j = 0; j < packageReceiverList.length; j++) {
+ // String cmd = "pm disable " + packageReceiverList[j];
+ // //部分receiver包含$符号,需要做进一步处理,用"$"替换掉$
+ // cmd = cmd.replace("$", "\"" + "$" + "\"");
+ // //执行命令
+ // mSring.add(cmd);
+
+ // }
+ // ShellUtils.CommandResult mCommandResult = ShellUtils.execCommand(mSring, true, true);
+
+ // if (mCommandResult.result == 0) {
+ // T.showLong(mContext, item.getLabel() + "Это было запрещено");
+ // item.setEnable(false);
+ // notifyDataSetChanged();
+ // if (mHandler != null) {
+ // mHandler.sendEmptyMessage(AutoStartFragment.REFRESH_BT);
+ // }
+ // } else {
+ // T.showLong(mContext, item.getLabel() + "Запрет отказа");
+ // }
+
+ // // T.showLong(mContext, mCommandResult.result + "" + mCommandResult.errorMsg + mCommandResult.successMsg);
+ // }
+
+ // private void enableApp(AutoStartInfo item) {
+ // String packageReceiverList[] = item.getPackageReceiver().toString().split(";");
+
+ // List mSring = new ArrayList<>();
+ // for (int j = 0; j < packageReceiverList.length; j++) {
+ // String cmd = "pm enable " + packageReceiverList[j];
+ // //部分receiver包含$符号,需要做进一步处理,用"$"替换掉$
+ // cmd = cmd.replace("$", "\"" + "$" + "\"");
+ // //执行命令
+ // mSring.add(cmd);
+
+ // }
+ // ShellUtils.CommandResult mCommandResult = ShellUtils.execCommand(mSring, true, true);
+
+ // if (mCommandResult.result == 0) {
+ // T.showLong(mContext, item.getLabel() + "Оказалось");
+ // item.setEnable(true);
+ // notifyDataSetChanged();
+ // if (mHandler != null) {
+ // mHandler.sendEmptyMessage(AutoStartFragment.REFRESH_BT);
+ // }
+ // } else {
+ // T.showLong(mContext, item.getLabel() + "Не удалось открыть");
+ // }
+ // // T.showLong(mContext, mCommandResult.result + "" + mCommandResult.errorMsg + mCommandResult.successMsg);
+ // }
+
+ // class ViewHolder {
+ // ImageView appIcon;
+ // TextView appName;
+ // TextView size;
+ // TextView disable_switch;
+
+ // String packageName;
+ // }
+
+}
diff --git a/app/src/main/java/com/balaganovrocks/yourmasterclean/adapter/BatterySavingAdapter.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/adapter/BatterySavingAdapter.java
new file mode 100644
index 0000000..54280af
--- /dev/null
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/adapter/BatterySavingAdapter.java
@@ -0,0 +1,114 @@
+package com.balaganovrocks.yourmasterclean.adapter;
+
+import android.content.Context;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.BaseAdapter;
+import android.widget.ImageView;
+import android.widget.RadioButton;
+import android.widget.RelativeLayout;
+import android.widget.TextView;
+
+import com.balaganovrocks.yourmasterclean.R;
+import com.balaganovrocks.yourmasterclean.bean.AppProcessInfo;
+import com.balaganovrocks.yourmasterclean.utils.StorageUtil;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class BatterySavingAdapter extends BaseAdapter {
+
+ public List mlistAppInfo;
+ LayoutInflater infater = null;
+ private Context mContext;
+ public static List clearIds;
+
+ public BatterySavingAdapter(Context context, List apps) {
+ infater = LayoutInflater.from(context);
+ mContext = context;
+ clearIds = new ArrayList();
+ this.mlistAppInfo = apps;
+ }
+
+ @Override
+ public int getCount() {
+ // TODO Auto-generated method stub
+ return mlistAppInfo.size();
+ }
+
+ @Override
+ public Object getItem(int position) {
+ // TODO Auto-generated method stub
+ return mlistAppInfo.get(position);
+ }
+
+ @Override
+ public long getItemId(int position) {
+ // TODO Auto-generated method stub
+ return position;
+ }
+
+ @Override
+ public View getView(int position, View convertView, ViewGroup parent) {
+ ViewHolder holder = null;
+ if (convertView == null) {
+ convertView = infater.inflate(R.layout.listview_battery_saving,
+ null);
+ holder = new ViewHolder();
+ holder.appIcon = (ImageView) convertView
+ .findViewById(R.id.image);
+ holder.appName = (TextView) convertView
+ .findViewById(R.id.name);
+ // holder.memory = (TextView) convertView
+ // .findViewById(R.id.memory);
+
+ holder.cb = (RadioButton) convertView
+ .findViewById(R.id.choice_radio);
+ convertView.setTag(holder);
+ } else {
+ holder = (ViewHolder) convertView.getTag();
+ }
+ final AppProcessInfo appInfo = (AppProcessInfo) getItem(position);
+ holder.appIcon.setImageDrawable(appInfo.icon);
+ holder.appName.setText(appInfo.appName);
+// holder.memory.setText(StorageUtil.convertStorage(appInfo.memory));
+ if (appInfo.checked) {
+ holder.cb.setChecked(true);
+ } else {
+ holder.cb.setChecked(false);
+ }
+ holder.cb.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ if (appInfo.checked) {
+ appInfo.checked = false;
+ } else {
+ appInfo.checked = true;
+ }
+ notifyDataSetChanged();
+ }
+ });
+
+ return convertView;
+ }
+
+ class ViewHolder {
+ ImageView appIcon;
+ TextView appName;
+ TextView memory;
+ TextView tvProcessMemSize;
+ RelativeLayout cb_rl;
+ RadioButton cb;
+
+ public RadioButton getCb() {
+ return cb;
+ }
+
+ public void setCb(RadioButton cb) {
+ this.cb = cb;
+ }
+ }
+
+}
+
diff --git a/app/src/main/java/com/yzy/supercleanmaster/adapter/ClearMemoryAdapter.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/adapter/ClearMemoryAdapter.java
similarity index 93%
rename from app/src/main/java/com/yzy/supercleanmaster/adapter/ClearMemoryAdapter.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/adapter/ClearMemoryAdapter.java
index 473fefc..ca49eb8 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/adapter/ClearMemoryAdapter.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/adapter/ClearMemoryAdapter.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.adapter;
+package com.balaganovrocks.yourmasterclean.adapter;
import android.content.Context;
import android.view.LayoutInflater;
@@ -10,9 +10,9 @@
import android.widget.RelativeLayout;
import android.widget.TextView;
-import com.yzy.supercleanmaster.R;
-import com.yzy.supercleanmaster.bean.AppProcessInfo;
-import com.yzy.supercleanmaster.utils.StorageUtil;
+import com.balaganovrocks.yourmasterclean.R;
+import com.balaganovrocks.yourmasterclean.bean.AppProcessInfo;
+import com.balaganovrocks.yourmasterclean.utils.StorageUtil;
import java.util.ArrayList;
import java.util.List;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/adapter/RublishMemoryAdapter.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/adapter/RublishMemoryAdapter.java
similarity index 95%
rename from app/src/main/java/com/yzy/supercleanmaster/adapter/RublishMemoryAdapter.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/adapter/RublishMemoryAdapter.java
index f1db199..5a34e31 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/adapter/RublishMemoryAdapter.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/adapter/RublishMemoryAdapter.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.adapter;
+package com.balaganovrocks.yourmasterclean.adapter;
import android.content.Context;
import android.content.Intent;
@@ -12,8 +12,8 @@
import android.widget.ImageView;
import android.widget.TextView;
-import com.yzy.supercleanmaster.R;
-import com.yzy.supercleanmaster.model.CacheListItem;
+import com.balaganovrocks.yourmasterclean.R;
+import com.balaganovrocks.yourmasterclean.model.CacheListItem;
import java.util.ArrayList;
import java.util.List;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/adapter/SoftwareAdapter.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/adapter/SoftwareAdapter.java
similarity index 92%
rename from app/src/main/java/com/yzy/supercleanmaster/adapter/SoftwareAdapter.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/adapter/SoftwareAdapter.java
index 2a5259c..5d990d0 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/adapter/SoftwareAdapter.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/adapter/SoftwareAdapter.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.adapter;
+package com.balaganovrocks.yourmasterclean.adapter;
import android.content.Context;
import android.content.Intent;
@@ -10,10 +10,10 @@
import android.widget.ImageView;
import android.widget.TextView;
-import com.yzy.supercleanmaster.R;
-import com.yzy.supercleanmaster.model.AppInfo;
-import com.yzy.supercleanmaster.utils.StorageUtil;
-import com.yzy.supercleanmaster.views.RippleView;
+import com.balaganovrocks.yourmasterclean.R;
+import com.balaganovrocks.yourmasterclean.model.AppInfo;
+import com.balaganovrocks.yourmasterclean.utils.StorageUtil;
+import com.balaganovrocks.yourmasterclean.views.RippleView;
import java.util.ArrayList;
import java.util.List;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/base/ActivityTack.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/base/ActivityTack.java
similarity index 97%
rename from app/src/main/java/com/yzy/supercleanmaster/base/ActivityTack.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/base/ActivityTack.java
index cb69242..9b6d156 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/base/ActivityTack.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/base/ActivityTack.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.base;
+package com.balaganovrocks.yourmasterclean.base;
import android.app.Activity;
import android.content.Context;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/base/BaseActivity.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/base/BaseActivity.java
similarity index 95%
rename from app/src/main/java/com/yzy/supercleanmaster/base/BaseActivity.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/base/BaseActivity.java
index 98e9f18..97c5887 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/base/BaseActivity.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/base/BaseActivity.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.base;
+package com.balaganovrocks.yourmasterclean.base;
import android.content.Context;
import android.content.Intent;
@@ -9,8 +9,8 @@
import android.widget.TextView;
import com.umeng.analytics.MobclickAgent;
-import com.yzy.supercleanmaster.dialogs.ProgressDialogFragment;
-import com.yzy.supercleanmaster.utils.T;
+import com.balaganovrocks.yourmasterclean.dialogs.ProgressDialogFragment;
+import com.balaganovrocks.yourmasterclean.utils.T;
import butterknife.ButterKnife;
diff --git a/app/src/main/java/com/balaganovrocks/yourmasterclean/base/BaseApplication.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/base/BaseApplication.java
new file mode 100644
index 0000000..0387ff2
--- /dev/null
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/base/BaseApplication.java
@@ -0,0 +1,39 @@
+package com.balaganovrocks.yourmasterclean.base;
+
+import android.app.Application;
+import android.content.Context;
+
+public class BaseApplication extends Application {
+ // private static BaseApplication mInstance;
+//
+//
+ // private Context mContext;
+//
+//
+ // // private Gson mG;
+ // public static BaseApplication getInstance() {
+ // return mInstance;
+ // }
+//
+ // @Override
+ // public void onCreate() {
+ // super.onCreate();
+ // mInstance = this;
+//
+//
+ // MyCrashHandler myCrashHandler = MyCrashHandler.getInstance();
+ // myCrashHandler.init(getApplicationContext());
+ // Thread.currentThread().setUncaughtExceptionHandler(myCrashHandler);
+ // }
+//
+//
+ // @Override
+ // public void onLowMemory() {
+ // // TODO Auto-generated method stub
+//
+ // android.os.Process.killProcess(android.os.Process.myPid());
+ // super.onLowMemory();
+//
+ // }
+//
+}
diff --git a/app/src/main/java/com/yzy/supercleanmaster/base/BaseFragment.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/base/BaseFragment.java
similarity index 92%
rename from app/src/main/java/com/yzy/supercleanmaster/base/BaseFragment.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/base/BaseFragment.java
index c2d4c2d..b117d8d 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/base/BaseFragment.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/base/BaseFragment.java
@@ -1,11 +1,11 @@
-package com.yzy.supercleanmaster.base;
+package com.balaganovrocks.yourmasterclean.base;
import android.annotation.SuppressLint;
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.app.Fragment;
-import com.yzy.supercleanmaster.utils.T;
+import com.balaganovrocks.yourmasterclean.utils.T;
@SuppressLint("NewApi")
diff --git a/app/src/main/java/com/yzy/supercleanmaster/base/BaseSwipeBackActivity.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/base/BaseSwipeBackActivity.java
similarity index 78%
rename from app/src/main/java/com/yzy/supercleanmaster/base/BaseSwipeBackActivity.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/base/BaseSwipeBackActivity.java
index b96cef3..ca6845e 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/base/BaseSwipeBackActivity.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/base/BaseSwipeBackActivity.java
@@ -1,12 +1,13 @@
-package com.yzy.supercleanmaster.base;
+package com.balaganovrocks.yourmasterclean.base;
import android.os.Bundle;
import android.view.View;
-import com.yzy.supercleanmaster.swipeback.SwipeBackActivityBase;
-import com.yzy.supercleanmaster.swipeback.SwipeBackActivityHelper;
-import com.yzy.supercleanmaster.swipeback.SwipeBackLayout;
-import com.yzy.supercleanmaster.swipeback.Utils;
+import com.balaganovrocks.yourmasterclean.swipeback.SwipeBackActivityBase;
+import com.balaganovrocks.yourmasterclean.swipeback.SwipeBackActivityHelper;
+import com.balaganovrocks.yourmasterclean.swipeback.SwipeBackLayout;
+import com.balaganovrocks.yourmasterclean.swipeback.Utils;
+
public abstract class BaseSwipeBackActivity extends BaseActivity implements SwipeBackActivityBase {
diff --git a/app/src/main/java/com/yzy/supercleanmaster/base/FragmentContainerActivity.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/base/FragmentContainerActivity.java
similarity index 91%
rename from app/src/main/java/com/yzy/supercleanmaster/base/FragmentContainerActivity.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/base/FragmentContainerActivity.java
index 2f8d4df..6cf6c6e 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/base/FragmentContainerActivity.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/base/FragmentContainerActivity.java
@@ -1,14 +1,15 @@
-package com.yzy.supercleanmaster.base;
+package com.balaganovrocks.yourmasterclean.base;
import android.app.Activity;
import android.app.Fragment;
import android.content.Intent;
+import android.content.pm.ActivityInfo;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.MenuItem;
-import com.yzy.supercleanmaster.R;
-import com.yzy.supercleanmaster.utils.FragmentArgs;
+import com.balaganovrocks.yourmasterclean.R;
+import com.balaganovrocks.yourmasterclean.utils.FragmentArgs;
import java.lang.reflect.Method;
@@ -75,6 +76,7 @@ protected void onCreate(Bundle savedInstanceState) {
finish();
return;
}
+ setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}
super.onCreate(savedInstanceState);
diff --git a/app/src/main/java/com/balaganovrocks/yourmasterclean/base/MyCrashHandler.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/base/MyCrashHandler.java
new file mode 100644
index 0000000..c89c18d
--- /dev/null
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/base/MyCrashHandler.java
@@ -0,0 +1,96 @@
+package com.balaganovrocks.yourmasterclean.base;
+
+import android.content.Context;
+
+import java.lang.Thread.UncaughtExceptionHandler;
+
+//public class MyCrashHandler implements UncaughtExceptionHandler {
+// @Override
+// public void uncaughtException(Thread thread, Throwable throwable) {
+
+// }
+// // 保证MyCrashHandler只有一个实例
+// // 2.提供一个静态的程序变量
+// private static MyCrashHandler myCrashHandler;
+// private Context context;
+//
+// // 1.私有化构造方法
+// private MyCrashHandler() {
+//
+// }
+//
+// // 3.暴露出来一个静态的方法 获取myCrashHandler
+//
+// public static synchronized MyCrashHandler getInstance() {
+// if (myCrashHandler == null) {
+// myCrashHandler = new MyCrashHandler();
+// }
+// return myCrashHandler;
+// }
+//
+// public void init(Context context) {
+// this.context = context;
+// }
+//
+// // 程序发生异常的时候调用的方法
+// // try catch
+//
+// public void uncaughtException(Thread thread, Throwable ex) {
+// // System.out.println("出现错误啦 哈哈");
+// ex.printStackTrace();
+//// StringBuilder sb = new StringBuilder();
+//// // 1.获取当前应用程序的版本号.
+//// PackageManager pm = context.getPackageManager();
+//// try {
+//// PackageInfo packinfo = pm.getPackageInfo(context.getPackageName(),
+//// 0);
+//// sb.append("程序的版本号为" + packinfo.versionName);
+//// sb.append("\n");
+////
+//// // 2.获取手机的硬件信息.
+//// Field[] fields = Build.class.getDeclaredFields();
+//// for (int i = 0; i < fields.length; i++) {
+//// // 暴力反射,获取私有的字段信息
+//// fields[i].setAccessible(true);
+//// String name = fields[i].getName();
+//// sb.append(name + " = ");
+//// String value = fields[i].get(null).toString();
+//// sb.append(value);
+//// sb.append("\n");
+//// }
+//// // 3.获取程序错误的堆栈信息 .
+//// StringWriter writer = new StringWriter();
+//// PrintWriter printWriter = new PrintWriter(writer);
+//// ex.printStackTrace(printWriter);
+////
+//// String result = writer.toString();
+//// sb.append(result);
+//// String time = new SimpleDateFormat("yyyy-MM-dd-HH-mm-ss").format(new Date());
+//// String name ="xizi"+time+".txt";
+//// String fileName=Environment.getExternalStorageDirectory()+File.separator+"xz_app"+File.separator+"log";
+////
+//// File file1 =new File(fileName);
+//// if(!file1.exists()){
+//// file1.mkdir();
+//// }
+//// File file=new File(fileName,name);
+//// if(!file.exists()){
+//// file.createNewFile();
+//// }
+//// // File file = new File(Environment.getExternalStorageDirectory(),"error.log");
+//// FileOutputStream fos = new FileOutputStream(file);
+//// fos.write(sb.toString().getBytes());
+//// fos.close();
+////
+////
+//// // 4.把错误信息 提交到服务器
+////
+//// } catch (Exception e) {
+//// e.printStackTrace();
+//// }
+//
+// // 完成自杀的操作
+// android.os.Process.killProcess(android.os.Process.myPid());
+// }
+
+//}
diff --git a/app/src/main/java/com/yzy/supercleanmaster/bean/AppProcessInfo.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/bean/AppProcessInfo.java
similarity index 98%
rename from app/src/main/java/com/yzy/supercleanmaster/bean/AppProcessInfo.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/bean/AppProcessInfo.java
index 9a7a9ab..837e00a 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/bean/AppProcessInfo.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/bean/AppProcessInfo.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.yzy.supercleanmaster.bean;
+package com.balaganovrocks.yourmasterclean.bean;
import android.graphics.drawable.Drawable;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/bean/ProcessInfo.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/bean/ProcessInfo.java
similarity index 96%
rename from app/src/main/java/com/yzy/supercleanmaster/bean/ProcessInfo.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/bean/ProcessInfo.java
index 2e9480e..ca3d39b 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/bean/ProcessInfo.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/bean/ProcessInfo.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.yzy.supercleanmaster.bean;
+package com.balaganovrocks.yourmasterclean.bean;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/dialogs/AlertDialogFragment.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/dialogs/AlertDialogFragment.java
similarity index 93%
rename from app/src/main/java/com/yzy/supercleanmaster/dialogs/AlertDialogFragment.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/dialogs/AlertDialogFragment.java
index 49c9131..6e37c4f 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/dialogs/AlertDialogFragment.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/dialogs/AlertDialogFragment.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.dialogs;
+package com.balaganovrocks.yourmasterclean.dialogs;
import android.app.AlertDialog;
import android.app.Dialog;
@@ -66,7 +66,7 @@ public Dialog onCreateDialog(Bundle savedInstanceState) {
}
if(mOnClickListener != null){
- builder.setPositiveButton("确认",
+ builder.setPositiveButton("подтвердить",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
if(mOnClickListener != null){
@@ -75,7 +75,7 @@ public void onClick(DialogInterface dialog, int whichButton) {
}
}
);
- builder.setNegativeButton("取消",
+ builder.setNegativeButton("отменен",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
if(mOnClickListener != null){
diff --git a/app/src/main/java/com/yzy/supercleanmaster/dialogs/DialogUtil.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/dialogs/DialogUtil.java
similarity index 98%
rename from app/src/main/java/com/yzy/supercleanmaster/dialogs/DialogUtil.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/dialogs/DialogUtil.java
index 82036b5..e014143 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/dialogs/DialogUtil.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/dialogs/DialogUtil.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.yzy.supercleanmaster.dialogs;
+package com.balaganovrocks.yourmasterclean.dialogs;
import android.app.Fragment;
import android.app.FragmentTransaction;
@@ -21,7 +21,7 @@
import android.support.v4.app.FragmentActivity;
import android.view.View;
-import com.yzy.supercleanmaster.utils.ViewUtil;
+import com.balaganovrocks.yourmasterclean.utils.ViewUtil;
public class DialogUtil {
diff --git a/app/src/main/java/com/yzy/supercleanmaster/dialogs/ProgressDialogFragment.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/dialogs/ProgressDialogFragment.java
similarity index 96%
rename from app/src/main/java/com/yzy/supercleanmaster/dialogs/ProgressDialogFragment.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/dialogs/ProgressDialogFragment.java
index b4793e3..2805963 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/dialogs/ProgressDialogFragment.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/dialogs/ProgressDialogFragment.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.dialogs;
+package com.balaganovrocks.yourmasterclean.dialogs;
import android.app.AlertDialog;
import android.app.Dialog;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/dialogs/SampleFragment.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/dialogs/SampleFragment.java
similarity index 93%
rename from app/src/main/java/com/yzy/supercleanmaster/dialogs/SampleFragment.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/dialogs/SampleFragment.java
index 08d945f..b031a6e 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/dialogs/SampleFragment.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/dialogs/SampleFragment.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.dialogs;
+package com.balaganovrocks.yourmasterclean.dialogs;
import android.app.DialogFragment;
import android.os.Bundle;
diff --git a/app/src/main/java/com/balaganovrocks/yourmasterclean/engine/CacheInfoProvider.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/engine/CacheInfoProvider.java
new file mode 100644
index 0000000..7b9a0e4
--- /dev/null
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/engine/CacheInfoProvider.java
@@ -0,0 +1,130 @@
+package com.balaganovrocks.yourmasterclean.engine;
+
+import android.content.Context;
+import android.content.pm.ApplicationInfo;
+import android.content.pm.IPackageStatsObserver;
+import android.content.pm.PackageInfo;
+import android.content.pm.PackageManager;
+import android.content.pm.PackageStats;
+import android.graphics.drawable.Drawable;
+import android.os.Handler;
+import android.os.RemoteException;
+
+import com.balaganovrocks.yourmasterclean.model.CacheInfo;
+import com.balaganovrocks.yourmasterclean.utils.TextFormater;
+
+import java.lang.reflect.Method;
+import java.util.List;
+import java.util.Vector;
+
+
+public class CacheInfoProvider
+{
+// private Handler handler;
+// private PackageManager packageManager;
+// private Vector cacheInfos;
+// private int size = 0;
+//
+// public CacheInfoProvider(Handler handler, Context context)
+// {
+// // 拿到一个包管理器
+// packageManager = context.getPackageManager();
+// this.handler = handler;
+// cacheInfos = new Vector();
+// }
+//
+// public void initCacheInfos()
+// {
+// // 获取到所有安装了的应用程序的信息,包括那些卸载了的,但没有清除数据的应用程序
+// List packageInfos = packageManager
+// .getInstalledPackages(PackageManager.GET_UNINSTALLED_PACKAGES);
+// size = packageInfos.size();
+// for (int i = 0; i < size; i++)
+// {
+// PackageInfo packageInfo = packageInfos.get(i);
+// CacheInfo cacheInfo = new CacheInfo();
+// // 拿到包名
+// String packageName = packageInfo.packageName;
+// cacheInfo.setPackageName(packageName);
+// // 拿到应用程序的信息
+// ApplicationInfo applicationInfo = packageInfo.applicationInfo;
+// // 拿到应用程序的程序名
+// String name = applicationInfo.loadLabel(packageManager).toString();
+// cacheInfo.setName(name);
+// // 拿到应用程序的图标
+// Drawable icon = applicationInfo.loadIcon(packageManager);
+// cacheInfo.setIcon(icon);
+//
+// initDataSize(cacheInfo, i);
+// }
+// }
+//
+// /**
+// * 通过AIDL的方法来获取到应用的缓存信息,getPackageSizeInfo是PackageManager里面的一个私有方法来的
+// * 我们通过反射就可以调用到它的了,但是这个方法里面会传递一个IPackageStatsObserver.Stub的对象
+// * 里面就可能通过AIDL来获取我们想要的信息了
+// *
+// * 因为这样的调用是异步的,所以当我们完成获取完这些信息之后,我们就通过handler来发送一个消息
+// * 来通知我们的应用,通过getCacheInfos来获取到我们的Vector
+// *
+// * 为什么要用Vector呢,因为下面的方法是异步的,也就是有可能是多线程操作,所以我们就用了线程安全的Vector
+// *
+// * @param cacheInfo
+// * @param position
+// */
+// private void initDataSize(final CacheInfo cacheInfo, final int position)
+// {
+// try
+// {
+// Method method = PackageManager.class.getMethod(
+// "getPackageSizeInfo", new Class[] { String.class,
+// IPackageStatsObserver.class });
+// method.invoke(packageManager,
+// new Object[] { cacheInfo.getPackageName(),
+// new IPackageStatsObserver.Stub()
+// {
+// @Override
+// public void onGetStatsCompleted(
+// PackageStats pStats, boolean succeeded)
+// throws RemoteException
+// {
+// System.out.println("onGetStatsCompleted" + position);
+// long cacheSize = pStats.cacheSize;
+// long codeSize = pStats.codeSize;
+// long dataSize = pStats.dataSize;
+//
+// cacheInfo.setCacheSize(TextFormater
+// .dataSizeFormat(cacheSize));
+// cacheInfo.setCodeSize(TextFormater
+// .dataSizeFormat(codeSize));
+// cacheInfo.setDataSize(TextFormater
+// .dataSizeFormat(dataSize));
+//
+// cacheInfos.add(cacheInfo);
+//
+// if (position == (size - 1))
+// {
+// // 当完全获取完信息之后,发送一个成功的消息
+// // 1对应的就是CacheClearActivity里面的FINISH
+// handler.sendEmptyMessage(1);
+// }
+// }
+// } });
+// }
+// catch (Exception e)
+// {
+// e.printStackTrace();
+// }
+// }
+//
+// public Vector getCacheInfos()
+// {
+// return cacheInfos;
+// }
+//
+// public void setCacheInfos(Vector cacheInfos)
+// {
+// this.cacheInfos = cacheInfos;
+// }
+
+}
diff --git a/app/src/main/java/com/balaganovrocks/yourmasterclean/fragment/AutoStartFragment.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/fragment/AutoStartFragment.java
new file mode 100644
index 0000000..70c2ca8
--- /dev/null
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/fragment/AutoStartFragment.java
@@ -0,0 +1,205 @@
+package com.balaganovrocks.yourmasterclean.fragment;
+
+import android.content.Context;
+import android.os.Bundle;
+import android.os.Handler;
+import android.os.Message;
+import android.support.annotation.Nullable;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.Button;
+import android.widget.LinearLayout;
+import android.widget.ListView;
+import android.widget.TextView;
+
+import com.balaganovrocks.yourmasterclean.base.BaseFragment;
+import com.balaganovrocks.yourmasterclean.R;
+import com.balaganovrocks.yourmasterclean.adapter.AutoStartAdapter;
+import com.balaganovrocks.yourmasterclean.base.BaseFragment;
+import com.balaganovrocks.yourmasterclean.model.AutoStartInfo;
+import com.balaganovrocks.yourmasterclean.utils.BootStartUtils;
+import com.balaganovrocks.yourmasterclean.utils.RootUtil;
+import com.balaganovrocks.yourmasterclean.utils.ShellUtils;
+import com.balaganovrocks.yourmasterclean.utils.T;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import butterknife.ButterKnife;
+import butterknife.InjectView;
+import butterknife.OnClick;
+
+
+public class AutoStartFragment extends BaseFragment {
+
+
+// Context mContext;
+// public static final int REFRESH_BT = 111;
+// private static final String ARG_POSITION = "position";
+// private int position; // 0:普通软件,2 系统软件
+// AutoStartAdapter mAutoStartAdapter;
+
+// @InjectView(R.id.listview)
+// ListView listview;
+
+// @InjectView(R.id.bottom_lin)
+// LinearLayout bottom_lin;
+
+// @InjectView(R.id.disable_button)
+// Button disableButton;
+// @InjectView(R.id.topText)
+// TextView topText;
+// List isSystemAuto = null;
+// List noSystemAuto = null;
+// private int canDisableCom;
+
+
+// private Handler mHandler = new Handler() {
+
+
+// public void handleMessage(Message msg) {
+// switch (msg.what) {
+// case REFRESH_BT:
+// refeshButoom();
+
+// break;
+// }
+// }
+// };
+
+// @Override
+// public void onCreate(Bundle savedInstanceState) {
+// super.onCreate(savedInstanceState);
+
+// position = getArguments().getInt(ARG_POSITION);
+// }
+
+// @Override
+// public View onCreateView(LayoutInflater inflater,
+// @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
+// // TODO Auto-generated method stub
+
+// View view = inflater.inflate(R.layout.fragment_auto_start, container, false);
+// ButterKnife.inject(this, view);
+// mContext = getActivity();
+
+// return view;
+// }
+
+
+// @Override
+// public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
+// super.onViewCreated(view, savedInstanceState);
+
+// fillData();
+// }
+
+// @OnClick(R.id.disable_button)
+// public void onClickDisable() {
+// RootUtil.preparezlsu(mContext);
+// disableAPP();
+
+// }
+
+// private void disableAPP() {
+// List mSring = new ArrayList<>();
+// for (AutoStartInfo auto : noSystemAuto) {
+// if (auto.isEnable()) {
+// String packageReceiverList[] = auto.getPackageReceiver().toString().split(";");
+// for (int j = 0; j < packageReceiverList.length; j++) {
+// String cmd = "pm disable " + packageReceiverList[j];
+// //部分receiver包含$符号,需要做进一步处理,用"$"替换掉$
+// cmd = cmd.replace("$", "\"" + "$" + "\"");
+// //执行命令
+// mSring.add(cmd);
+// }
+// }
+// }
+
+// ShellUtils.CommandResult mCommandResult = ShellUtils.execCommand(mSring, true, true);
+// if (mCommandResult.result == 0) {
+// T.showLong(mContext,
+// "Приложение полностью запрещено");
+// for (AutoStartInfo auto : noSystemAuto) {
+// if (auto.isEnable()) {
+// auto.setEnable(false);
+// }
+// }
+// mAutoStartAdapter.notifyDataSetChanged();
+// refeshButoom();
+// } else {
+// T.showLong(mContext,
+// "Эта функция должна получить разрешение системного корня, разрешить root-доступ.");
+// }
+// }
+
+
+// private void fillData() {
+
+// if (position == 0) {
+// topText.setText("\n" +
+// "Следующему программному обеспечению запрещается самозапуск,Улучшение скорости движения");
+
+// } else {
+// topText.setText("\n" +
+// "Запрещено запускаемое программное обеспечение для системного ядра,\n" +
+// "Будет влиять на нормальное использование телефона,Пожалуйста, будьте осторожны");
+
+// }
+
+// List mAutoStartInfo = BootStartUtils.fetchAutoApps(mContext);
+
+// // List mAutoStartInfo = BootStartUtils.fetchInstalledApps(mContext);
+// noSystemAuto = new ArrayList<>();
+// isSystemAuto = new ArrayList<>();
+
+// for (AutoStartInfo a : mAutoStartInfo) {
+// if (a.isSystem()) {
+
+// isSystemAuto.add(a);
+// } else {
+// noSystemAuto.add(a);
+// }
+// }
+
+// if (position == 0) {
+// mAutoStartAdapter = new AutoStartAdapter(mContext, noSystemAuto, mHandler);
+// listview.setAdapter(mAutoStartAdapter);
+// refeshButoom();
+// } else {
+
+// mAutoStartAdapter = new AutoStartAdapter(mContext, isSystemAuto, null);
+// listview.setAdapter(mAutoStartAdapter);
+
+// }
+
+
+// }
+
+// private void refeshButoom() {
+// if (position == 0) {
+// canDisableCom = 0;
+// for (AutoStartInfo autoS : noSystemAuto) {
+// if (autoS.isEnable()) {
+// canDisableCom++;
+// }
+// }
+// if (canDisableCom > 0) {
+// bottom_lin.setVisibility(View.VISIBLE);
+// disableButton.setText("Может быть оптимизирована" + canDisableCom + "\n" +
+// "раздел");
+// } else {
+// bottom_lin.setVisibility(View.GONE);
+// }
+// }
+
+// }
+
+// @Override
+// public void onDestroyView() {
+// super.onDestroyView();
+// ButterKnife.reset(this);
+// }
+
+}
diff --git a/app/src/main/java/com/balaganovrocks/yourmasterclean/fragment/DeciveInfoFragment.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/fragment/DeciveInfoFragment.java
new file mode 100644
index 0000000..d25edba
--- /dev/null
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/fragment/DeciveInfoFragment.java
@@ -0,0 +1,12 @@
+package com.balaganovrocks.yourmasterclean.fragment;
+
+
+
+import com.balaganovrocks.yourmasterclean.base.BaseFragment;
+
+
+
+public class DeciveInfoFragment extends BaseFragment {
+
+
+}
diff --git a/app/src/main/java/com/yzy/supercleanmaster/fragment/MainFragment.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/fragment/MainFragment.java
similarity index 50%
rename from app/src/main/java/com/yzy/supercleanmaster/fragment/MainFragment.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/fragment/MainFragment.java
index 6d9697b..f633522 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/fragment/MainFragment.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/fragment/MainFragment.java
@@ -1,25 +1,43 @@
-package com.yzy.supercleanmaster.fragment;
+package com.balaganovrocks.yourmasterclean.fragment;
+import android.app.ActivityManager;
+import android.app.PendingIntent;
import android.content.Context;
+import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.Nullable;
+import android.support.v4.app.NotificationCompat;
+import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
+import android.widget.Button;
+import android.widget.RemoteViews;
import android.widget.TextView;
+import com.balaganovrocks.yourmasterclean.base.BaseFragment;
+import com.balaganovrocks.yourmasterclean.ui.MainActivity;
+import com.balaganovrocks.yourmasterclean.ui.MemoryCleanActivity;
+import com.balaganovrocks.yourmasterclean.ui.RubbishCleanActivity;
+import com.balaganovrocks.yourmasterclean.ui.SoftwareManageActivity;
import com.umeng.update.UmengUpdateAgent;
-import com.yzy.supercleanmaster.R;
-import com.yzy.supercleanmaster.base.BaseFragment;
-import com.yzy.supercleanmaster.model.SDCardInfo;
-import com.yzy.supercleanmaster.ui.AutoStartManageActivity;
-import com.yzy.supercleanmaster.ui.MemoryCleanActivity;
-import com.yzy.supercleanmaster.ui.RubbishCleanActivity;
-import com.yzy.supercleanmaster.ui.SoftwareManageActivity;
-import com.yzy.supercleanmaster.utils.AppUtil;
-import com.yzy.supercleanmaster.utils.StorageUtil;
-import com.yzy.supercleanmaster.widget.circleprogress.ArcProgress;
-
+import com.balaganovrocks.yourmasterclean.R;
+import com.balaganovrocks.yourmasterclean.base.BaseFragment;
+import com.balaganovrocks.yourmasterclean.model.SDCardInfo;
+import com.balaganovrocks.yourmasterclean.ui.AutoStartManageActivity;
+import com.balaganovrocks.yourmasterclean.ui.BatterySavingActivity;
+import com.balaganovrocks.yourmasterclean.ui.MainActivity;
+import com.balaganovrocks.yourmasterclean.ui.MemoryCleanActivity;
+import com.balaganovrocks.yourmasterclean.ui.RubbishCleanActivity;
+import com.balaganovrocks.yourmasterclean.ui.ShortCutActivity;
+import com.balaganovrocks.yourmasterclean.ui.SoftwareManageActivity;
+import com.balaganovrocks.yourmasterclean.ui.settings;
+import com.balaganovrocks.yourmasterclean.utils.AppUtil;
+import com.balaganovrocks.yourmasterclean.utils.StorageUtil;
+import com.balaganovrocks.yourmasterclean.widget.circleprogress.ArcProgress;
+import com.balaganovrocks.yourmasterclean.ui.Notifications;
+
+import java.util.List;
import java.util.Timer;
import java.util.TimerTask;
@@ -27,6 +45,8 @@
import butterknife.InjectView;
import butterknife.OnClick;
+import static com.tencent.open.utils.Global.getPackageName;
+
public class MainFragment extends BaseFragment {
@@ -37,11 +57,12 @@ public class MainFragment extends BaseFragment {
ArcProgress arcProcess;
@InjectView(R.id.capacity)
TextView capacity;
-
+ Button Rubish_clean;
Context mContext;
-
+ Button BtnSettigs;
private Timer timer;
private Timer timer2;
+ Button CleanRubbish;
@Override
@@ -50,13 +71,46 @@ public View onCreateView(LayoutInflater inflater,
// TODO Auto-generated method stub
View view = inflater.inflate(R.layout.fragment_main, container, false);
+
+ Rubish_clean = (Button) view.findViewById(R.id.Rubish_clean);
ButterKnife.inject(this, view);
mContext = getActivity();
-
+ BtnSettigs = (Button) view.findViewById(R.id.btnSettings);
+ BtnSettigs.setOnClickListener(new View.OnClickListener()
+ {
+ @Override
+ public void onClick(View v)
+ {
+ Intent intent = new Intent(v.getContext(), settings.class);
+ startActivityForResult(intent, 0); // do something
+ }
+ });
+ Rubish_clean.setOnClickListener(new View.OnClickListener()
+ {
+ @Override
+ public void onClick(View v)
+ {
+ Intent intent = new Intent(v.getContext(), RubbishCleanActivity.class);
+ startActivityForResult(intent, 0); // do something
+ }
+ });
return view;
- }
+ }
+
+// public void notification(){
+// Intent i = new Intent(getContext(), MainActivity.class);
+// PendingIntent rootPendingIntent = PendingIntent.getBroadcast(getContext(), 0, i, 0);
+// RemoteViews remoteViews = new RemoteViews(getPackageName(), R.layout.notification);
+// remoteViews.setTextViewText(R.id.textView, "Custom notification text");
+// remoteViews.setOnClickPendingIntent(R.id.root, rootPendingIntent);
+
+// NotificationCompat.Builder builder = new NotificationCompat.Builder(getContext())
+// .setSmallIcon(R.drawable.ic_launcher)
+// .setCustomContentView(remoteViews)
+// .setStyle(new NotificationCompat.DecoratedCustomViewStyle());
+// }
@Override
public void onResume() {
super.onResume();
@@ -145,24 +199,36 @@ public void run() {
@OnClick(R.id.card1)
void speedUp() {
+ // notifications();
startActivity(MemoryCleanActivity.class);
+
}
@OnClick(R.id.card2)
void rubbishClean() {
+ // notifications();
+
startActivity(RubbishCleanActivity.class);
- }
+ }
@OnClick(R.id.card3)
- void AutoStartManage() {
- startActivity(AutoStartManageActivity.class);
+ void batterySaving() {
+ // notifications();
+ startActivity(BatterySavingActivity.class);
+ Log.d("proc", "save buttery init");
+ amKillProcess("com.balaganovrocks.yourmasterclean");
+
+
}
+
@OnClick(R.id.card4)
void SoftwareManage() {
+ // notifications();
startActivity(SoftwareManageActivity.class);
+
}
@Override
@@ -171,6 +237,18 @@ public void onDestroyView() {
ButterKnife.reset(this);
}
+ public void amKillProcess(String process) {
+ ActivityManager am = (ActivityManager) getActivity().getSystemService(Context.ACTIVITY_SERVICE);
+ Log.d("proc", "activity init");
+ final List runningProcesses = am.getRunningAppProcesses();
+ Log.d("proc", "" + runningProcesses.size());
+ for (ActivityManager.RunningAppProcessInfo runningProcess : runningProcesses) {
+ if (!runningProcess.processName.equals(process)) {
+ Log.d("proc", runningProcess.processName);
+ android.os.Process.sendSignal(runningProcess.pid, android.os.Process.SIGNAL_KILL);
+ }
+ }
+ }
@Override
public void onDestroy() {
diff --git a/app/src/main/java/com/balaganovrocks/yourmasterclean/fragment/NavigationDrawerFragment.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/fragment/NavigationDrawerFragment.java
new file mode 100644
index 0000000..617725a
--- /dev/null
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/fragment/NavigationDrawerFragment.java
@@ -0,0 +1,142 @@
+package com.balaganovrocks.yourmasterclean.fragment;
+
+import android.app.ActionBar;
+import android.app.Activity;
+import android.os.Bundle;
+import android.support.annotation.Nullable;
+import android.support.v4.view.GravityCompat;
+import android.support.v4.widget.DrawerLayout;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.RadioButton;
+
+import com.balaganovrocks.yourmasterclean.base.BaseFragment;
+import com.balaganovrocks.yourmasterclean.R;
+import com.balaganovrocks.yourmasterclean.base.BaseFragment;
+
+import butterknife.ButterKnife;
+
+
+public class NavigationDrawerFragment extends BaseFragment {
+
+ private DrawerLayout mDrawerLayout;
+ private View mFragmentContainerView;
+ private boolean mFromSavedInstanceState;
+ private NavigationDrawerCallbacks mCallbacks;
+ final int radioIds[] = {
+ R.id.radio0,
+ //R.id.radio1,
+ // R.id.radio2
+
+ };
+ RadioButton radios[] = new RadioButton[radioIds.length];
+
+ @Override
+ public void onActivityCreated(Bundle savedInstanceState) {
+ super.onActivityCreated(savedInstanceState);
+ // Indicate that this fragment would like to influence the set of
+ // actions in the action bar.
+ setHasOptionsMenu(true);
+ }
+
+ @Override
+ public View onCreateView(LayoutInflater inflater,
+ @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
+ // TODO Auto-generated method stub
+
+ View view = inflater.inflate(R.layout.fragment_navigation_drawer,
+ container, false);
+ ButterKnife.inject(this, view);
+ return view;
+ }
+
+
+ @Override
+ public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
+ super.onViewCreated(view, savedInstanceState);
+
+ fillData();
+ }
+
+ private void fillData() {
+
+
+ for (int i = 0; i < radioIds.length; ++i) {
+ radios[i] = (RadioButton) getView().findViewById(radioIds[i]);
+ radios[i].setOnClickListener(clickItem);
+ }
+ }
+
+
+ public void setUp(int fragmentId, DrawerLayout drawerLayout) {
+ mFragmentContainerView = getActivity().findViewById(fragmentId);
+ mDrawerLayout = drawerLayout;
+
+ mDrawerLayout.setDrawerShadow(R.drawable.drawer_shadow, GravityCompat.START);
+
+
+ }
+
+
+ View.OnClickListener clickItem = new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ for (int i = 0; i < radios.length; ++i) {
+ if (v.equals(radios[i])) {
+ selectItem(i);
+ } else {
+ radios[i].setChecked(false);
+ }
+ }
+ }
+ };
+
+
+ private void selectItem(int position) {
+ if (mDrawerLayout != null) {
+ mDrawerLayout.closeDrawer(mFragmentContainerView);
+ }
+ if (mCallbacks != null) {
+ mCallbacks.onNavigationDrawerItemSelected(position);
+ }
+ }
+
+
+ private ActionBar getActionBar() {
+ return getActivity().getActionBar();
+ }
+
+ @Override
+ public void onSaveInstanceState(Bundle outState) {
+ super.onSaveInstanceState(outState);
+ }
+
+
+ @Override
+ public void onAttach(Activity activity) {
+ super.onAttach(activity);
+ try {
+ mCallbacks = (NavigationDrawerCallbacks) activity;
+ } catch (ClassCastException e) {
+ throw new ClassCastException(
+ "Activity must implement NavigationDrawerCallbacks.");
+ }
+ }
+
+ @Override
+ public void onDetach() {
+ super.onDetach();
+ mCallbacks = null;
+ }
+
+ public static interface NavigationDrawerCallbacks {
+ void onNavigationDrawerItemSelected(int position);
+ }
+
+ @Override
+ public void onDestroyView() {
+ super.onDestroyView();
+ ButterKnife.reset(this);
+ }
+}
diff --git a/app/src/main/java/com/balaganovrocks/yourmasterclean/fragment/RelaxFragment.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/fragment/RelaxFragment.java
new file mode 100644
index 0000000..f7d55ae
--- /dev/null
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/fragment/RelaxFragment.java
@@ -0,0 +1,11 @@
+package com.balaganovrocks.yourmasterclean.fragment;
+
+
+
+import com.balaganovrocks.yourmasterclean.base.BaseFragment;
+
+
+public class RelaxFragment extends BaseFragment {
+
+
+}
diff --git a/app/src/main/java/com/balaganovrocks/yourmasterclean/fragment/SettingsFragment.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/fragment/SettingsFragment.java
new file mode 100644
index 0000000..76fd587
--- /dev/null
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/fragment/SettingsFragment.java
@@ -0,0 +1,163 @@
+package com.balaganovrocks.yourmasterclean.fragment;
+
+import android.app.Activity;
+import android.content.Intent;
+import android.graphics.BitmapFactory;
+import android.net.Uri;
+import android.os.Bundle;
+import android.preference.Preference;
+import android.preference.PreferenceFragment;
+
+import com.balaganovrocks.yourmasterclean.base.FragmentContainerActivity;
+import com.balaganovrocks.yourmasterclean.ui.AboutActivity;
+import com.umeng.socialize.bean.RequestType;
+import com.umeng.socialize.controller.UMServiceFactory;
+import com.umeng.socialize.controller.UMSocialService;
+import com.umeng.socialize.weixin.controller.UMWXHandler;
+import com.umeng.update.UmengUpdateAgent;
+import com.umeng.update.UmengUpdateListener;
+import com.umeng.update.UpdateResponse;
+import com.balaganovrocks.yourmasterclean.R;
+import com.balaganovrocks.yourmasterclean.base.FragmentContainerActivity;
+import com.balaganovrocks.yourmasterclean.ui.AboutActivity;
+import com.balaganovrocks.yourmasterclean.utils.AppUtil;
+import com.balaganovrocks.yourmasterclean.utils.T;
+import com.balaganovrocks.yourmasterclean.utils.Utils;
+
+
+public class SettingsFragment {
+
+
+// public static void launch(Activity from) {
+// FragmentContainerActivity.launch(from, SettingsFragment.class, null);
+// }
+
+// private Preference createShortCut;
+// private Preference pVersion;
+// private Preference pVersionDetail;
+// private Preference pGithub;// Github
+// private Preference pGrade;// Github
+// private Preference pShare;// Github
+// private Preference pAbout;// Github
+// @Override
+// public void onCreate(Bundle savedInstanceState) {
+// super.onCreate(savedInstanceState);
+
+
+// }
+
+// @Override
+// public void onActivityCreated(Bundle savedInstanceState) {
+// super.onActivityCreated(savedInstanceState);
+// addPreferencesFromResource(R.xml.ui_settings);
+// getActivity().getActionBar().setDisplayHomeAsUpEnabled(true);
+// getActivity().getActionBar().setDisplayShowHomeEnabled(false);
+// // getActivity().getActionBar().setTitle(R.string.title_settings);
+
+// createShortCut = findPreference("createShortCut");
+// createShortCut.setOnPreferenceClickListener(this);
+// pVersion = findPreference("pVersion");
+// pVersion.setOnPreferenceClickListener(this);
+// pVersionDetail = findPreference("pVersionDetail");
+// pVersionDetail.setSummary("Текущая версия:" + AppUtil.getVersion(getActivity()));
+// pVersionDetail.setOnPreferenceClickListener(this);
+
+// pGithub = findPreference("pGithub");
+// pGithub.setOnPreferenceClickListener(this);
+// pGrade = findPreference("pGrade");
+// pGrade.setOnPreferenceClickListener(this);
+// pShare = findPreference("pShare");
+// pShare.setOnPreferenceClickListener(this);
+// pAbout = findPreference("pAbout");
+// pAbout.setOnPreferenceClickListener(this);
+// initData();
+// }
+
+
+// @Override
+// public boolean onPreferenceClick(Preference preference) {
+// if ("createShortCut".equals(preference.getKey())) {
+// createShortCut();
+// } else if ("pVersion".equals(preference.getKey())) {
+// UmengUpdateAgent.forceUpdate(getActivity());
+// UmengUpdateAgent.setUpdateListener(new UmengUpdateListener() {
+// @Override
+// public void onUpdateReturned(int i, UpdateResponse updateResponse) {
+// if (i != 0) {
+// T.showLong(getActivity(), "Текущая версия - последняя версия!");
+// }
+
+// }
+// });
+// } else if ("pVersionDetail".equals(preference.getKey())) {
+// VersionFragment.launch(getActivity());
+// } else if ("pGithub".equals(preference.getKey())) {
+
+// }else if ("pGrade".equals(preference.getKey())) {
+// startMarket();
+// }else if ("pShare".equals(preference.getKey())) {
+// shareMyApp();
+// }
+// else if ("pAbout".equals(preference.getKey())) {
+// getActivity().startActivity(new Intent(getActivity(), AboutActivity.class));
+// }
+// return false;
+// }
+
+// private void shareMyApp() {
+
+// UMSocialService mController = UMServiceFactory.getUMSocialService("com.umeng.share", RequestType.SOCIAL);
+// mController.setShareContent("Очистка одним щелчком мыши (версия с открытым исходным кодом)" +
+// " одним щелчком мыши, чтобы очистить телефон, действительно хорошо, я рекомендую вам использовать!.");
+// mController.openShare(getActivity(), false);
+
+// }
+
+// private void initData() {
+// String appID = "wxa263da737a20300e";
+// String appSecret = "381a2fab6466410c674afaa40c77c953";
+/// 添加微信平台
+// UMWXHandler wxHandler = new UMWXHandler(getActivity(),appID,appSecret);
+// wxHandler.addToSocialSDK();
+/// 添加微信朋友圈
+// UMWXHandler wxCircleHandler = new UMWXHandler(getActivity(),appID,appSecret);
+// wxCircleHandler.setToCircle(true);
+// wxCircleHandler.addToSocialSDK();
+
+
+
+// }
+
+
+// private void createShortCut() {
+// // TODO Auto-generated method stub
+// Intent intent = new Intent();
+// intent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
+// intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "Однократное ускорение");
+// intent.putExtra("duplicate", false);
+// intent.putExtra(Intent.EXTRA_SHORTCUT_ICON, BitmapFactory.decodeResource(getResources(), R.drawable.short_cut_icon));
+// Intent i = new Intent();
+// i.setAction("com.balaganovrocks.shortcut");
+// i.addCategory("android.intent.category.DEFAULT");
+// intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, i);
+// getActivity().sendBroadcast(intent);
+// T.showLong(getActivity(),
+// "Был создан значок ярлыка «Однократное ускорение»");
+
+// }
+
+
+// public void startMarket() {
+// Uri uri = Uri.parse(String.format("market://details?id=%s", AppUtil.getPackageInfo(getActivity()).packageName));
+// if (Utils.isIntentSafe(getActivity(), uri)) {
+// Intent intent = new Intent(Intent.ACTION_VIEW, uri);
+// intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+// getActivity().startActivity(intent);
+// }
+// // 没有安装市场
+// else {
+// T.showLong(getActivity(),"Не удалось открыть рынок приложений");
+
+// }
+// }
+}
diff --git a/app/src/main/java/com/yzy/supercleanmaster/fragment/SoftwareManageFragment.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/fragment/SoftwareManageFragment.java
similarity index 94%
rename from app/src/main/java/com/yzy/supercleanmaster/fragment/SoftwareManageFragment.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/fragment/SoftwareManageFragment.java
index 1edf826..e1c9ac1 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/fragment/SoftwareManageFragment.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/fragment/SoftwareManageFragment.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.fragment;
+package com.balaganovrocks.yourmasterclean.fragment;
import android.content.Context;
import android.content.pm.ApplicationInfo;
@@ -18,11 +18,12 @@
import android.widget.ListView;
import android.widget.TextView;
-import com.yzy.supercleanmaster.R;
-import com.yzy.supercleanmaster.adapter.SoftwareAdapter;
-import com.yzy.supercleanmaster.base.BaseFragment;
-import com.yzy.supercleanmaster.model.AppInfo;
-import com.yzy.supercleanmaster.utils.StorageUtil;
+import com.balaganovrocks.yourmasterclean.base.BaseFragment;
+import com.balaganovrocks.yourmasterclean.R;
+import com.balaganovrocks.yourmasterclean.adapter.SoftwareAdapter;
+import com.balaganovrocks.yourmasterclean.base.BaseFragment;
+import com.balaganovrocks.yourmasterclean.model.AppInfo;
+import com.balaganovrocks.yourmasterclean.utils.StorageUtil;
import java.lang.reflect.Method;
import java.util.ArrayList;
@@ -113,7 +114,7 @@ private void fillData() {
topText.setText("");
} else {
- topText.setText("卸载下列软件,会影响正常使用");
+ topText.setText(R.string.Attention);
}
diff --git a/app/src/main/java/com/yzy/supercleanmaster/fragment/VersionFragment.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/fragment/VersionFragment.java
similarity index 73%
rename from app/src/main/java/com/yzy/supercleanmaster/fragment/VersionFragment.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/fragment/VersionFragment.java
index fae1670..d55f04d 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/fragment/VersionFragment.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/fragment/VersionFragment.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.fragment;
+package com.balaganovrocks.yourmasterclean.fragment;
import android.app.Activity;
import android.app.Fragment;
@@ -7,8 +7,9 @@
import android.view.View;
import android.view.ViewGroup;
-import com.yzy.supercleanmaster.R;
-import com.yzy.supercleanmaster.base.FragmentContainerActivity;
+import com.balaganovrocks.yourmasterclean.base.FragmentContainerActivity;
+import com.balaganovrocks.yourmasterclean.R;
+import com.balaganovrocks.yourmasterclean.base.FragmentContainerActivity;
public class VersionFragment extends Fragment {
@@ -38,7 +39,8 @@ public void onActivityCreated(Bundle savedInstanceState) {
getActivity().getActionBar().setDisplayHomeAsUpEnabled(true);
getActivity().getActionBar().setDisplayShowHomeEnabled(false);
- getActivity().getActionBar().setTitle("版本信息");
+ getActivity().getActionBar().setTitle(
+ "Информация о версии");
}
diff --git a/app/src/main/java/com/yzy/supercleanmaster/fragment/WeakFragmentPagerAdapter.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/fragment/WeakFragmentPagerAdapter.java
similarity index 94%
rename from app/src/main/java/com/yzy/supercleanmaster/fragment/WeakFragmentPagerAdapter.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/fragment/WeakFragmentPagerAdapter.java
index 6b87822..39ea82b 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/fragment/WeakFragmentPagerAdapter.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/fragment/WeakFragmentPagerAdapter.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.fragment;
+package com.balaganovrocks.yourmasterclean.fragment;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/model/AppInfo.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/model/AppInfo.java
similarity index 96%
rename from app/src/main/java/com/yzy/supercleanmaster/model/AppInfo.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/model/AppInfo.java
index 7e25d79..7511680 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/model/AppInfo.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/model/AppInfo.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.model;
+package com.balaganovrocks.yourmasterclean.model;
import android.graphics.drawable.Drawable;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/model/AutoStartInfo.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/model/AutoStartInfo.java
similarity index 97%
rename from app/src/main/java/com/yzy/supercleanmaster/model/AutoStartInfo.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/model/AutoStartInfo.java
index d4b0613..9aedc60 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/model/AutoStartInfo.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/model/AutoStartInfo.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.yzy.supercleanmaster.model;
+package com.balaganovrocks.yourmasterclean.model;
// TODO: Auto-generated Javadoc
diff --git a/app/src/main/java/com/yzy/supercleanmaster/model/CacheInfo.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/model/CacheInfo.java
similarity index 97%
rename from app/src/main/java/com/yzy/supercleanmaster/model/CacheInfo.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/model/CacheInfo.java
index b068ba2..0b6ae0d 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/model/CacheInfo.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/model/CacheInfo.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.yzy.supercleanmaster.model;
+package com.balaganovrocks.yourmasterclean.model;
// TODO: Auto-generated Javadoc
diff --git a/app/src/main/java/com/yzy/supercleanmaster/model/CacheListItem.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/model/CacheListItem.java
similarity index 93%
rename from app/src/main/java/com/yzy/supercleanmaster/model/CacheListItem.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/model/CacheListItem.java
index 12af5c4..3b238c8 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/model/CacheListItem.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/model/CacheListItem.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.model;
+package com.balaganovrocks.yourmasterclean.model;
import android.graphics.drawable.Drawable;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/model/SDCardInfo.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/model/SDCardInfo.java
similarity index 93%
rename from app/src/main/java/com/yzy/supercleanmaster/model/SDCardInfo.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/model/SDCardInfo.java
index 1dae3b1..5d783c2 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/model/SDCardInfo.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/model/SDCardInfo.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.yzy.supercleanmaster.model;
+package com.balaganovrocks.yourmasterclean.model;
// TODO: Auto-generated Javadoc
diff --git a/app/src/main/java/com/yzy/supercleanmaster/model/StorageSize.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/model/StorageSize.java
similarity index 93%
rename from app/src/main/java/com/yzy/supercleanmaster/model/StorageSize.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/model/StorageSize.java
index 321b8eb..3d80db5 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/model/StorageSize.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/model/StorageSize.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.yzy.supercleanmaster.model;
+package com.balaganovrocks.yourmasterclean.model;
// TODO: Auto-generated Javadoc
diff --git a/app/src/main/java/com/yzy/supercleanmaster/receiver/BootCompleteReceiver.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/receiver/BootCompleteReceiver.java
similarity index 77%
rename from app/src/main/java/com/yzy/supercleanmaster/receiver/BootCompleteReceiver.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/receiver/BootCompleteReceiver.java
index 1077fc9..36d35b1 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/receiver/BootCompleteReceiver.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/receiver/BootCompleteReceiver.java
@@ -1,10 +1,10 @@
-package com.yzy.supercleanmaster.receiver;
+package com.balaganovrocks.yourmasterclean.receiver;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
-import com.yzy.supercleanmaster.service.CoreService;
+import com.balaganovrocks.yourmasterclean.service.CoreService;
public class BootCompleteReceiver extends BroadcastReceiver {
private static final String TAG = "BootCompleteReceiver";
diff --git a/app/src/main/java/com/yzy/supercleanmaster/service/CleanerService.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/service/CleanerService.java
similarity index 97%
rename from app/src/main/java/com/yzy/supercleanmaster/service/CleanerService.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/service/CleanerService.java
index df749c2..555258e 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/service/CleanerService.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/service/CleanerService.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.service;
+package com.balaganovrocks.yourmasterclean.service;
import android.app.Service;
import android.content.Context;
@@ -18,9 +18,8 @@
import android.text.format.Formatter;
import android.util.Log;
import android.widget.Toast;
-
-import com.yzy.supercleanmaster.R;
-import com.yzy.supercleanmaster.model.CacheListItem;
+import com.balaganovrocks.yourmasterclean.R;
+import com.balaganovrocks.yourmasterclean.model.CacheListItem;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
@@ -30,7 +29,7 @@
public class CleanerService extends Service {
- public static final String ACTION_CLEAN_AND_EXIT = "com.yzy.cache.cleaner.CLEAN_AND_EXIT";
+ public static final String ACTION_CLEAN_AND_EXIT = "com.balaganovrocks.cache.cleaner.CLEAN_AND_EXIT";
private static final String TAG = "CleanerService";
@@ -212,6 +211,7 @@ public void onCreate() {
} catch (NoSuchMethodException e) {
e.printStackTrace();
}
+
}
@Override
diff --git a/app/src/main/java/com/yzy/supercleanmaster/service/CoreService.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/service/CoreService.java
similarity index 97%
rename from app/src/main/java/com/yzy/supercleanmaster/service/CoreService.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/service/CoreService.java
index 022b162..bfa77f1 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/service/CoreService.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/service/CoreService.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.service;
+package com.balaganovrocks.yourmasterclean.service;
import android.app.ActivityManager;
import android.app.Service;
@@ -15,8 +15,8 @@
import android.util.Log;
import android.widget.Toast;
-import com.yzy.supercleanmaster.R;
-import com.yzy.supercleanmaster.bean.AppProcessInfo;
+import com.balaganovrocks.yourmasterclean.R;
+import com.balaganovrocks.yourmasterclean.bean.AppProcessInfo;
import java.lang.reflect.Method;
import java.util.ArrayList;
@@ -24,7 +24,7 @@
public class CoreService extends Service {
- public static final String ACTION_CLEAN_AND_EXIT = "com.yzy.service.cleaner.CLEAN_AND_EXIT";
+ public static final String ACTION_CLEAN_AND_EXIT = "com.balaganovrocks.service.cleaner.CLEAN_AND_EXIT";
private static final String TAG = "CleanerService";
diff --git a/app/src/main/java/com/yzy/supercleanmaster/swipeback/SwipeBackActivity.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/swipeback/SwipeBackActivity.java
similarity index 96%
rename from app/src/main/java/com/yzy/supercleanmaster/swipeback/SwipeBackActivity.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/swipeback/SwipeBackActivity.java
index 39f4830..0c8b41b 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/swipeback/SwipeBackActivity.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/swipeback/SwipeBackActivity.java
@@ -1,5 +1,5 @@
-package com.yzy.supercleanmaster.swipeback;
+package com.balaganovrocks.yourmasterclean.swipeback;
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/swipeback/SwipeBackActivityBase.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/swipeback/SwipeBackActivityBase.java
similarity index 87%
rename from app/src/main/java/com/yzy/supercleanmaster/swipeback/SwipeBackActivityBase.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/swipeback/SwipeBackActivityBase.java
index 4645524..5e6c344 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/swipeback/SwipeBackActivityBase.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/swipeback/SwipeBackActivityBase.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.swipeback;
+package com.balaganovrocks.yourmasterclean.swipeback;
/**
* @author Yrom
diff --git a/app/src/main/java/com/yzy/supercleanmaster/swipeback/SwipeBackActivityHelper.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/swipeback/SwipeBackActivityHelper.java
similarity index 94%
rename from app/src/main/java/com/yzy/supercleanmaster/swipeback/SwipeBackActivityHelper.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/swipeback/SwipeBackActivityHelper.java
index 8a3fd65..b370031 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/swipeback/SwipeBackActivityHelper.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/swipeback/SwipeBackActivityHelper.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.swipeback;
+package com.balaganovrocks.yourmasterclean.swipeback;
import android.app.Activity;
import android.graphics.Color;
@@ -6,8 +6,7 @@
import android.view.LayoutInflater;
import android.view.View;
-import com.yzy.supercleanmaster.R;
-
+import com.balaganovrocks.yourmasterclean.R;
/**
* @author Yrom
diff --git a/app/src/main/java/com/yzy/supercleanmaster/swipeback/SwipeBackLayout.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/swipeback/SwipeBackLayout.java
similarity index 99%
rename from app/src/main/java/com/yzy/supercleanmaster/swipeback/SwipeBackLayout.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/swipeback/SwipeBackLayout.java
index 2add480..7fadf5a 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/swipeback/SwipeBackLayout.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/swipeback/SwipeBackLayout.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.swipeback;
+package com.balaganovrocks.yourmasterclean.swipeback;
import android.app.Activity;
import android.content.Context;
@@ -13,7 +13,7 @@
import android.view.ViewGroup;
import android.widget.FrameLayout;
-import com.yzy.supercleanmaster.R;
+import com.balaganovrocks.yourmasterclean.R;
import java.util.ArrayList;
import java.util.List;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/swipeback/SwipeBackPreferenceActivity.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/swipeback/SwipeBackPreferenceActivity.java
similarity index 95%
rename from app/src/main/java/com/yzy/supercleanmaster/swipeback/SwipeBackPreferenceActivity.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/swipeback/SwipeBackPreferenceActivity.java
index d6263ae..6b2c613 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/swipeback/SwipeBackPreferenceActivity.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/swipeback/SwipeBackPreferenceActivity.java
@@ -1,5 +1,5 @@
-package com.yzy.supercleanmaster.swipeback;
+package com.balaganovrocks.yourmasterclean.swipeback;
import android.os.Bundle;
import android.preference.PreferenceActivity;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/swipeback/Utils.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/swipeback/Utils.java
similarity index 97%
rename from app/src/main/java/com/yzy/supercleanmaster/swipeback/Utils.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/swipeback/Utils.java
index 224c4e8..04cabb9 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/swipeback/Utils.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/swipeback/Utils.java
@@ -1,5 +1,5 @@
-package com.yzy.supercleanmaster.swipeback;
+package com.balaganovrocks.yourmasterclean.swipeback;
import android.app.Activity;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/swipeback/ViewDragHelper.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/swipeback/ViewDragHelper.java
similarity index 99%
rename from app/src/main/java/com/yzy/supercleanmaster/swipeback/ViewDragHelper.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/swipeback/ViewDragHelper.java
index 58c5878..2c928a5 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/swipeback/ViewDragHelper.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/swipeback/ViewDragHelper.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.yzy.supercleanmaster.swipeback;
+package com.balaganovrocks.yourmasterclean.swipeback;
import android.content.Context;
import android.support.v4.view.MotionEventCompat;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/ui/AboutActivity.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/AboutActivity.java
similarity index 64%
rename from app/src/main/java/com/yzy/supercleanmaster/ui/AboutActivity.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/ui/AboutActivity.java
index c63eddc..cd8879a 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/ui/AboutActivity.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/AboutActivity.java
@@ -1,12 +1,13 @@
-package com.yzy.supercleanmaster.ui;
+package com.balaganovrocks.yourmasterclean.ui;
+import android.content.pm.ActivityInfo;
import android.os.Bundle;
import android.text.util.Linkify;
import android.widget.TextView;
-import com.yzy.supercleanmaster.R;
-import com.yzy.supercleanmaster.base.BaseSwipeBackActivity;
-import com.yzy.supercleanmaster.utils.AppUtil;
+import com.balaganovrocks.yourmasterclean.R;
+import com.balaganovrocks.yourmasterclean.base.BaseSwipeBackActivity;
+import com.balaganovrocks.yourmasterclean.utils.AppUtil;
import butterknife.InjectView;
@@ -22,12 +23,12 @@ protected void onCreate(Bundle savedInstanceState) {
getActionBar().setDisplayHomeAsUpEnabled(true);
getActionBar().setHomeButtonEnabled(true);
- getActionBar().setTitle("关于");
+ getActionBar().setTitle("на");
TextView tv = (TextView) findViewById(R.id.app_information);
Linkify.addLinks(tv, Linkify.ALL);
subVersion.setText("V"+ AppUtil.getVersion(mContext));
-
+ setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}
}
diff --git a/app/src/main/java/com/yzy/supercleanmaster/ui/AutoStartManageActivity.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/AutoStartManageActivity.java
similarity index 85%
rename from app/src/main/java/com/yzy/supercleanmaster/ui/AutoStartManageActivity.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/ui/AutoStartManageActivity.java
index 27969b7..799d973 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/ui/AutoStartManageActivity.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/AutoStartManageActivity.java
@@ -1,7 +1,8 @@
-package com.yzy.supercleanmaster.ui;
+package com.balaganovrocks.yourmasterclean.ui;
import android.annotation.TargetApi;
import android.app.ActionBar;
+import android.content.pm.ActivityInfo;
import android.content.res.Resources;
import android.graphics.Color;
import android.os.Build;
@@ -15,13 +16,13 @@
import android.view.Window;
import android.view.WindowManager;
-import com.yzy.supercleanmaster.R;
-import com.yzy.supercleanmaster.base.BaseSwipeBackActivity;
-import com.yzy.supercleanmaster.fragment.AutoStartFragment;
-import com.yzy.supercleanmaster.fragment.WeakFragmentPagerAdapter;
-import com.yzy.supercleanmaster.utils.SystemBarTintManager;
-import com.yzy.supercleanmaster.utils.UIElementsHelper;
-import com.yzy.supercleanmaster.views.SlidingTab;
+import com.balaganovrocks.yourmasterclean.R;
+import com.balaganovrocks.yourmasterclean.base.BaseSwipeBackActivity;
+import com.balaganovrocks.yourmasterclean.fragment.AutoStartFragment;
+import com.balaganovrocks.yourmasterclean.fragment.WeakFragmentPagerAdapter;
+import com.balaganovrocks.yourmasterclean.utils.SystemBarTintManager;
+import com.balaganovrocks.yourmasterclean.utils.UIElementsHelper;
+import com.balaganovrocks.yourmasterclean.views.SlidingTab;
import butterknife.InjectView;
@@ -65,7 +66,7 @@ protected void onCreate(Bundle savedInstanceState) {
tabs.setViewPager(pager);
setTabsValue();
-
+ setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}
@@ -133,7 +134,8 @@ public boolean onOptionsItemSelected(MenuItem item) {
public class MyPagerAdapter extends WeakFragmentPagerAdapter {
- private final String[] TITLES = {"普通软件", "系统核心软件"};
+ private final String[] TITLES = {"Общее программное обеспечение",
+ "Системное программное обеспечение"};
public MyPagerAdapter(FragmentManager fm) {
super(fm);
diff --git a/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/BatterySavingActivity.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/BatterySavingActivity.java
new file mode 100644
index 0000000..ca77224
--- /dev/null
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/BatterySavingActivity.java
@@ -0,0 +1,334 @@
+package com.balaganovrocks.yourmasterclean.ui;
+
+import android.annotation.TargetApi;
+import android.app.ActionBar;
+import android.content.ComponentName;
+import android.content.Context;
+import android.content.Intent;
+import android.content.ServiceConnection;
+import android.content.pm.ActivityInfo;
+import android.os.Build;
+import android.os.Bundle;
+import android.os.IBinder;
+import android.support.annotation.NonNull;
+import android.util.Log;
+import android.view.MenuItem;
+import android.view.View;
+import android.view.ViewGroup;
+import android.view.Window;
+import android.view.WindowManager;
+import android.view.animation.AnimationUtils;
+import android.widget.Button;
+import android.widget.LinearLayout;
+import android.widget.ListView;
+import android.widget.RelativeLayout;
+import android.widget.TextView;
+
+import com.balaganovrocks.yourmasterclean.R;
+import com.balaganovrocks.yourmasterclean.adapter.BatterySavingAdapter;
+import com.balaganovrocks.yourmasterclean.adapter.ClearMemoryAdapter;
+import com.balaganovrocks.yourmasterclean.base.BaseSwipeBackActivity;
+import com.balaganovrocks.yourmasterclean.bean.AppProcessInfo;
+import com.balaganovrocks.yourmasterclean.model.StorageSize;
+import com.balaganovrocks.yourmasterclean.service.CoreService;
+import com.balaganovrocks.yourmasterclean.utils.StorageUtil;
+import com.balaganovrocks.yourmasterclean.utils.SystemBarTintManager;
+import com.balaganovrocks.yourmasterclean.utils.T;
+import com.balaganovrocks.yourmasterclean.utils.UIElementsHelper;
+import com.balaganovrocks.yourmasterclean.widget.textcounter.CounterView;
+import com.balaganovrocks.yourmasterclean.widget.textcounter.formatters.DecimalFormatter;
+import com.etiennelawlor.quickreturn.library.enums.QuickReturnType;
+import com.etiennelawlor.quickreturn.library.listeners.QuickReturnListViewOnScrollListener;
+import com.google.android.gms.ads.AdListener;
+import com.google.android.gms.ads.AdRequest;
+import com.google.android.gms.ads.InterstitialAd;
+import com.john.waveview.WaveView;
+import com.nhaarman.listviewanimations.appearance.simple.SwingBottomInAnimationAdapter;
+import com.nhaarman.listviewanimations.itemmanipulation.swipedismiss.OnDismissCallback;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import butterknife.InjectView;
+import butterknife.OnClick;
+
+public class BatterySavingActivity extends BaseSwipeBackActivity implements OnDismissCallback, CoreService.OnPeocessActionListener {
+
+ ActionBar ab;
+
+ @InjectView(R.id.listview)
+ ListView mListView;
+
+ // @InjectView(R.id.wave_view)
+ // WaveView mwaveView;
+
+
+ @InjectView(R.id.header)
+ RelativeLayout header;
+ List mAppProcessInfos = new ArrayList<>();
+ BatterySavingAdapter mBatterySavingAdapter;
+
+ @InjectView(R.id.textCounter)
+ CounterView textCounter;
+ @InjectView(R.id.sufix)
+ TextView sufix;
+ public long Allmemory;
+
+ @InjectView(R.id.bottom_lin)
+ LinearLayout bottom_lin;
+
+ @InjectView(R.id.progressBar)
+ View mProgressBar;
+ @InjectView(R.id.progressBarText)
+ TextView mProgressBarText;
+
+ @InjectView(R.id.clear_button)
+ Button clearButton;
+ private static final int INITIAL_DELAY_MILLIS = 300;
+ SwingBottomInAnimationAdapter swingBottomInAnimationAdapter;
+ private static final String TAG = "myLogs";
+ private CoreService mCoreService;
+ private InterstitialAd mInterstitialAd;
+ private ServiceConnection mServiceConnection = new ServiceConnection() {
+ @Override
+ public void onServiceConnected(ComponentName name, IBinder service) {
+ mCoreService = ((CoreService.ProcessServiceBinder) service).getService();
+ mCoreService.setOnActionListener(BatterySavingActivity.this);
+ mCoreService.scanRunProcess();
+ // updateStorageUsage();
+
+
+ }
+
+ @Override
+ public void onServiceDisconnected(ComponentName name) {
+ mCoreService.setOnActionListener(null);
+ mCoreService = null;
+ }
+ };
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_battery_saving);
+ getActionBar().setDisplayHomeAsUpEnabled(true);
+ // applyKitKatTranslucency();
+ mBatterySavingAdapter = new BatterySavingAdapter(mContext, mAppProcessInfos);
+ mListView.setAdapter(mBatterySavingAdapter);
+ bindService(new Intent(mContext, CoreService.class),
+ mServiceConnection, Context.BIND_AUTO_CREATE);
+ int footerHeight = mContext.getResources().getDimensionPixelSize(R.dimen.footer_height);
+ mListView.setOnScrollListener(new QuickReturnListViewOnScrollListener(QuickReturnType.FOOTER, null, 0, bottom_lin, footerHeight));
+ textCounter.setAutoFormat(false);
+ textCounter.setFormatter(new DecimalFormatter());
+ textCounter.setAutoStart(false);
+ textCounter.setIncrement(5f); // the amount the number increments at each time interval
+ textCounter.setTimeInterval(50); // the time interval (ms) at which the text changes
+ mInterstitialAd = new InterstitialAd(this);
+ mInterstitialAd.setAdUnitId("ca-app-pub-4369038195513432/2986510514");
+ mInterstitialAd.loadAd(new AdRequest.Builder().build());
+ setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
+ }
+
+ @Override
+ public boolean onOptionsItemSelected(MenuItem item) {
+ // TODO Auto-generated method stub
+ if (item.getItemId() == android.R.id.home) {
+ finish();
+ return true;
+ }
+ return super.onOptionsItemSelected(item);
+ }
+
+ /**
+ * Apply KitKat specific translucency.
+ */
+ private void applyKitKatTranslucency() {
+
+ // KitKat translucent navigation/status bar.
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
+ setTranslucentStatus(true);
+ SystemBarTintManager mTintManager = new SystemBarTintManager(this);
+ mTintManager.setStatusBarTintEnabled(true);
+ mTintManager.setNavigationBarTintEnabled(true);
+ // mTintManager.setTintColor(0xF00099CC);
+
+ mTintManager.setTintDrawable(UIElementsHelper
+ .getGeneralActionBarBackground(this));
+
+ getActionBar().setBackgroundDrawable(
+ UIElementsHelper.getGeneralActionBarBackground(this));
+
+ }
+
+ }
+
+ @TargetApi(19)
+ private void setTranslucentStatus(boolean on) {
+ Window win = getWindow();
+ WindowManager.LayoutParams winParams = win.getAttributes();
+ final int bits = WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS;
+ if (on) {
+ winParams.flags |= bits;
+ } else {
+ winParams.flags &= ~bits;
+ }
+ win.setAttributes(winParams);
+ }
+
+ @Override
+ public void onDismiss(@NonNull ViewGroup viewGroup, @NonNull int[] ints) {
+
+ }
+
+ @Override
+ public void onScanStarted(Context context) {
+ mProgressBarText.setText(R.string.scanning);
+ showProgressBar(true);
+ }
+
+ @Override
+ public void onScanProgressUpdated(Context context, int current, int max) {
+ mProgressBarText.setText(getString(R.string.scanning_m_of_n, current, max));
+ }
+
+ @Override
+ public void onScanCompleted(Context context, List apps) {
+ mAppProcessInfos.clear();
+
+ Allmemory = 0;
+ for (AppProcessInfo appInfo : apps) {
+ if (!appInfo.isSystem) {
+ mAppProcessInfos.add(appInfo);
+ Allmemory += appInfo.memory;
+ }
+ }
+
+
+ //refeshTextCounter();
+
+ mBatterySavingAdapter.notifyDataSetChanged();
+ showProgressBar(false);
+
+
+ if (apps.size() > 0) {
+ header.setVisibility(View.VISIBLE);
+ bottom_lin.setVisibility(View.VISIBLE);
+
+
+ } else {
+ header.setVisibility(View.GONE);
+ bottom_lin.setVisibility(View.GONE);
+ }
+ // mClearMemoryAdapter = new ClearMemoryAdapter(mContext,
+ // apps); mClearMemoryAdapter = new ClearMemoryAdapter(mContext,
+ // apps);
+ // swingBottomInAnimationAdapter = new SwingBottomInAnimationAdapter(new SwipeDismissAdapter(mClearMemoryAdapter, MemoryCleanActivity.this));
+ // swingBottomInAnimationAdapter.setAbsListView(mListView);
+ // assert swingBottomInAnimationAdapter.getViewAnimator() != null;
+ // swingBottomInAnimationAdapter.getViewAnimator().setInitialDelayMillis(INITIAL_DELAY_MILLIS);
+//
+ // mListView.setAdapter(swingBottomInAnimationAdapter);
+ // clearMem.setText("200M");
+
+
+ }
+
+ // private void refeshTextCounter() {
+ // mwaveView.setProgress(20);
+ // StorageSize mStorageSize = StorageUtil.convertStorageSize(Allmemory);
+ // textCounter.setStartValue(0f);
+ // textCounter.setEndValue(mStorageSize.value);
+ // sufix.setText(mStorageSize.suffix);
+ // // textCounter.setSuffix(mStorageSize.suffix);
+ // textCounter.start();
+ // }
+
+ @Override
+ public void onCleanStarted(Context context) {
+
+ }
+
+ @Override
+ public void onCleanCompleted(Context context, long cacheSize) {
+
+ }
+
+
+ @OnClick(R.id.clear_button)
+ public void onClickClear() {
+ long killAppmemory = 0;
+
+
+ for (int i = mAppProcessInfos.size() - 1; i >= 0; i--) {
+ if (mAppProcessInfos.get(i).checked) {
+ killAppmemory += mAppProcessInfos.get(i).memory;
+ mCoreService.killBackgroundProcesses(mAppProcessInfos.get(i).processName);
+ mAppProcessInfos.remove(mAppProcessInfos.get(i));
+ mBatterySavingAdapter.notifyDataSetChanged();
+ }
+ }
+ Allmemory = Allmemory - killAppmemory;
+ T.showLong(mContext, R.string.saving_battery);
+ // if (Allmemory > 0) {
+ // refeshTextCounter();
+ // }
+ if (mInterstitialAd.isLoaded()) {
+ mInterstitialAd.show();
+ } else {
+ Log.d("TAG", "The interstitial wasn't loaded yet.");
+ }
+ mInterstitialAd.setAdListener(new AdListener() {
+ @Override
+ public void onAdLoaded() {
+ Log.d(TAG,"onAdLoaded");
+// Code to be executed when an ad finishes loading.
+ }
+
+ @Override
+ public void onAdFailedToLoad(int errorCode) {
+ Log.d(TAG,"onAdFailedToLoad");
+// Code to be executed when an ad request fails.
+ }
+
+ @Override
+ public void onAdOpened() {
+ Log.d(TAG,"onAdOpened");
+
+ // Code to be executed when the ad is displayed.
+ }
+
+ @Override
+ public void onAdLeftApplication() {
+ Log.d(TAG,"onAdLeftApplication");
+ // Code to be executed when the user has left the app.
+ }
+
+ @Override
+ public void onAdClosed() {
+ Log.d(TAG,"onAdClosed");
+ Intent intent = new Intent(getBaseContext(), ResultActivity.class);
+ startActivityForResult(intent, 0); // do something
+// Code to be executed when when the interstitial ad is closed.
+ }
+ });
+
+ }
+
+
+ private void showProgressBar(boolean show) {
+ if (show) {
+ mProgressBar.setVisibility(View.VISIBLE);
+ } else {
+ mProgressBar.startAnimation(AnimationUtils.loadAnimation(
+ mContext, android.R.anim.fade_out));
+ mProgressBar.setVisibility(View.GONE);
+ }
+ }
+
+ @Override
+ public void onDestroy() {
+ unbindService(mServiceConnection);
+ super.onDestroy();
+ }
+}
diff --git a/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/ChangeLanguage.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/ChangeLanguage.java
new file mode 100644
index 0000000..14bea50
--- /dev/null
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/ChangeLanguage.java
@@ -0,0 +1,46 @@
+package com.balaganovrocks.yourmasterclean.ui;
+
+import android.app.Activity;
+import android.graphics.Color;
+import android.os.Bundle;
+import android.view.View;
+import android.widget.RadioButton;
+
+import com.balaganovrocks.yourmasterclean.R;
+
+public class ChangeLanguage extends Activity {
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_change_language);
+
+ RadioButton rbtnRussian = (RadioButton)findViewById(R.id.rbtnRussian);
+ rbtnRussian.setOnClickListener(radioButtonClickListener);
+
+ RadioButton rbtnEnglish = (RadioButton)findViewById(R.id.rbtnEnglish);
+ rbtnEnglish.setOnClickListener(radioButtonClickListener);
+
+ RadioButton rbtnSpanish = (RadioButton)findViewById(R.id.rbtnSpanish);
+ rbtnSpanish.setOnClickListener(radioButtonClickListener);
+ }
+ View.OnClickListener radioButtonClickListener = new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ RadioButton rb = (RadioButton)v;
+ switch (rb.getId()) {
+ case R.id.rbtnRussian:
+
+ break;
+ case R.id.rbtnEnglish:
+
+ break;
+ case R.id.rbtnSpanish:
+
+ break;
+
+ default:
+ break;
+ }
+ }
+ };
+}
diff --git a/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/Exit.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/Exit.java
new file mode 100644
index 0000000..f6dc954
--- /dev/null
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/Exit.java
@@ -0,0 +1,42 @@
+package com.balaganovrocks.yourmasterclean.ui;
+
+import android.app.Activity;
+import android.content.Intent;
+import android.content.pm.ActivityInfo;
+import android.os.Build;
+import android.os.Bundle;
+import android.support.annotation.RequiresApi;
+import android.view.View;
+import android.widget.Button;
+
+import com.balaganovrocks.yourmasterclean.R;
+public class Exit extends Activity {
+ @Override
+ public void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.exit);
+
+ Button Yes_Exit = (Button) findViewById(R.id.yes_exit);
+ Button No_Exit = (Button) findViewById(R.id.no_exit);
+
+ View.OnClickListener oclBtnExit = new View.OnClickListener() {
+ @RequiresApi(api = Build.VERSION_CODES.JELLY_BEAN)
+ @Override
+ public void onClick(View v) {
+ // TODO Auto-generated method stub
+ finishAffinity();
+ System.exit(0);
+ }
+ };
+ View.OnClickListener oclBtnNoExit = new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ Intent intent = new Intent(v.getContext(), MainActivity.class);
+ startActivityForResult(intent, 0);
+ }
+ };
+ Yes_Exit.setOnClickListener(oclBtnExit);
+ No_Exit.setOnClickListener(oclBtnNoExit);
+ setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
+ }
+}
diff --git a/app/src/main/java/com/yzy/supercleanmaster/ui/MainActivity.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/MainActivity.java
similarity index 81%
rename from app/src/main/java/com/yzy/supercleanmaster/ui/MainActivity.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/ui/MainActivity.java
index ca60a8b..d4f9208 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/ui/MainActivity.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/MainActivity.java
@@ -1,7 +1,9 @@
-package com.yzy.supercleanmaster.ui;
+package com.balaganovrocks.yourmasterclean.ui;
import android.annotation.TargetApi;
import android.app.ActionBar;
+import android.app.NotificationManager;
+import android.content.pm.ActivityInfo;
import android.content.res.Configuration;
import android.os.Build;
import android.os.Bundle;
@@ -14,18 +16,25 @@
import android.view.WindowManager;
import android.widget.FrameLayout;
+import com.balaganovrocks.yourmasterclean.base.BaseActivity;
+import com.google.android.gms.ads.AdListener;
+import com.google.android.gms.ads.AdRequest;
+import com.google.android.gms.ads.AdSize;
+import com.google.android.gms.ads.AdView;
+import com.google.android.gms.ads.InterstitialAd;
+import com.google.android.gms.ads.MobileAds;
import com.ikimuhendis.ldrawer.ActionBarDrawerToggle;
import com.ikimuhendis.ldrawer.DrawerArrowDrawable;
-import com.yzy.supercleanmaster.R;
-import com.yzy.supercleanmaster.base.ActivityTack;
-import com.yzy.supercleanmaster.base.BaseActivity;
-import com.yzy.supercleanmaster.fragment.MainFragment;
-import com.yzy.supercleanmaster.fragment.NavigationDrawerFragment;
-import com.yzy.supercleanmaster.fragment.RelaxFragment;
-import com.yzy.supercleanmaster.fragment.SettingsFragment;
-import com.yzy.supercleanmaster.utils.SystemBarTintManager;
-import com.yzy.supercleanmaster.utils.T;
-import com.yzy.supercleanmaster.utils.UIElementsHelper;
+import com.balaganovrocks.yourmasterclean.R;
+import com.balaganovrocks.yourmasterclean.base.ActivityTack;
+import com.balaganovrocks.yourmasterclean.base.BaseActivity;
+import com.balaganovrocks.yourmasterclean.fragment.MainFragment;
+import com.balaganovrocks.yourmasterclean.fragment.NavigationDrawerFragment;
+import com.balaganovrocks.yourmasterclean.fragment.RelaxFragment;
+import com.balaganovrocks.yourmasterclean.fragment.SettingsFragment;
+import com.balaganovrocks.yourmasterclean.utils.SystemBarTintManager;
+import com.balaganovrocks.yourmasterclean.utils.T;
+import com.balaganovrocks.yourmasterclean.utils.UIElementsHelper;
import java.util.Date;
@@ -41,8 +50,8 @@ public class MainActivity extends BaseActivity implements NavigationDrawerFragme
DrawerLayout mDrawerLayout;
ActionBar ab;
+ private InterstitialAd mInterstitialAd;
private CharSequence mTitle;
-
private ActionBarDrawerToggle mDrawerToggle;
private DrawerArrowDrawable drawerArrow;
private boolean drawerArrowColor;
@@ -51,6 +60,7 @@ public class MainActivity extends BaseActivity implements NavigationDrawerFragme
MainFragment mMainFragment;
RelaxFragment mRelaxFragment;
+
public static final long TWO_SECOND = 2 * 1000;
long preTime;
@Override
@@ -64,8 +74,12 @@ protected void onCreate(Bundle savedInstanceState) {
onNavigationDrawerItemSelected(0);
initDrawer();
-
-
+ MobileAds.initialize(this, "ca-app-pub-4369038195513432/2986510514");
+ mInterstitialAd = new InterstitialAd(this);
+ mInterstitialAd.setAdUnitId("ca-app-pub-4369038195513432/2986510514");
+ mInterstitialAd.loadAd(new AdRequest.Builder().build());
+ MyApp myApp = new MyApp();
+ setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}
@@ -73,7 +87,7 @@ private void initDrawer() {
// TODO Auto-generated method stub
ab = getActionBar();
ab.setDisplayHomeAsUpEnabled(true);// 给home icon的左边加上一个返回的图标
- ab.setHomeButtonEnabled(true);// 需要api level 14 使用home-icon 可点击
+ ab.setHomeButtonEnabled(true); // 需要api level 14 使用home-icon 可点击
drawerArrow = new DrawerArrowDrawable(this) {
@Override
@@ -108,6 +122,7 @@ public void onDrawerOpened(View drawerView) {
// return true;
// }
+
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
@@ -209,7 +224,7 @@ public void onNavigationDrawerItemSelected(int position) {
case 2:
closeDrawer();
- SettingsFragment.launch(MainActivity.this);
+ // SettingsFragment.launch(MainActivity.this);
break;
// fragment = new SettingsFragment();
@@ -243,7 +258,7 @@ public boolean onKeyDown(int keyCode, KeyEvent event) {
// 如果时间间隔大于2秒, 不处理
if ((currentTime - preTime) > TWO_SECOND) {
// 显示消息
- T.showShort(mContext, "再按一次退出应用程序");
+ T.showShort(mContext,R.string.back);
// 更新时间
preTime = currentTime;
@@ -257,4 +272,8 @@ public boolean onKeyDown(int keyCode, KeyEvent event) {
return super.onKeyDown(keyCode, event);
}
+ public void listener(){
+
+
+ }
}
diff --git a/app/src/main/java/com/yzy/supercleanmaster/ui/MemoryCleanActivity.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/MemoryCleanActivity.java
similarity index 71%
rename from app/src/main/java/com/yzy/supercleanmaster/ui/MemoryCleanActivity.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/ui/MemoryCleanActivity.java
index 487936e..cb56689 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/ui/MemoryCleanActivity.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/MemoryCleanActivity.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.ui;
+package com.balaganovrocks.yourmasterclean.ui;
import android.annotation.TargetApi;
import android.app.ActionBar;
@@ -6,10 +6,12 @@
import android.content.Context;
import android.content.Intent;
import android.content.ServiceConnection;
+import android.content.pm.ActivityInfo;
import android.os.Build;
import android.os.Bundle;
import android.os.IBinder;
import android.support.annotation.NonNull;
+import android.util.Log;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
@@ -24,21 +26,24 @@
import com.etiennelawlor.quickreturn.library.enums.QuickReturnType;
import com.etiennelawlor.quickreturn.library.listeners.QuickReturnListViewOnScrollListener;
+import com.google.android.gms.ads.AdListener;
+import com.google.android.gms.ads.AdRequest;
+import com.google.android.gms.ads.InterstitialAd;
import com.john.waveview.WaveView;
import com.nhaarman.listviewanimations.appearance.simple.SwingBottomInAnimationAdapter;
import com.nhaarman.listviewanimations.itemmanipulation.swipedismiss.OnDismissCallback;
-import com.yzy.supercleanmaster.R;
-import com.yzy.supercleanmaster.adapter.ClearMemoryAdapter;
-import com.yzy.supercleanmaster.base.BaseSwipeBackActivity;
-import com.yzy.supercleanmaster.bean.AppProcessInfo;
-import com.yzy.supercleanmaster.model.StorageSize;
-import com.yzy.supercleanmaster.service.CoreService;
-import com.yzy.supercleanmaster.utils.StorageUtil;
-import com.yzy.supercleanmaster.utils.SystemBarTintManager;
-import com.yzy.supercleanmaster.utils.T;
-import com.yzy.supercleanmaster.utils.UIElementsHelper;
-import com.yzy.supercleanmaster.widget.textcounter.CounterView;
-import com.yzy.supercleanmaster.widget.textcounter.formatters.DecimalFormatter;
+import com.balaganovrocks.yourmasterclean.R;
+import com.balaganovrocks.yourmasterclean.adapter.ClearMemoryAdapter;
+import com.balaganovrocks.yourmasterclean.base.BaseSwipeBackActivity;
+import com.balaganovrocks.yourmasterclean.bean.AppProcessInfo;
+import com.balaganovrocks.yourmasterclean.model.StorageSize;
+import com.balaganovrocks.yourmasterclean.service.CoreService;
+import com.balaganovrocks.yourmasterclean.utils.StorageUtil;
+import com.balaganovrocks.yourmasterclean.utils.SystemBarTintManager;
+import com.balaganovrocks.yourmasterclean.utils.T;
+import com.balaganovrocks.yourmasterclean.utils.UIElementsHelper;
+import com.balaganovrocks.yourmasterclean.widget.textcounter.CounterView;
+import com.balaganovrocks.yourmasterclean.widget.textcounter.formatters.DecimalFormatter;
import java.util.ArrayList;
import java.util.List;
@@ -81,9 +86,9 @@ public class MemoryCleanActivity extends BaseSwipeBackActivity implements OnDism
Button clearButton;
private static final int INITIAL_DELAY_MILLIS = 300;
SwingBottomInAnimationAdapter swingBottomInAnimationAdapter;
-
+ private static final String TAG = "myLogs";
private CoreService mCoreService;
-
+ private InterstitialAd mInterstitialAd;
private ServiceConnection mServiceConnection = new ServiceConnection() {
@Override
public void onServiceConnected(ComponentName name, IBinder service) {
@@ -119,6 +124,10 @@ protected void onCreate(Bundle savedInstanceState) {
textCounter.setAutoStart(false);
textCounter.setIncrement(5f); // the amount the number increments at each time interval
textCounter.setTimeInterval(50); // the time interval (ms) at which the text changes
+ mInterstitialAd = new InterstitialAd(this);
+ mInterstitialAd.setAdUnitId("ca-app-pub-4369038195513432/2986510514");
+ mInterstitialAd.loadAd(new AdRequest.Builder().build());
+ setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}
@Override
@@ -211,16 +220,16 @@ public void onScanCompleted(Context context, List apps) {
header.setVisibility(View.GONE);
bottom_lin.setVisibility(View.GONE);
}
-// mClearMemoryAdapter = new ClearMemoryAdapter(mContext,
-// apps); mClearMemoryAdapter = new ClearMemoryAdapter(mContext,
-// apps);
-// swingBottomInAnimationAdapter = new SwingBottomInAnimationAdapter(new SwipeDismissAdapter(mClearMemoryAdapter, MemoryCleanActivity.this));
-// swingBottomInAnimationAdapter.setAbsListView(mListView);
-// assert swingBottomInAnimationAdapter.getViewAnimator() != null;
-// swingBottomInAnimationAdapter.getViewAnimator().setInitialDelayMillis(INITIAL_DELAY_MILLIS);
+ // mClearMemoryAdapter = new ClearMemoryAdapter(mContext,
+ // apps); mClearMemoryAdapter = new ClearMemoryAdapter(mContext,
+ // apps);
+ // swingBottomInAnimationAdapter = new SwingBottomInAnimationAdapter(new SwipeDismissAdapter(mClearMemoryAdapter, MemoryCleanActivity.this));
+ // swingBottomInAnimationAdapter.setAbsListView(mListView);
+ // assert swingBottomInAnimationAdapter.getViewAnimator() != null;
+ // swingBottomInAnimationAdapter.getViewAnimator().setInitialDelayMillis(INITIAL_DELAY_MILLIS);
//
-// mListView.setAdapter(swingBottomInAnimationAdapter);
- //clearMem.setText("200M");
+ // mListView.setAdapter(swingBottomInAnimationAdapter);
+ // clearMem.setText("200M");
}
@@ -260,12 +269,50 @@ public void onClickClear() {
}
}
Allmemory = Allmemory - killAppmemory;
- T.showLong(mContext, "共清理" + StorageUtil.convertStorage(killAppmemory) + "内存");
+ T.showLong(mContext, "Очищено " + StorageUtil.convertStorage(killAppmemory) + " памяти");
if (Allmemory > 0) {
refeshTextCounter();
}
+ if (mInterstitialAd.isLoaded()) {
+ mInterstitialAd.show();
+ } else {
+ Log.d("TAG", "The interstitial wasn't loaded yet.");
+ }
+ mInterstitialAd.setAdListener(new AdListener() {
+ @Override
+ public void onAdLoaded() {
+ Log.d(TAG,"onAdLoaded");
+// Code to be executed when an ad finishes loading.
+ }
+
+ @Override
+ public void onAdFailedToLoad(int errorCode) {
+ Log.d(TAG,"onAdFailedToLoad");
+// Code to be executed when an ad request fails.
+ }
+
+ @Override
+ public void onAdOpened() {
+ Log.d(TAG,"onAdOpened");
+
+ // Code to be executed when the ad is displayed.
+ }
+ @Override
+ public void onAdLeftApplication() {
+ Log.d(TAG,"onAdLeftApplication");
+ // Code to be executed when the user has left the app.
+ }
+ @Override
+ public void onAdClosed() {
+ Log.d(TAG,"onAdClosed");
+ Intent intent = new Intent(getBaseContext(), ResultActivity.class);
+ startActivityForResult(intent, 0);
+// Code to be executed when when the interstitial ad is closed.
+ }
+ });
+ // do something
}
diff --git a/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/MyApp.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/MyApp.java
new file mode 100644
index 0000000..b193353
--- /dev/null
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/MyApp.java
@@ -0,0 +1,33 @@
+package com.balaganovrocks.yourmasterclean.ui;
+
+import android.app.Application;
+
+import com.yandex.metrica.YandexMetrica;
+import com.yandex.metrica.YandexMetricaConfig;
+
+public class MyApp extends Application {
+ @Override
+ public void onCreate() {
+ super.onCreate();
+ // Инициализация AppMetrica SDK
+
+ YandexMetricaConfig.Builder configBuilder = YandexMetricaConfig.newConfigBuilder("180a173d-5533-4b25-98ff-2ef6301637a2");
+ YandexMetrica.activate(getApplicationContext(), configBuilder.build());
+ // Отслеживание активности пользователей
+ YandexMetrica.enableActivityAutoTracking(this);
+
+ YandexMetricaConfig.Builder configBuilder1 = YandexMetricaConfig.newConfigBuilder("180a173d-5533-4b25-98ff-2ef6301637a2");
+ //Реализуйте логику определения того, является ли запуск приложения первым. В качестве критерия вы можете использовать проверку наличия каких-то файлов (настроек, баз данных и др.), которые приложение создает в свой первый запуск.
+ boolean isFirstApplicationLaunch = false;
+ if (!isFirstApplicationLaunch) {
+ //Передайте значение true, если не хотите, чтобы данный пользователь засчитывался как новый
+ configBuilder1.handleFirstActivationAsUpdate(true);
+ }
+ //Создание объекта расширенной конфигурации
+ YandexMetricaConfig extendedConfig = configBuilder1.build();
+ // Инициализация AppMetrica SDK
+ YandexMetrica.activate(getApplicationContext(), extendedConfig);
+ // Отслеживание активности пользователей
+ YandexMetrica.enableActivityAutoTracking(this);
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/Notifications.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/Notifications.java
new file mode 100644
index 0000000..71f5553
--- /dev/null
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/Notifications.java
@@ -0,0 +1,56 @@
+package com.balaganovrocks.yourmasterclean.ui;
+
+import android.app.Notification;
+import android.app.NotificationManager;
+import android.app.PendingIntent;
+import android.app.TaskStackBuilder;
+import android.content.Context;
+import android.content.Intent;
+import android.os.Bundle;
+import android.support.v4.app.NotificationCompat;
+import android.support.v7.app.AppCompatActivity;
+import android.view.View;
+
+import com.balaganovrocks.yourmasterclean.R;
+
+import static android.content.Context.NOTIFICATION_SERVICE;
+
+public class Notifications extends AppCompatActivity {
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_main);
+ }
+
+ public void sendNotification() {
+
+ long itemId = 12345678910L;
+ int notificationId = ((Long) itemId).intValue();
+
+// Create PendingIntent
+ Intent resultIntent = new Intent(this, MainActivity.class);
+ resultIntent.putExtra("hello", itemId);
+
+ TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);
+ stackBuilder.addParentStack(MainActivity.class);
+ stackBuilder.addNextIntent(resultIntent);
+
+ PendingIntent resultPendingIntent =
+ stackBuilder.getPendingIntent(0, PendingIntent.FLAG_UPDATE_CURRENT);
+
+// Create Notification
+ NotificationCompat.Builder builder =
+ new NotificationCompat.Builder(this)
+ .setSmallIcon(R.drawable.ic_launcher)
+ .setContentTitle("Title")
+ .setContentText("Notification text")
+ .setContentIntent(resultPendingIntent);
+
+ Notification notification = builder.build();
+
+// Show Notification
+ NotificationManager notificationManager =
+ (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
+ notificationManager.notify(notificationId, notification);
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/Privacy_Policy.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/Privacy_Policy.java
new file mode 100644
index 0000000..8f155e8
--- /dev/null
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/Privacy_Policy.java
@@ -0,0 +1,19 @@
+package com.balaganovrocks.yourmasterclean.ui;
+
+import android.app.Activity;
+import android.content.pm.ActivityInfo;
+import android.os.Bundle;
+import android.widget.TextView;
+
+import com.balaganovrocks.yourmasterclean.R;
+
+public class Privacy_Policy extends Activity {
+ @Override
+ public void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.privacy_policy);
+
+ TextView Text = (TextView) findViewById(R.id.privacy_policy);
+ setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
+ }
+}
diff --git a/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/ResultActivity.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/ResultActivity.java
new file mode 100644
index 0000000..a7cd108
--- /dev/null
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/ResultActivity.java
@@ -0,0 +1,97 @@
+package com.balaganovrocks.yourmasterclean.ui;
+
+import android.app.Activity;
+import android.content.Intent;
+import android.net.Uri;
+import android.nfc.Tag;
+import android.os.Bundle;
+import android.util.Log;
+import android.view.View;
+import android.widget.Button;
+
+import com.balaganovrocks.yourmasterclean.R;
+import com.google.android.gms.ads.AdListener;
+import com.google.android.gms.ads.AdRequest;
+import com.google.android.gms.ads.AdSize;
+import com.google.android.gms.ads.AdView;
+
+import static android.content.ContentValues.TAG;
+
+public class ResultActivity extends Activity {
+ private AdView mAdView;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_result);
+
+ Button btngo_to_saving_battery = (Button)findViewById(R.id.goto_saving_battery);
+ Button btngoto_memory_clean = (Button)findViewById(R.id.goto_memory_clean);
+ Button btngoto_rate_app = (Button)findViewById(R.id.goto_rate_app);
+ btngo_to_saving_battery.setOnClickListener(onClickListener);
+ btngoto_memory_clean.setOnClickListener(onClickListener);
+ btngoto_rate_app.setOnClickListener(onClickListener);
+
+ mAdView = findViewById(R.id.adView);
+ AdRequest adRequest = new AdRequest.Builder().build();
+ mAdView.loadAd(adRequest);
+ AdSize adSize = new AdSize(300, 250);
+ adSize.equals(AdSize.BANNER);
+
+ mAdView.setAdListener(new AdListener() {
+ @Override
+ public void onAdLoaded() {
+ Log.d(TAG,"onAdLoaded");// Code to be executed when an ad finishes loading.
+ }
+
+ @Override
+ public void onAdFailedToLoad(int errorCode) {
+ Log.d(TAG,"onAdFailedToLoad");
+ // Code to be executed when an ad request fails.
+ }
+
+ @Override
+ public void onAdOpened() {
+ Log.d(TAG,"onAdOpened");
+ // Code to be executed when an ad opens an overlay that
+ // covers the screen.
+ }
+
+ @Override
+ public void onAdLeftApplication() {
+ Log.d(TAG,"onAdLeftApplication");
+ // Code to be executed when the user has left the app.
+ }
+
+ @Override
+ public void onAdClosed() {
+ Log.d(TAG,"onAdClosed");
+ // Code to be executed when when the user is about to return
+ // to the app after tapping on an ad.
+ }
+ });
+ }
+
+
+ private View.OnClickListener onClickListener = new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ switch(v.getId()){
+ case R.id.goto_saving_battery:
+ Intent intent = new Intent(v.getContext(), BatterySavingActivity.class);
+ startActivityForResult(intent, 0); // do something
+ break;
+ case R.id.goto_memory_clean:
+ Intent intent2 = new Intent(v.getContext(), MemoryCleanActivity.class);
+ startActivityForResult(intent2, 0); // do something
+ break;
+ case R.id.goto_rate_app:
+ // Intent browserIntent = new
+ // Intent(Intent.ACTION_VIEW, Uri.parse("https://play.google.com/"));
+ // startActivity(browserIntent);
+ break;
+ }
+
+ }
+ };
+}
diff --git a/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/RubbishCleanActivity.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/RubbishCleanActivity.java
new file mode 100644
index 0000000..34b8083
--- /dev/null
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/RubbishCleanActivity.java
@@ -0,0 +1,557 @@
+package com.balaganovrocks.yourmasterclean.ui;
+
+import android.Manifest;
+import android.annotation.TargetApi;
+import android.app.ActionBar;
+import android.content.ComponentName;
+import android.content.Context;
+import android.content.Intent;
+import android.content.ServiceConnection;
+import android.content.pm.ActivityInfo;
+import android.content.pm.ApplicationInfo;
+import android.content.pm.IPackageDataObserver;
+import android.content.pm.PackageInfo;
+import android.content.pm.PackageManager;
+import android.content.res.Resources;
+import android.os.Build;
+import android.os.Bundle;
+import android.os.IBinder;
+import android.support.annotation.NonNull;
+import android.support.v4.app.ActivityCompat;
+
+import com.google.android.gms.ads.AdListener;
+import com.google.android.gms.ads.InterstitialAd;
+import com.google.android.gms.ads.AdRequest;
+import android.text.format.Formatter;
+import android.util.Log;
+import android.view.MenuItem;
+import android.view.View;
+import android.view.ViewGroup;
+import android.view.Window;
+import android.view.WindowManager;
+import android.view.animation.AnimationUtils;
+import android.widget.Button;
+import android.widget.LinearLayout;
+import android.widget.ListView;
+import android.widget.RelativeLayout;
+import android.widget.TextView;
+import android.widget.Toast;
+
+import com.etiennelawlor.quickreturn.library.enums.QuickReturnType;
+import com.etiennelawlor.quickreturn.library.listeners.QuickReturnListViewOnScrollListener;
+import com.nhaarman.listviewanimations.appearance.simple.SwingBottomInAnimationAdapter;
+import com.nhaarman.listviewanimations.itemmanipulation.swipedismiss.OnDismissCallback;
+import com.balaganovrocks.yourmasterclean.R;
+import com.balaganovrocks.yourmasterclean.adapter.RublishMemoryAdapter;
+import com.balaganovrocks.yourmasterclean.base.BaseSwipeBackActivity;
+import com.balaganovrocks.yourmasterclean.model.CacheListItem;
+import com.balaganovrocks.yourmasterclean.model.StorageSize;
+import com.balaganovrocks.yourmasterclean.service.CleanerService;
+import com.balaganovrocks.yourmasterclean.utils.StorageUtil;
+import com.balaganovrocks.yourmasterclean.utils.SystemBarTintManager;
+import com.balaganovrocks.yourmasterclean.utils.UIElementsHelper;
+import com.balaganovrocks.yourmasterclean.widget.textcounter.CounterView;
+import com.balaganovrocks.yourmasterclean.widget.textcounter.formatters.DecimalFormatter;
+
+import java.io.File;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+import java.util.ArrayList;
+import java.util.List;
+
+import butterknife.InjectView;
+import butterknife.OnClick;
+
+import static com.umeng.socialize.utils.BitmapUtils.cleanCache;
+import static java.util.ResourceBundle.clearCache;
+
+
+public class RubbishCleanActivity extends BaseSwipeBackActivity implements OnDismissCallback, CleanerService.OnActionListener {
+
+ ActionBar ab;
+ protected static final int SCANING = 5;
+
+ protected static final int SCAN_FINIFSH = 6;
+ protected static final int PROCESS_MAX = 8;
+ protected static final int PROCESS_PROCESS = 9;
+ private static final String TAG = "myLogs";
+ private static final int INITIAL_DELAY_MILLIS = 300;
+ SwingBottomInAnimationAdapter swingBottomInAnimationAdapter;
+ Resources res;
+ int ptotal = 0;
+ int pprocess = 0;
+
+
+ private CleanerService mCleanerService;
+ private InterstitialAd mInterstitialAd;
+ private boolean mAlreadyScanned = false;
+ private boolean mAlreadyCleaned = false;
+
+ private static final long CACHE_APP = Long.MAX_VALUE;
+ private CachePackageDataObserver mClearCacheObserver;
+
+ @InjectView(R.id.listview)
+ ListView mListView;
+
+ @InjectView(R.id.empty)
+ TextView mEmptyView;
+
+ @InjectView(R.id.header)
+ RelativeLayout header;
+
+
+ @InjectView(R.id.textCounter)
+ CounterView textCounter;
+ @InjectView(R.id.sufix)
+ TextView sufix;
+
+ @InjectView(R.id.progressBar)
+ View mProgressBar;
+ @InjectView(R.id.progressBarText)
+ TextView mProgressBarText;
+
+ RublishMemoryAdapter rublishMemoryAdapter;
+
+ List mCacheListItem = new ArrayList<>();
+
+ @InjectView(R.id.bottom_lin)
+ LinearLayout bottom_lin;
+
+ @InjectView(R.id.clear_button)
+ Button clearButton;
+
+ private ServiceConnection mServiceConnection = new ServiceConnection() {
+ @Override
+ public void onServiceConnected(ComponentName name, IBinder service) {
+ mCleanerService = ((CleanerService.CleanerServiceBinder) service).getService();
+ mCleanerService.setOnActionListener(RubbishCleanActivity.this);
+
+ // updateStorageUsage();
+
+ if (!mCleanerService.isScanning() && !mAlreadyScanned) {
+ mCleanerService.scanCache();
+ }
+ }
+
+ @Override
+ public void onServiceDisconnected(ComponentName name) {
+ mCleanerService.setOnActionListener(null);
+ mCleanerService = null;
+ }
+ };
+
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_rublish_clean);
+ getActionBar().setDisplayHomeAsUpEnabled(true);
+ // applyKitKatTranslucency();
+
+// StikkyHeaderBuilder.stickTo(mListView).setHeader(header)
+// .minHeightHeaderPixel(0).build();
+ res = getResources();
+
+
+ int footerHeight = mContext.getResources().getDimensionPixelSize(R.dimen.footer_height);
+
+ mListView.setEmptyView(mEmptyView);
+ rublishMemoryAdapter = new RublishMemoryAdapter(mContext, mCacheListItem);
+ mListView.setAdapter(rublishMemoryAdapter);
+ mListView.setOnItemClickListener(rublishMemoryAdapter);
+ mListView.setOnScrollListener(new QuickReturnListViewOnScrollListener(QuickReturnType.FOOTER, null, 0, bottom_lin, footerHeight));
+ bindService(new Intent(mContext, CleanerService.class),
+ mServiceConnection, Context.BIND_AUTO_CREATE);
+ // for android 6.0+
+ mInterstitialAd = new InterstitialAd(this);
+ mInterstitialAd.setAdUnitId("ca-app-pub-4369038195513432/2986510514");
+ mInterstitialAd.loadAd(new AdRequest.Builder().build());
+ setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
+ }
+
+ @Override
+ public boolean onOptionsItemSelected(MenuItem item) {
+ // TODO Auto-generated method stub
+ if (item.getItemId() == android.R.id.home) {
+ finish();
+ return true;
+ }
+ return super.onOptionsItemSelected(item);
+ }
+
+ @Override
+ public void onDismiss(@NonNull ViewGroup viewGroup, @NonNull int[] ints) {
+
+ }
+
+ public void onRequestPermissionsResult(int requestCode,
+ String permissions[], int[] grantResults) {
+ switch (requestCode) {
+ case 1: {
+ // If request is cancelled, the result arrays are empty.
+ if (grantResults.length > 0
+ && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
+ Log.d(TAG,"permission granted");
+ Toast.makeText(mContext,"Permission granted",Toast.LENGTH_SHORT).show();
+ // permission was granted, yay! Do the
+
+ // contacts-related task you need to do.
+
+
+ } else {
+
+ // permission denied, boo! Disable the
+ // functionality that depends on this permission.
+ Log.d(TAG,"permission dont granted");
+
+ Toast.makeText(mContext,"You need to accept the permission",Toast.LENGTH_SHORT).show();
+ }
+ return;
+ }
+
+ // other 'case' lines to check for other
+ // permissions this app might request
+ }
+ }
+
+
+ @Override
+ public void onScanStarted(Context context) {
+ mProgressBarText.setText(R.string.scanning);
+ showProgressBar(true);
+ }
+
+ @Override
+ public void onScanProgressUpdated(Context context, int current, int max) {
+ mProgressBarText.setText(getString(R.string.scanning_m_of_n, current, max));
+
+ }
+
+ @Override
+ public void onScanCompleted(Context context, List apps) {
+ showProgressBar(false);
+ mCacheListItem.clear();
+ mCacheListItem.addAll(apps);
+ rublishMemoryAdapter.notifyDataSetChanged();
+ header.setVisibility(View.GONE);
+ if (apps.size() > 0) {
+ header.setVisibility(View.VISIBLE);
+ bottom_lin.setVisibility(View.VISIBLE);
+
+ long medMemory = mCleanerService != null ? mCleanerService.getCacheSize() : 0;
+
+ StorageSize mStorageSize = StorageUtil.convertStorageSize(medMemory);
+ textCounter.setAutoFormat(false);
+ textCounter.setFormatter(new DecimalFormatter());
+ textCounter.setAutoStart(false);
+ textCounter.setStartValue(0f);
+ textCounter.setEndValue(mStorageSize.value);
+ textCounter.setIncrement(5f); // the amount the number increments at each time interval
+ textCounter.setTimeInterval(50); // the time interval (ms) at which the text changes
+ sufix.setText(mStorageSize.suffix);
+ // textCounter.setSuffix(mStorageSize.suffix);
+ textCounter.start();
+ } else {
+ header.setVisibility(View.GONE);
+ bottom_lin.setVisibility(View.GONE);
+ }
+
+ if (!mAlreadyScanned) {
+ mAlreadyScanned = true;
+
+ }
+
+
+ }
+
+ @Override
+ public void onCleanStarted(Context context) {
+
+ if (isProgressBarVisible()) {
+ showProgressBar(false);
+
+
+ }
+
+ if (!RubbishCleanActivity.this.isFinishing()) {
+ showDialogLoading();
+ }
+ }
+
+ @Override
+ public void onCleanCompleted(Context context, long cacheSize) {
+ Log.d(TAG,"CLean compleate");
+
+ dismissDialogLoading();
+ Toast.makeText(context, context.getString(R.string.cleaned, Formatter.formatShortFileSize(
+ mContext, cacheSize)), Toast.LENGTH_LONG).show();
+ header.setVisibility(View.GONE);
+ bottom_lin.setVisibility(View.GONE);
+ mCacheListItem.clear();
+ rublishMemoryAdapter.notifyDataSetChanged();
+
+ }
+
+
+ /**
+ * Apply KitKat specific translucency.
+ */
+ private void applyKitKatTranslucency() {
+
+ // KitKat translucent navigation/status bar.
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
+ setTranslucentStatus(true);
+ SystemBarTintManager mTintManager = new SystemBarTintManager(this);
+ mTintManager.setStatusBarTintEnabled(true);
+ mTintManager.setNavigationBarTintEnabled(true);
+ // mTintManager.setTintColor(0xF00099CC);
+
+ mTintManager.setTintDrawable(UIElementsHelper
+ .getGeneralActionBarBackground(this));
+
+ getActionBar().setBackgroundDrawable(
+ UIElementsHelper.getGeneralActionBarBackground(this));
+
+ }
+
+ }
+
+ public void clearALLCache()
+ {
+ List packList = getPackageManager().getInstalledPackages(0);
+ for (int i=0; i < packList.size(); i++)
+ {
+ PackageInfo packInfo = packList.get(i);
+ if ( (packInfo.applicationInfo.flags & ApplicationInfo.FLAG_SYSTEM) == 0)
+ {
+ String appName = packInfo.applicationInfo.loadLabel(getPackageManager()).toString();
+ try {
+ // clearing app data
+ // Runtime runtime = Runtime.getRuntime();
+ // runtime.exec("pm clear "+packInfo.packageName);
+ Context context = getApplicationContext().createPackageContext(packInfo.packageName,Context.CONTEXT_IGNORE_SECURITY);
+ deleteCache(context);
+
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ }
+ }
+
+ @OnClick(R.id.clear_button)
+ public void onClickClear() {
+ if (mCleanerService != null && !mCleanerService.isScanning() &&
+ !mCleanerService.isCleaning() && mCleanerService.getCacheSize() > 0) {
+ mAlreadyCleaned = false;
+
+ cleanCache();
+ }
+ clearALLCache();
+ deleteCache(this);
+ clearCache();
+ if (ActivityCompat.checkSelfPermission(mContext, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
+ // TODO: Consider calling
+ // ActivityCompat#requestPermissions
+ // here to request the missing permissions, and then overriding
+ // public void onRequestPermissionsResult(int requestCode, String[] permissions,
+ // int[] grantResults)
+ // to handle the case where the user grants the permission. See the documentation
+ // for ActivityCompat#requestPermissions for more details.
+ if (ActivityCompat.shouldShowRequestPermissionRationale( this,
+ Manifest.permission.WRITE_EXTERNAL_STORAGE)) {
+
+ // Show an expanation to the user *asynchronously* -- don't block
+ // this thread waiting for the user's response! After the user
+ // sees the explanation, try again to request the permission.
+
+ ActivityCompat.requestPermissions(RubbishCleanActivity.this,
+ new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},
+ 1);
+
+ } else {
+
+ // No explanation needed, we can request the permission.
+
+ ActivityCompat.requestPermissions(RubbishCleanActivity.this,
+ new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},
+ 1);
+
+ // 1 is an int constant. The callback method gets the result of the request.
+ }
+
+ return;
+ }
+
+ if (mCleanerService != null && !mCleanerService.isScanning() &&
+ !mCleanerService.isCleaning() && mCleanerService.getCacheSize() > 0) {
+ mAlreadyCleaned = false;
+
+ mCleanerService.cleanCache();
+ }
+ if (mInterstitialAd.isLoaded()) {
+ mInterstitialAd.show();
+ } else {
+ Log.d("TAG", "The interstitial wasn't loaded yet.");
+ }
+ mInterstitialAd.setAdListener(new AdListener() {
+ @Override
+ public void onAdLoaded() {
+ Log.d(TAG,"onAdLoaded");
+// Code to be executed when an ad finishes loading.
+ }
+
+ @Override
+ public void onAdFailedToLoad(int errorCode) {
+ Log.d(TAG,"onAdFailedToLoad");
+// Code to be executed when an ad request fails.
+ }
+
+ @Override
+ public void onAdOpened() {
+ Log.d(TAG,"onAdOpened");
+
+ // Code to be executed when the ad is displayed.
+ }
+
+ @Override
+ public void onAdLeftApplication() {
+ Log.d(TAG,"onAdLeftApplication");
+ // Code to be executed when the user has left the app.
+ }
+
+ @Override
+ public void onAdClosed() {
+ Log.d(TAG,"onAdClosed");
+// Code to be executed when when the interstitial ad is closed.
+ }
+ });
+ mInterstitialAd.setAdListener(new AdListener() {
+ @Override
+ public void onAdClosed() {
+ // Load the next interstitial.
+ mInterstitialAd.loadAd(new AdRequest.Builder().build());
+ Intent intent = new Intent(getBaseContext(), ResultActivity.class);
+ startActivityForResult(intent, 0); // do something
+ }
+
+ });
+
+ }
+ public static void deleteCache(Context context) {
+ try {
+ File dir = context.getCacheDir();
+ deleteDir(dir);
+ } catch (Exception e) {}
+ }
+
+ public static boolean deleteDir(File dir) {
+ if (dir != null && dir.isDirectory()) {
+ String[] children = dir.list();
+ for (int i = 0; i < children.length; i++) {
+ boolean success = deleteDir(new File(dir, children[i]));
+ if (!success) {
+ return false;
+ }
+ }
+ return dir.delete();
+ } else if(dir!= null && dir.isFile()) {
+ return dir.delete();
+ } else {
+ return false;
+ }
+ }
+
+ @TargetApi(19)
+ private void setTranslucentStatus(boolean on) {
+ Window win = getWindow();
+ WindowManager.LayoutParams winParams = win.getAttributes();
+ final int bits = WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS;
+ if (on) {
+ winParams.flags |= bits;
+ } else {
+ winParams.flags &= ~bits;
+ }
+ win.setAttributes(winParams);
+ }
+
+
+ private boolean isProgressBarVisible() {
+ return mProgressBar.getVisibility() == View.VISIBLE;
+ }
+
+ private void showProgressBar(boolean show) {
+ if (show) {
+ mProgressBar.setVisibility(View.VISIBLE);
+ } else {
+ mProgressBar.startAnimation(AnimationUtils.loadAnimation(
+ mContext, android.R.anim.fade_out));
+ mProgressBar.setVisibility(View.GONE);
+ }
+ }
+
+ public void onDestroy() {
+ unbindService(mServiceConnection);
+ super.onDestroy();
+ }
+
+ void clearCache()
+ {
+ if (mClearCacheObserver == null)
+ {
+ mClearCacheObserver=new CachePackageDataObserver();
+ }
+
+ PackageManager mPM=getPackageManager();
+
+ @SuppressWarnings("rawtypes")
+ final Class[] classes= { Long.TYPE, IPackageDataObserver.class };
+
+ Long localLong=Long.valueOf(CACHE_APP);
+
+ try
+ {
+ Method localMethod=
+ mPM.getClass().getMethod("freeStorageAndNotify", classes);
+
+ /*
+ * Start of inner try-catch block
+ */
+ try
+ {
+ localMethod.invoke(mPM, localLong, mClearCacheObserver);
+ }
+ catch (IllegalArgumentException e)
+ {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ catch (IllegalAccessException e)
+ {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ catch (InvocationTargetException e)
+ {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ /*
+ * End of inner try-catch block
+ */
+ }
+ catch (NoSuchMethodException e1)
+ {
+ // TODO Auto-generated catch block
+ e1.printStackTrace();
+ }
+ }//End of clearCache() method
+
+ private class CachePackageDataObserver extends IPackageDataObserver.Stub
+ {
+ public void onRemoveCompleted(String packageName, boolean succeeded)
+ {
+
+ }//End of onRemoveCompleted() method
+ }//End of CachePackageDataObserver instance inner class
+}
diff --git a/app/src/main/java/com/yzy/supercleanmaster/ui/ShortCutActivity.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/ShortCutActivity.java
similarity index 87%
rename from app/src/main/java/com/yzy/supercleanmaster/ui/ShortCutActivity.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/ui/ShortCutActivity.java
index f96cbb4..9d70ffc 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/ui/ShortCutActivity.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/ShortCutActivity.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.ui;
+package com.balaganovrocks.yourmasterclean.ui;
import android.annotation.TargetApi;
import android.app.ActivityManager;
@@ -6,6 +6,7 @@
import android.content.Context;
import android.content.Intent;
import android.content.ServiceConnection;
+import android.content.pm.ActivityInfo;
import android.graphics.Rect;
import android.os.Build;
import android.os.Bundle;
@@ -16,13 +17,14 @@
import android.widget.ImageView;
import android.widget.RelativeLayout;
-import com.yzy.supercleanmaster.R;
-import com.yzy.supercleanmaster.base.BaseActivity;
-import com.yzy.supercleanmaster.bean.AppProcessInfo;
-import com.yzy.supercleanmaster.service.CoreService;
-import com.yzy.supercleanmaster.utils.StorageUtil;
-import com.yzy.supercleanmaster.utils.SystemBarTintManager;
-import com.yzy.supercleanmaster.utils.T;
+import com.balaganovrocks.yourmasterclean.base.BaseActivity;
+import com.balaganovrocks.yourmasterclean.R;
+import com.balaganovrocks.yourmasterclean.base.BaseActivity;
+import com.balaganovrocks.yourmasterclean.bean.AppProcessInfo;
+import com.balaganovrocks.yourmasterclean.service.CoreService;
+import com.balaganovrocks.yourmasterclean.utils.StorageUtil;
+import com.balaganovrocks.yourmasterclean.utils.SystemBarTintManager;
+import com.balaganovrocks.yourmasterclean.utils.T;
import java.lang.reflect.Field;
import java.util.List;
@@ -120,6 +122,7 @@ protected void onCreate(Bundle savedInstanceState) {
R.anim.rotate_anim));
bindService(new Intent(mContext, CoreService.class),
mServiceConnection, Context.BIND_AUTO_CREATE);
+ setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}
@Override
@@ -145,16 +148,16 @@ public void onCleanStarted(Context context) {
@Override
public void onCleanCompleted(Context context, long cacheSize) {
if (cacheSize > 0) {
- T.showLong(mContext, "一键清理 开源版,为您释放" + StorageUtil.convertStorage(cacheSize) + "内存");
+ T.showLong(mContext, "1" + StorageUtil.convertStorage(cacheSize) + "память");
} else {
- T.showLong(mContext, "您刚刚清理过内存,请稍后再来~");
+ T.showLong(mContext, "Вы уже очистили память, пожалуйста, вернитесь позже");
}
finish();
}
- private void killProcess() {
+ public void killProcess() {
// TODO Auto-generated method stub
ActivityManager am = (ActivityManager) getBaseContext()
diff --git a/app/src/main/java/com/yzy/supercleanmaster/ui/SoftwareManageActivity.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/SoftwareManageActivity.java
similarity index 86%
rename from app/src/main/java/com/yzy/supercleanmaster/ui/SoftwareManageActivity.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/ui/SoftwareManageActivity.java
index f1f3edb..6e5ce6a 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/ui/SoftwareManageActivity.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/SoftwareManageActivity.java
@@ -1,7 +1,8 @@
-package com.yzy.supercleanmaster.ui;
+package com.balaganovrocks.yourmasterclean.ui;
import android.annotation.TargetApi;
import android.app.ActionBar;
+import android.content.pm.ActivityInfo;
import android.content.res.Resources;
import android.graphics.Color;
import android.os.Build;
@@ -15,13 +16,13 @@
import android.view.Window;
import android.view.WindowManager;
-import com.yzy.supercleanmaster.R;
-import com.yzy.supercleanmaster.base.BaseSwipeBackActivity;
-import com.yzy.supercleanmaster.fragment.SoftwareManageFragment;
-import com.yzy.supercleanmaster.fragment.WeakFragmentPagerAdapter;
-import com.yzy.supercleanmaster.utils.SystemBarTintManager;
-import com.yzy.supercleanmaster.utils.UIElementsHelper;
-import com.yzy.supercleanmaster.views.SlidingTab;
+import com.balaganovrocks.yourmasterclean.R;
+import com.balaganovrocks.yourmasterclean.base.BaseSwipeBackActivity;
+import com.balaganovrocks.yourmasterclean.fragment.SoftwareManageFragment;
+import com.balaganovrocks.yourmasterclean.fragment.WeakFragmentPagerAdapter;
+import com.balaganovrocks.yourmasterclean.utils.SystemBarTintManager;
+import com.balaganovrocks.yourmasterclean.utils.UIElementsHelper;
+import com.balaganovrocks.yourmasterclean.views.SlidingTab;
import butterknife.InjectView;
@@ -65,6 +66,7 @@ protected void onCreate(Bundle savedInstanceState) {
tabs.setViewPager(pager);
setTabsValue();
+ setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}
@@ -133,7 +135,7 @@ public boolean onOptionsItemSelected(MenuItem item) {
public class MyPagerAdapter extends WeakFragmentPagerAdapter {
- private final String[] TITLES = {"用户软件", "预装软件"};
+ private final String[] TITLES = {"Пользовательские приложения", "Системные приложения"};
public MyPagerAdapter(FragmentManager fm) {
super(fm);
diff --git a/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/SplishActivity.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/SplishActivity.java
new file mode 100644
index 0000000..d867e4e
--- /dev/null
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/SplishActivity.java
@@ -0,0 +1,174 @@
+package com.balaganovrocks.yourmasterclean.ui;
+
+import android.content.Intent;
+import android.content.pm.ActivityInfo;
+import android.graphics.BitmapFactory;
+import android.graphics.PorterDuff;
+import android.os.Bundle;
+import android.view.MotionEvent;
+import android.view.View;
+import android.view.animation.Animation;
+import android.view.animation.AnimationUtils;
+import android.widget.Button;
+import android.widget.ImageView;
+
+import com.balaganovrocks.yourmasterclean.base.BaseActivity;
+import com.balaganovrocks.yourmasterclean.R;
+import com.balaganovrocks.yourmasterclean.base.BaseActivity;
+import com.balaganovrocks.yourmasterclean.fragment.MainFragment;
+import com.balaganovrocks.yourmasterclean.service.CleanerService;
+import com.balaganovrocks.yourmasterclean.service.CoreService;
+import com.balaganovrocks.yourmasterclean.utils.SharedPreferencesUtils;
+
+
+public class SplishActivity extends BaseActivity {
+
+ /**
+ * 三个切换的动画
+ */
+ private Animation mFadeIn;
+ private Animation mFadeInScale;
+ private Animation mFadeOut;
+ private Button BtnStart;
+
+ // @InjectView(R.id.image)
+ ImageView mImageView;
+
+ public static final String ACTION_INSTALL_SHORTCUT = "com.android.launcher.action.INSTALL_SHORTCUT";
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_splish);
+
+ mImageView = (ImageView) findViewById(R.id.image);
+ BtnStart = (Button) findViewById(R.id.start_main);
+ //int index = new Random().nextInt(2);
+ //if (index == 1) {
+ // mImageView.setImageResource(R.drawable.entrance3);
+ //} else {
+ // mImageView.setImageResource(R.drawable.entrance2);
+ //}
+ View.OnClickListener OclBtnStart = new View.OnClickListener() {
+
+ @Override
+ public void onClick(View v) {
+ buttonEffect(BtnStart);
+ Intent intent = new Intent(v.getContext(), MainActivity.class);
+ startActivityForResult(intent, 0);
+ }
+ };
+ BtnStart.setOnClickListener(OclBtnStart);
+ startService(new Intent(this, CoreService.class));
+ startService(new Intent(this, CleanerService.class));
+
+
+ if (!SharedPreferencesUtils.isShortCut(mContext)) {
+ // createShortCut();
+ }
+
+ // initAnim();
+// setListener();
+ setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
+ }
+ public static void buttonEffect(View button){
+ button.setOnTouchListener(new View.OnTouchListener() {
+
+ public boolean onTouch(View v, MotionEvent event) {
+ switch (event.getAction()) {
+ case MotionEvent.ACTION_DOWN: {
+ v.getBackground().setColorFilter(0xe0f47521, PorterDuff.Mode.SRC_ATOP);
+ v.invalidate();
+ break;
+ }
+ case MotionEvent.ACTION_UP: {
+ v.getBackground().clearColorFilter();
+ v.invalidate();
+ break;
+ }
+ }
+ return false;
+ }
+ });
+ }
+ // private void createShortCut() {
+ // // TODO Auto-generated method stub
+ // Intent intent = new Intent();
+ // intent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
+ // intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "АААААА");
+ // intent.putExtra("duplicate", false);
+ // intent.putExtra(Intent.EXTRA_SHORTCUT_ICON, BitmapFactory.decodeResource(getResources(), R.drawable.short_cut_icon));
+ // Intent i = new Intent();
+ // i.setAction("com.balaganovrocks.shortcut");
+ // i.addCategory("android.intent.category.DEFAULT");
+ // intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, i);
+ // sendBroadcast(intent);
+ // SharedPreferencesUtils.setIsShortCut(mContext, true);
+ // }
+
+ private void initAnim() {
+ mFadeIn = AnimationUtils.loadAnimation(this, R.anim.welcome_fade_in);
+ mFadeIn.setDuration(500);
+ mFadeInScale = AnimationUtils.loadAnimation(this,
+ R.anim.welcome_fade_in_scale);
+ mFadeInScale.setDuration(2000);
+ mFadeOut = AnimationUtils.loadAnimation(this, R.anim.welcome_fade_out);
+ mFadeOut.setDuration(500);
+// mImageView.startAnimation(mFadeIn);
+ }
+
+
+ /**
+ * 监听事件
+ */
+ // public void setListener() {
+ // /**
+ // * 动画切换原理:开始时是用第一个渐现动画,当第一个动画结束时开始第二个放大动画,当第二个动画结束时调用第三个渐隐动画,
+ // * 第三个动画结束时修改显示的内容并且重新调用第一个动画,从而达到循环效果
+ // */
+ // mFadeIn.setAnimationListener(new AnimationListener() {
+
+ // public void onAnimationStart(Animation animation) {
+
+ // }
+
+ // public void onAnimationRepeat(Animation animation) {
+
+ // }
+
+ // public void onAnimationEnd(Animation animation) {
+ // mImageView.startAnimation(mFadeInScale);
+ // }
+ // });
+ // mFadeInScale.setAnimationListener(new AnimationListener() {
+
+ // public void onAnimationStart(Animation animation) {
+
+ // }
+
+ // public void onAnimationRepeat(Animation animation) {
+
+ // }
+
+ // public void onAnimationEnd(Animation animation) {
+ // startActivity(MainActivity.class);
+ // finish();
+ // // mImageView.startAnimation(mFadeOut);
+ // }
+ // });
+ // mFadeOut.setAnimationListener(new AnimationListener() {
+
+ // public void onAnimationStart(Animation animation) {
+
+ // }
+
+ // public void onAnimationRepeat(Animation animation) {
+
+ // }
+
+ // public void onAnimationEnd(Animation animation) {
+ // // startActivity(MainActivity.class);
+ // }
+ // });
+ // }
+}
diff --git a/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/settings.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/settings.java
new file mode 100644
index 0000000..3d0aded
--- /dev/null
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/ui/settings.java
@@ -0,0 +1,56 @@
+package com.balaganovrocks.yourmasterclean.ui;
+
+import android.app.Activity;
+import android.content.Intent;
+import android.content.pm.ActivityInfo;
+import android.os.Bundle;
+import android.support.v7.app.AlertDialog;
+import android.view.View;
+import android.widget.AdapterView;
+import android.widget.AdapterView.OnItemSelectedListener;
+import android.widget.ArrayAdapter;
+import android.widget.Button;
+import android.widget.Spinner;
+
+import com.balaganovrocks.yourmasterclean.R;
+
+public class settings extends Activity {
+
+ /** Called when the activity is first created. */
+ @Override
+ public void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.settings);
+
+ setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
+ Button Exit = (Button) findViewById(R.id.exit);
+ Button Privacy_Policy = (Button) findViewById(R.id.privacy_policy);
+ Button btnChangeLaguage = (Button) findViewById(R.id.btnChangeLanguage);
+ View.OnClickListener oclBtnExit = new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ // TODO Auto-generated method stub
+ Intent intent = new Intent(v.getContext(), Exit.class);
+ startActivityForResult(intent, 0);
+ }
+ };
+ View.OnClickListener oclBtnPrivacyPolicy = new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ Intent intent = new Intent(v.getContext(), Privacy_Policy.class);
+ startActivityForResult(intent, 0);
+ }
+ };
+ View.OnClickListener oclBtnChangeLanguage = new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ // TODO Auto-generated method stub
+ Intent intent = new Intent(v.getContext(), ChangeLanguage.class);
+ startActivityForResult(intent, 0);
+ }
+ };
+ Exit.setOnClickListener(oclBtnExit);
+ Privacy_Policy.setOnClickListener(oclBtnPrivacyPolicy);
+ btnChangeLaguage.setOnClickListener(oclBtnChangeLanguage);
+ }
+}
diff --git a/app/src/main/java/com/yzy/supercleanmaster/utils/AppUtil.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/AppUtil.java
similarity index 98%
rename from app/src/main/java/com/yzy/supercleanmaster/utils/AppUtil.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/utils/AppUtil.java
index 5010409..c51bb7f 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/utils/AppUtil.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/AppUtil.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.yzy.supercleanmaster.utils;
+package com.balaganovrocks.yourmasterclean.utils;
import android.app.Activity;
import android.app.ActivityManager;
@@ -34,8 +34,8 @@
import android.util.DisplayMetrics;
import android.view.inputmethod.InputMethodManager;
-import com.yzy.supercleanmaster.bean.AppProcessInfo;
-import com.yzy.supercleanmaster.bean.ProcessInfo;
+import com.balaganovrocks.yourmasterclean.bean.AppProcessInfo;
+import com.balaganovrocks.yourmasterclean.bean.ProcessInfo;
import java.io.BufferedReader;
import java.io.DataOutputStream;
@@ -621,7 +621,7 @@ public static ProcessInfo getMemInfo(String processName) {
}
}
if (process.memory == 0) {
- L.d(AppUtil.class, "##" + processName + ",top -n 1未找到");
+ L.d(AppUtil.class, "##" + processName + ",top -n 1 не найден");
}
return process;
}
@@ -988,13 +988,13 @@ public static long getTotalMemory(Context context) {
L.d(AppUtil.class, str + "\t");
}
// 获得系统总内存,单位KB
- memory = Integer.valueOf(strs[1]).intValue() * 1024;
+ memory = Integer.valueOf(strs[1]).intValue() ;
bufferedReader.close();
} catch (Exception e) {
e.printStackTrace();
}
// Byte转位KB或MB
- return memory;
+ return memory*1024;
}
}
diff --git a/app/src/main/java/com/yzy/supercleanmaster/utils/BootStartUtils.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/BootStartUtils.java
similarity index 98%
rename from app/src/main/java/com/yzy/supercleanmaster/utils/BootStartUtils.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/utils/BootStartUtils.java
index 8c3ef61..6fcffec 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/utils/BootStartUtils.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/BootStartUtils.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.yzy.supercleanmaster.utils;
+package com.balaganovrocks.yourmasterclean.utils;
import android.content.ComponentName;
import android.content.Context;
@@ -23,7 +23,7 @@
import android.content.pm.ResolveInfo;
import android.graphics.drawable.Drawable;
-import com.yzy.supercleanmaster.model.AutoStartInfo;
+import com.balaganovrocks.yourmasterclean.model.AutoStartInfo;
import java.util.ArrayList;
import java.util.Iterator;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/utils/Constants.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/Constants.java
similarity index 90%
rename from app/src/main/java/com/yzy/supercleanmaster/utils/Constants.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/utils/Constants.java
index cfbdaf1..1d09f3d 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/utils/Constants.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/Constants.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.utils;
+package com.balaganovrocks.yourmasterclean.utils;
public class Constants {
diff --git a/app/src/main/java/com/yzy/supercleanmaster/utils/FragmentArgs.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/FragmentArgs.java
similarity index 96%
rename from app/src/main/java/com/yzy/supercleanmaster/utils/FragmentArgs.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/utils/FragmentArgs.java
index 810cdf6..fba4d6d 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/utils/FragmentArgs.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/FragmentArgs.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.utils;
+package com.balaganovrocks.yourmasterclean.utils;
import android.os.Bundle;
import android.text.TextUtils;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/utils/L.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/L.java
similarity index 96%
rename from app/src/main/java/com/yzy/supercleanmaster/utils/L.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/utils/L.java
index 3214e0e..caec737 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/utils/L.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/L.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.utils;
+package com.balaganovrocks.yourmasterclean.utils;
import android.util.Log;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/utils/RootUtil.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/RootUtil.java
similarity index 97%
rename from app/src/main/java/com/yzy/supercleanmaster/utils/RootUtil.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/utils/RootUtil.java
index c68bbf9..f8b7438 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/utils/RootUtil.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/RootUtil.java
@@ -1,8 +1,8 @@
-package com.yzy.supercleanmaster.utils;
+package com.balaganovrocks.yourmasterclean.utils;
import android.content.Context;
-import com.yzy.supercleanmaster.R;
+import com.balaganovrocks.yourmasterclean.R;
import java.io.DataInputStream;
import java.io.DataOutputStream;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/utils/SharedPreferencesUtils.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/SharedPreferencesUtils.java
similarity index 98%
rename from app/src/main/java/com/yzy/supercleanmaster/utils/SharedPreferencesUtils.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/utils/SharedPreferencesUtils.java
index c842306..d5cd540 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/utils/SharedPreferencesUtils.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/SharedPreferencesUtils.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.utils;
+package com.balaganovrocks.yourmasterclean.utils;
import android.content.Context;
import android.content.SharedPreferences;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/utils/ShellUtils.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/ShellUtils.java
similarity index 74%
rename from app/src/main/java/com/yzy/supercleanmaster/utils/ShellUtils.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/utils/ShellUtils.java
index f5ff8df..124743e 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/utils/ShellUtils.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/ShellUtils.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.utils;
+package com.balaganovrocks.yourmasterclean.utils;
import java.io.BufferedReader;
import java.io.DataOutputStream;
@@ -10,16 +10,16 @@
* ShellUtils
*
* Check root
- * {@link com.yzy.supercleanmaster.utils.ShellUtils#checkRootPermission()}
+ * {@link com.balaganovrocks.yourmasterclean.utils.ShellUtils#checkRootPermission()}
*
*
* Execte command
- * {@link com.yzy.supercleanmaster.utils.ShellUtils#execCommand(String, boolean)}
- * {@link com.yzy.supercleanmaster.utils.ShellUtils#execCommand(String, boolean, boolean)}
- * {@link com.yzy.supercleanmaster.utils.ShellUtils#execCommand(java.util.List, boolean)}
- * {@link com.yzy.supercleanmaster.utils.ShellUtils#execCommand(java.util.List, boolean, boolean)}
- * {@link com.yzy.supercleanmaster.utils.ShellUtils#execCommand(String[], boolean)}
- * {@link com.yzy.supercleanmaster.utils.ShellUtils#execCommand(String[], boolean, boolean)}
+ * {@link com.balaganovrocks.yourmasterclean.utils.ShellUtils#execCommand(String, boolean)}
+ * {@link com.balaganovrocks.yourmasterclean.utils.ShellUtils#execCommand(String, boolean, boolean)}
+ * {@link com.balaganovrocks.yourmasterclean.utils.ShellUtils#execCommand(java.util.List, boolean)}
+ * {@link com.balaganovrocks.yourmasterclean.utils.ShellUtils#execCommand(java.util.List, boolean, boolean)}
+ * {@link com.balaganovrocks.yourmasterclean.utils.ShellUtils#execCommand(String[], boolean)}
+ * {@link com.balaganovrocks.yourmasterclean.utils.ShellUtils#execCommand(String[], boolean, boolean)}
*
*
* @author Trinea 2013-5-16
@@ -47,7 +47,7 @@ public static boolean checkRootPermission() {
* @param command command
* @param isRoot whether need to run with root
* @return
- * @see com.yzy.supercleanmaster.utils.ShellUtils#execCommand(String[], boolean, boolean)
+ * @see com.balaganovrocks.yourmasterclean.utils.ShellUtils#execCommand(String[], boolean, boolean)
*/
public static CommandResult execCommand(String command, boolean isRoot) {
return execCommand(new String[] {command}, isRoot, true);
@@ -59,7 +59,7 @@ public static CommandResult execCommand(String command, boolean isRoot) {
* @param commands command list
* @param isRoot whether need to run with root
* @return
- * @see com.yzy.supercleanmaster.utils.ShellUtils#execCommand(String[], boolean, boolean)
+ * @see com.balaganovrocks.yourmasterclean.utils.ShellUtils#execCommand(String[], boolean, boolean)
*/
public static CommandResult execCommand(List commands, boolean isRoot) {
return execCommand(commands == null ? null : commands.toArray(new String[] {}), isRoot, true);
@@ -71,7 +71,7 @@ public static CommandResult execCommand(List commands, boolean isRoot) {
* @param commands command array
* @param isRoot whether need to run with root
* @return
- * @see com.yzy.supercleanmaster.utils.ShellUtils#execCommand(String[], boolean, boolean)
+ * @see com.balaganovrocks.yourmasterclean.utils.ShellUtils#execCommand(String[], boolean, boolean)
*/
public static CommandResult execCommand(String[] commands, boolean isRoot) {
return execCommand(commands, isRoot, true);
@@ -84,7 +84,7 @@ public static CommandResult execCommand(String[] commands, boolean isRoot) {
* @param isRoot whether need to run with root
* @param isNeedResultMsg whether need result msg
* @return
- * @see com.yzy.supercleanmaster.utils.ShellUtils#execCommand(String[], boolean, boolean)
+ * @see com.balaganovrocks.yourmasterclean.utils.ShellUtils#execCommand(String[], boolean, boolean)
*/
public static CommandResult execCommand(String command, boolean isRoot, boolean isNeedResultMsg) {
return execCommand(new String[] {command}, isRoot, isNeedResultMsg);
@@ -97,7 +97,7 @@ public static CommandResult execCommand(String command, boolean isRoot, boolean
* @param isRoot whether need to run with root
* @param isNeedResultMsg whether need result msg
* @return
- * @see com.yzy.supercleanmaster.utils.ShellUtils#execCommand(String[], boolean, boolean)
+ * @see com.balaganovrocks.yourmasterclean.utils.ShellUtils#execCommand(String[], boolean, boolean)
*/
public static CommandResult execCommand(List commands, boolean isRoot, boolean isNeedResultMsg) {
return execCommand(commands == null ? null : commands.toArray(new String[] {}), isRoot, isNeedResultMsg);
@@ -110,9 +110,9 @@ public static CommandResult execCommand(List commands, boolean isRoot, b
* @param isRoot whether need to run with root
* @param isNeedResultMsg whether need result msg
* @return
- * if isNeedResultMsg is false, {@link com.yzy.supercleanmaster.utils.ShellUtils.CommandResult#successMsg} is null and
- * {@link com.yzy.supercleanmaster.utils.ShellUtils.CommandResult#errorMsg} is null.
- * if {@link com.yzy.supercleanmaster.utils.ShellUtils.CommandResult#result} is -1, there maybe some excepiton.
+ * if isNeedResultMsg is false, {@link com.balaganovrocks.yourmasterclean.utils.ShellUtils.CommandResult#successMsg} is null and
+ * {@link com.balaganovrocks.yourmasterclean.utils.ShellUtils.CommandResult#errorMsg} is null.
+ * if {@link com.balaganovrocks.yourmasterclean.utils.ShellUtils.CommandResult#result} is -1, there maybe some excepiton.
*
*/
public static CommandResult execCommand(String[] commands, boolean isRoot, boolean isNeedResultMsg) {
@@ -189,10 +189,10 @@ public static CommandResult execCommand(String[] commands, boolean isRoot, boole
/**
* result of command
*
- * {@link com.yzy.supercleanmaster.utils.ShellUtils.CommandResult#result} means result of command, 0 means normal, else means error, same to excute in
+ * {@link com.balaganovrocks.yourmasterclean.utils.ShellUtils.CommandResult#result} means result of command, 0 means normal, else means error, same to excute in
* linux shell
- * {@link com.yzy.supercleanmaster.utils.ShellUtils.CommandResult#successMsg} means success message of command result
- * {@link com.yzy.supercleanmaster.utils.ShellUtils.CommandResult#errorMsg} means error message of command result
+ * {@link com.balaganovrocks.yourmasterclean.utils.ShellUtils.CommandResult#successMsg} means success message of command result
+ * {@link com.balaganovrocks.yourmasterclean.utils.ShellUtils.CommandResult#errorMsg} means error message of command result
*
*
* @author Trinea 2013-5-16
diff --git a/app/src/main/java/com/yzy/supercleanmaster/utils/StorageUtil.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/StorageUtil.java
similarity index 96%
rename from app/src/main/java/com/yzy/supercleanmaster/utils/StorageUtil.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/utils/StorageUtil.java
index a58b672..2d91aee 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/utils/StorageUtil.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/StorageUtil.java
@@ -13,14 +13,14 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.yzy.supercleanmaster.utils;
+package com.balaganovrocks.yourmasterclean.utils;
import android.content.Context;
import android.os.Environment;
import android.os.StatFs;
-import com.yzy.supercleanmaster.model.SDCardInfo;
-import com.yzy.supercleanmaster.model.StorageSize;
+import com.balaganovrocks.yourmasterclean.model.SDCardInfo;
+import com.balaganovrocks.yourmasterclean.model.StorageSize;
import java.io.File;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/utils/SystemBarTintManager.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/SystemBarTintManager.java
similarity index 99%
rename from app/src/main/java/com/yzy/supercleanmaster/utils/SystemBarTintManager.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/utils/SystemBarTintManager.java
index edaee2d..e4eba44 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/utils/SystemBarTintManager.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/SystemBarTintManager.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.yzy.supercleanmaster.utils;
+package com.balaganovrocks.yourmasterclean.utils;
import android.annotation.SuppressLint;
import android.annotation.TargetApi;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/utils/T.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/T.java
similarity index 97%
rename from app/src/main/java/com/yzy/supercleanmaster/utils/T.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/utils/T.java
index eb45dd9..6747903 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/utils/T.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/T.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.utils;
+package com.balaganovrocks.yourmasterclean.utils;
import android.content.Context;
import android.widget.Toast;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/utils/TextFormater.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/TextFormater.java
similarity index 94%
rename from app/src/main/java/com/yzy/supercleanmaster/utils/TextFormater.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/utils/TextFormater.java
index 30f770e..5ca549d 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/utils/TextFormater.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/TextFormater.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.utils;
+package com.balaganovrocks.yourmasterclean.utils;
import java.text.DecimalFormat;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/utils/UIElementsHelper.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/UIElementsHelper.java
similarity index 98%
rename from app/src/main/java/com/yzy/supercleanmaster/utils/UIElementsHelper.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/utils/UIElementsHelper.java
index d41af15..3ed7a4d 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/utils/UIElementsHelper.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/UIElementsHelper.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.yzy.supercleanmaster.utils;
+package com.balaganovrocks.yourmasterclean.utils;
import android.content.Context;
import android.content.SharedPreferences;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/utils/Utils.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/Utils.java
similarity index 98%
rename from app/src/main/java/com/yzy/supercleanmaster/utils/Utils.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/utils/Utils.java
index e87f915..d44d333 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/utils/Utils.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/Utils.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.yzy.supercleanmaster.utils;
+package com.balaganovrocks.yourmasterclean.utils;
// TODO: Auto-generated Javadoc
diff --git a/app/src/main/java/com/yzy/supercleanmaster/utils/ViewUtil.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/ViewUtil.java
similarity index 98%
rename from app/src/main/java/com/yzy/supercleanmaster/utils/ViewUtil.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/utils/ViewUtil.java
index aad7e62..7542b90 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/utils/ViewUtil.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/utils/ViewUtil.java
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.yzy.supercleanmaster.utils;
+package com.balaganovrocks.yourmasterclean.utils;
import android.content.Context;
import android.util.DisplayMetrics;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/views/ItemCardView.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/views/ItemCardView.java
similarity index 92%
rename from app/src/main/java/com/yzy/supercleanmaster/views/ItemCardView.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/views/ItemCardView.java
index 65ca5aa..e15d4c6 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/views/ItemCardView.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/views/ItemCardView.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.views;
+package com.balaganovrocks.yourmasterclean.views;
import android.content.Context;
import android.content.res.TypedArray;
@@ -8,7 +8,7 @@
import android.widget.RelativeLayout;
import android.widget.TextView;
-import com.yzy.supercleanmaster.R;
+import com.balaganovrocks.yourmasterclean.R;
public class ItemCardView extends RelativeLayout {
diff --git a/app/src/main/java/com/yzy/supercleanmaster/views/RippleView.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/views/RippleView.java
similarity index 98%
rename from app/src/main/java/com/yzy/supercleanmaster/views/RippleView.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/views/RippleView.java
index 3300d06..ee05dcb 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/views/RippleView.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/views/RippleView.java
@@ -22,7 +22,7 @@
* THE SOFTWARE.
*/
-package com.yzy.supercleanmaster.views;
+package com.balaganovrocks.yourmasterclean.views;
import android.annotation.SuppressLint;
import android.content.Context;
@@ -43,7 +43,7 @@
import android.view.animation.ScaleAnimation;
import android.widget.RelativeLayout;
-import com.yzy.supercleanmaster.R;
+import com.balaganovrocks.yourmasterclean.R;
public class RippleView extends RelativeLayout {
@@ -147,6 +147,7 @@ public void draw(Canvas canvas) {
timer = 0;
durationEmpty = -1;
timerEmpty = 0;
+ canvas.save();
canvas.restore();
invalidate();
return;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/views/SlidingTab.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/views/SlidingTab.java
similarity index 99%
rename from app/src/main/java/com/yzy/supercleanmaster/views/SlidingTab.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/views/SlidingTab.java
index 4a4c3e6..831457f 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/views/SlidingTab.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/views/SlidingTab.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.yzy.supercleanmaster.views;
+package com.balaganovrocks.yourmasterclean.views;
import android.content.Context;
import android.content.res.TypedArray;
@@ -38,14 +38,14 @@
import android.widget.LinearLayout;
import android.widget.TextView;
-import com.yzy.supercleanmaster.R;
+import com.balaganovrocks.yourmasterclean.R;
import java.util.Locale;
-public class SlidingTab extends HorizontalScrollView {
+public class SlidingTab extends HorizontalScrollView {
public interface IconTabProvider {
public int getPageIconResId(int position);
diff --git a/app/src/main/java/com/yzy/supercleanmaster/widget/circleprogress/ArcProgress.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/circleprogress/ArcProgress.java
similarity index 98%
rename from app/src/main/java/com/yzy/supercleanmaster/widget/circleprogress/ArcProgress.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/widget/circleprogress/ArcProgress.java
index fbdd05b..3c7ecf8 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/widget/circleprogress/ArcProgress.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/circleprogress/ArcProgress.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.widget.circleprogress;
+package com.balaganovrocks.yourmasterclean.widget.circleprogress;
import android.content.Context;
@@ -14,8 +14,7 @@
import android.util.AttributeSet;
import android.view.View;
-import com.yzy.supercleanmaster.R;
-
+import com.balaganovrocks.yourmasterclean.R;
/**
* Created by bruce on 11/6/14.
@@ -85,7 +84,7 @@ public ArcProgress(Context context, AttributeSet attrs, int defStyleAttr) {
min_size = (int) Utils.dp2px(getResources(), 100);
default_text_size = Utils.sp2px(getResources(), 40);
default_suffix_text_size = Utils.sp2px(getResources(), 15);
- default_suffix_padding = Utils.dp2px(getResources(), 4);
+ default_suffix_padding = Utils.dp2px(getResources(), 10);
default_suffix_text = "%";
default_bottom_text_size = Utils.sp2px(getResources(), 10);
default_stroke_width = Utils.dp2px(getResources(), 4);
diff --git a/app/src/main/java/com/yzy/supercleanmaster/widget/circleprogress/Utils.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/circleprogress/Utils.java
similarity index 87%
rename from app/src/main/java/com/yzy/supercleanmaster/widget/circleprogress/Utils.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/widget/circleprogress/Utils.java
index 759c299..424d1fb 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/widget/circleprogress/Utils.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/circleprogress/Utils.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.widget.circleprogress;
+package com.balaganovrocks.yourmasterclean.widget.circleprogress;
import android.content.res.Resources;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/widget/roundcornerprogress/IconRoundCornerProgressBar.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/roundcornerprogress/IconRoundCornerProgressBar.java
similarity index 98%
rename from app/src/main/java/com/yzy/supercleanmaster/widget/roundcornerprogress/IconRoundCornerProgressBar.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/widget/roundcornerprogress/IconRoundCornerProgressBar.java
index d4a0956..929560d 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/widget/roundcornerprogress/IconRoundCornerProgressBar.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/roundcornerprogress/IconRoundCornerProgressBar.java
@@ -16,7 +16,7 @@
*/
-package com.yzy.supercleanmaster.widget.roundcornerprogress;
+package com.balaganovrocks.yourmasterclean.widget.roundcornerprogress;
import android.annotation.SuppressLint;
import android.content.Context;
@@ -39,7 +39,7 @@
import android.widget.LinearLayout;
import android.widget.TextView;
-import com.yzy.supercleanmaster.R;
+import com.balaganovrocks.yourmasterclean.R;
public class IconRoundCornerProgressBar extends LinearLayout {
private ImageView imageIcon;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/widget/roundcornerprogress/RoundCornerProgressBar.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/roundcornerprogress/RoundCornerProgressBar.java
similarity index 98%
rename from app/src/main/java/com/yzy/supercleanmaster/widget/roundcornerprogress/RoundCornerProgressBar.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/widget/roundcornerprogress/RoundCornerProgressBar.java
index dfaa03a..915f848 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/widget/roundcornerprogress/RoundCornerProgressBar.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/roundcornerprogress/RoundCornerProgressBar.java
@@ -16,7 +16,7 @@
*/
-package com.yzy.supercleanmaster.widget.roundcornerprogress;
+package com.balaganovrocks.yourmasterclean.widget.roundcornerprogress;
import android.annotation.SuppressLint;
import android.content.Context;
@@ -35,7 +35,7 @@
import android.widget.LinearLayout;
import android.widget.TextView;
-import com.yzy.supercleanmaster.R;
+import com.balaganovrocks.yourmasterclean.R;
public class RoundCornerProgressBar extends LinearLayout {
private final static int DEFAULT_PROGRESS_BAR_HEIGHT = 30;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/widget/roundcornerprogress/TextRoundCornerProgressBar.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/roundcornerprogress/TextRoundCornerProgressBar.java
similarity index 98%
rename from app/src/main/java/com/yzy/supercleanmaster/widget/roundcornerprogress/TextRoundCornerProgressBar.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/widget/roundcornerprogress/TextRoundCornerProgressBar.java
index 5c5f6f9..153d486 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/widget/roundcornerprogress/TextRoundCornerProgressBar.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/roundcornerprogress/TextRoundCornerProgressBar.java
@@ -16,7 +16,7 @@
*/
-package com.yzy.supercleanmaster.widget.roundcornerprogress;
+package com.balaganovrocks.yourmasterclean.widget.roundcornerprogress;
import android.annotation.SuppressLint;
import android.content.Context;
@@ -36,7 +36,7 @@
import android.widget.LinearLayout;
import android.widget.TextView;
-import com.yzy.supercleanmaster.R;
+import com.balaganovrocks.yourmasterclean.R;
import java.text.NumberFormat;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/widget/stickyheader/HeaderAnimator.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/stickyheader/HeaderAnimator.java
similarity index 89%
rename from app/src/main/java/com/yzy/supercleanmaster/widget/stickyheader/HeaderAnimator.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/widget/stickyheader/HeaderAnimator.java
index fc21d53..9d0ebba 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/widget/stickyheader/HeaderAnimator.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/stickyheader/HeaderAnimator.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.widget.stickyheader;
+package com.balaganovrocks.yourmasterclean.widget.stickyheader;
import android.view.View;
@@ -13,7 +13,7 @@ public abstract class HeaderAnimator {
public abstract void onScroll(final int scrolledY);
/**
- * Called by the {@link it.carlom.stikkyheader.core.StikkyHeader} to set the {@link com.yzy.supercleanmaster.widget.stickyheader.HeaderAnimator} up
+ * Called by the {@link it.carlom.stikkyheader.core.StikkyHeader} to set the {@link com.balaganovrocks.yourmasterclean.widget.stickyheader.HeaderAnimator} up
*/
void setupAnimator(final View header, final int minHeightHeader, final int heightHeader, final int maxTransaction) {
this.mHeader = header;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/widget/stickyheader/StikkyHeader.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/stickyheader/StikkyHeader.java
similarity index 97%
rename from app/src/main/java/com/yzy/supercleanmaster/widget/stickyheader/StikkyHeader.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/widget/stickyheader/StikkyHeader.java
index 1ae9675..ce7e7ca 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/widget/stickyheader/StikkyHeader.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/stickyheader/StikkyHeader.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.widget.stickyheader;
+package com.balaganovrocks.yourmasterclean.widget.stickyheader;
import android.content.Context;
import android.view.View;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/widget/stickyheader/StikkyHeaderBuilder.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/stickyheader/StikkyHeaderBuilder.java
similarity index 87%
rename from app/src/main/java/com/yzy/supercleanmaster/widget/stickyheader/StikkyHeaderBuilder.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/widget/stickyheader/StikkyHeaderBuilder.java
index 06fa0e3..b820e53 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/widget/stickyheader/StikkyHeaderBuilder.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/stickyheader/StikkyHeaderBuilder.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.widget.stickyheader;
+package com.balaganovrocks.yourmasterclean.widget.stickyheader;
import android.content.Context;
import android.support.annotation.DimenRes;
@@ -7,7 +7,8 @@
import android.view.ViewGroup;
import android.widget.ListView;
-import com.yzy.supercleanmaster.widget.stickyheader.animator.HeaderStikkyAnimator;
+import com.balaganovrocks.yourmasterclean.widget.stickyheader.animator.HeaderStikkyAnimator;
+import com.balaganovrocks.yourmasterclean.widget.stickyheader.animator.HeaderStikkyAnimator;
public abstract class StikkyHeaderBuilder {
diff --git a/app/src/main/java/com/yzy/supercleanmaster/widget/stickyheader/StikkyHeaderListView.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/stickyheader/StikkyHeaderListView.java
similarity index 97%
rename from app/src/main/java/com/yzy/supercleanmaster/widget/stickyheader/StikkyHeaderListView.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/widget/stickyheader/StikkyHeaderListView.java
index b27c428..b2d1b3b 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/widget/stickyheader/StikkyHeaderListView.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/stickyheader/StikkyHeaderListView.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.widget.stickyheader;
+package com.balaganovrocks.yourmasterclean.widget.stickyheader;
import android.content.Context;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/widget/stickyheader/animator/AnimatorBuilder.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/stickyheader/animator/AnimatorBuilder.java
similarity index 99%
rename from app/src/main/java/com/yzy/supercleanmaster/widget/stickyheader/animator/AnimatorBuilder.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/widget/stickyheader/animator/AnimatorBuilder.java
index ea42e46..9bc5846 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/widget/stickyheader/animator/AnimatorBuilder.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/stickyheader/animator/AnimatorBuilder.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.widget.stickyheader.animator;
+package com.balaganovrocks.yourmasterclean.widget.stickyheader.animator;
import android.graphics.Point;
import android.graphics.Rect;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/widget/stickyheader/animator/BaseStickyHeaderAnimator.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/stickyheader/animator/BaseStickyHeaderAnimator.java
similarity index 82%
rename from app/src/main/java/com/yzy/supercleanmaster/widget/stickyheader/animator/BaseStickyHeaderAnimator.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/widget/stickyheader/animator/BaseStickyHeaderAnimator.java
index ca9cfe2..59c1baf 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/widget/stickyheader/animator/BaseStickyHeaderAnimator.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/stickyheader/animator/BaseStickyHeaderAnimator.java
@@ -1,7 +1,7 @@
-package com.yzy.supercleanmaster.widget.stickyheader.animator;
+package com.balaganovrocks.yourmasterclean.widget.stickyheader.animator;
-import com.yzy.supercleanmaster.widget.stickyheader.HeaderAnimator;
+import com.balaganovrocks.yourmasterclean.widget.stickyheader.HeaderAnimator;
public class BaseStickyHeaderAnimator extends HeaderAnimator {
diff --git a/app/src/main/java/com/yzy/supercleanmaster/widget/stickyheader/animator/HeaderStikkyAnimator.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/stickyheader/animator/HeaderStikkyAnimator.java
similarity index 93%
rename from app/src/main/java/com/yzy/supercleanmaster/widget/stickyheader/animator/HeaderStikkyAnimator.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/widget/stickyheader/animator/HeaderStikkyAnimator.java
index a79099b..05c18bd 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/widget/stickyheader/animator/HeaderStikkyAnimator.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/stickyheader/animator/HeaderStikkyAnimator.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.widget.stickyheader.animator;
+package com.balaganovrocks.yourmasterclean.widget.stickyheader.animator;
public class HeaderStikkyAnimator extends BaseStickyHeaderAnimator {
diff --git a/app/src/main/java/com/yzy/supercleanmaster/widget/textcounter/Counter.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/textcounter/Counter.java
similarity index 95%
rename from app/src/main/java/com/yzy/supercleanmaster/widget/textcounter/Counter.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/widget/textcounter/Counter.java
index e223615..819e338 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/widget/textcounter/Counter.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/textcounter/Counter.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.widget.textcounter;
+package com.balaganovrocks.yourmasterclean.widget.textcounter;
/**
* Created by prem on 10/28/14.
diff --git a/app/src/main/java/com/yzy/supercleanmaster/widget/textcounter/CounterType.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/textcounter/CounterType.java
similarity index 87%
rename from app/src/main/java/com/yzy/supercleanmaster/widget/textcounter/CounterType.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/widget/textcounter/CounterType.java
index 365685e..9f93745 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/widget/textcounter/CounterType.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/textcounter/CounterType.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.widget.textcounter;
+package com.balaganovrocks.yourmasterclean.widget.textcounter;
/**
* Created by prem on 10/28/14.
diff --git a/app/src/main/java/com/yzy/supercleanmaster/widget/textcounter/CounterView.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/textcounter/CounterView.java
similarity index 91%
rename from app/src/main/java/com/yzy/supercleanmaster/widget/textcounter/CounterView.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/widget/textcounter/CounterView.java
index 7d53d26..7989976 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/widget/textcounter/CounterView.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/textcounter/CounterView.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.widget.textcounter;
+package com.balaganovrocks.yourmasterclean.widget.textcounter;
import android.annotation.TargetApi;
import android.content.Context;
@@ -7,11 +7,14 @@
import android.util.AttributeSet;
import android.widget.TextView;
-import com.yzy.supercleanmaster.R;
-import com.yzy.supercleanmaster.widget.textcounter.formatters.CommaSeparatedDecimalFormatter;
-import com.yzy.supercleanmaster.widget.textcounter.formatters.DecimalFormatter;
-import com.yzy.supercleanmaster.widget.textcounter.formatters.IntegerFormatter;
-import com.yzy.supercleanmaster.widget.textcounter.formatters.NoFormatter;
+import com.balaganovrocks.yourmasterclean.widget.textcounter.formatters.CommaSeparatedDecimalFormatter;
+import com.balaganovrocks.yourmasterclean.widget.textcounter.formatters.IntegerFormatter;
+import com.balaganovrocks.yourmasterclean.widget.textcounter.formatters.NoFormatter;
+import com.balaganovrocks.yourmasterclean.R;
+import com.balaganovrocks.yourmasterclean.widget.textcounter.formatters.CommaSeparatedDecimalFormatter;
+import com.balaganovrocks.yourmasterclean.widget.textcounter.formatters.DecimalFormatter;
+import com.balaganovrocks.yourmasterclean.widget.textcounter.formatters.IntegerFormatter;
+import com.balaganovrocks.yourmasterclean.widget.textcounter.formatters.NoFormatter;
/**
* Created by prem on 10/28/14.
diff --git a/app/src/main/java/com/yzy/supercleanmaster/widget/textcounter/Formatter.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/textcounter/Formatter.java
similarity index 90%
rename from app/src/main/java/com/yzy/supercleanmaster/widget/textcounter/Formatter.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/widget/textcounter/Formatter.java
index dd78913..cbee7ae 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/widget/textcounter/Formatter.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/textcounter/Formatter.java
@@ -1,4 +1,4 @@
-package com.yzy.supercleanmaster.widget.textcounter;
+package com.balaganovrocks.yourmasterclean.widget.textcounter;
/**
* Created by prem on 10/28/14.
diff --git a/app/src/main/java/com/yzy/supercleanmaster/widget/textcounter/formatters/CommaSeparatedDecimalFormatter.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/textcounter/formatters/CommaSeparatedDecimalFormatter.java
similarity index 74%
rename from app/src/main/java/com/yzy/supercleanmaster/widget/textcounter/formatters/CommaSeparatedDecimalFormatter.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/widget/textcounter/formatters/CommaSeparatedDecimalFormatter.java
index 602e41c..e80095b 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/widget/textcounter/formatters/CommaSeparatedDecimalFormatter.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/textcounter/formatters/CommaSeparatedDecimalFormatter.java
@@ -1,7 +1,7 @@
-package com.yzy.supercleanmaster.widget.textcounter.formatters;
+package com.balaganovrocks.yourmasterclean.widget.textcounter.formatters;
-import com.yzy.supercleanmaster.widget.textcounter.Formatter;
+import com.balaganovrocks.yourmasterclean.widget.textcounter.Formatter;
import java.text.DecimalFormat;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/widget/textcounter/formatters/DecimalFormatter.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/textcounter/formatters/DecimalFormatter.java
similarity index 70%
rename from app/src/main/java/com/yzy/supercleanmaster/widget/textcounter/formatters/DecimalFormatter.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/widget/textcounter/formatters/DecimalFormatter.java
index 8b5ebbe..c7818b2 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/widget/textcounter/formatters/DecimalFormatter.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/textcounter/formatters/DecimalFormatter.java
@@ -1,7 +1,7 @@
-package com.yzy.supercleanmaster.widget.textcounter.formatters;
+package com.balaganovrocks.yourmasterclean.widget.textcounter.formatters;
-import com.yzy.supercleanmaster.widget.textcounter.Formatter;
+import com.balaganovrocks.yourmasterclean.widget.textcounter.Formatter;
import java.text.DecimalFormat;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/widget/textcounter/formatters/IntegerFormatter.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/textcounter/formatters/IntegerFormatter.java
similarity index 69%
rename from app/src/main/java/com/yzy/supercleanmaster/widget/textcounter/formatters/IntegerFormatter.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/widget/textcounter/formatters/IntegerFormatter.java
index 5862e2b..54383fa 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/widget/textcounter/formatters/IntegerFormatter.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/textcounter/formatters/IntegerFormatter.java
@@ -1,7 +1,7 @@
-package com.yzy.supercleanmaster.widget.textcounter.formatters;
+package com.balaganovrocks.yourmasterclean.widget.textcounter.formatters;
-import com.yzy.supercleanmaster.widget.textcounter.Formatter;
+import com.balaganovrocks.yourmasterclean.widget.textcounter.Formatter;
import java.text.NumberFormat;
import java.util.Locale;
diff --git a/app/src/main/java/com/yzy/supercleanmaster/widget/textcounter/formatters/NoFormatter.java b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/textcounter/formatters/NoFormatter.java
similarity index 63%
rename from app/src/main/java/com/yzy/supercleanmaster/widget/textcounter/formatters/NoFormatter.java
rename to app/src/main/java/com/balaganovrocks/yourmasterclean/widget/textcounter/formatters/NoFormatter.java
index 2d485cf..9f6d980 100644
--- a/app/src/main/java/com/yzy/supercleanmaster/widget/textcounter/formatters/NoFormatter.java
+++ b/app/src/main/java/com/balaganovrocks/yourmasterclean/widget/textcounter/formatters/NoFormatter.java
@@ -1,7 +1,7 @@
-package com.yzy.supercleanmaster.widget.textcounter.formatters;
+package com.balaganovrocks.yourmasterclean.widget.textcounter.formatters;
-import com.yzy.supercleanmaster.widget.textcounter.Formatter;
+import com.balaganovrocks.yourmasterclean.widget.textcounter.Formatter;
/**
* Created by prem on 10/28/14.
diff --git a/app/src/main/java/com/ikimuhendis/ldrawer/ActionBarDrawerToggle.java b/app/src/main/java/com/ikimuhendis/ldrawer/ActionBarDrawerToggle.java
index 795e686..b409929 100644
--- a/app/src/main/java/com/ikimuhendis/ldrawer/ActionBarDrawerToggle.java
+++ b/app/src/main/java/com/ikimuhendis/ldrawer/ActionBarDrawerToggle.java
@@ -13,7 +13,7 @@
import android.view.ViewGroup;
import android.widget.ImageView;
-import com.yzy.supercleanmaster.R;
+import com.balaganovrocks.yourmasterclean.R;
import java.lang.reflect.Method;
diff --git a/app/src/main/java/com/ikimuhendis/ldrawer/DrawerArrowDrawable.java b/app/src/main/java/com/ikimuhendis/ldrawer/DrawerArrowDrawable.java
index e897630..71b221d 100644
--- a/app/src/main/java/com/ikimuhendis/ldrawer/DrawerArrowDrawable.java
+++ b/app/src/main/java/com/ikimuhendis/ldrawer/DrawerArrowDrawable.java
@@ -10,7 +10,7 @@
import android.graphics.Rect;
import android.graphics.drawable.Drawable;
-import com.yzy.supercleanmaster.R;
+import com.balaganovrocks.yourmasterclean.R;
public abstract class DrawerArrowDrawable extends Drawable {
diff --git a/app/src/main/java/com/john/waveview/Wave.java b/app/src/main/java/com/john/waveview/Wave.java
index 2e4e793..6f5cf2f 100644
--- a/app/src/main/java/com/john/waveview/Wave.java
+++ b/app/src/main/java/com/john/waveview/Wave.java
@@ -8,7 +8,7 @@
import android.view.View;
import android.view.ViewGroup;
-import com.yzy.supercleanmaster.R;
+import com.balaganovrocks.yourmasterclean.R;
// y=Asin(ωx+φ)+k
diff --git a/app/src/main/java/com/john/waveview/WaveView.java b/app/src/main/java/com/john/waveview/WaveView.java
index b8bfb5b..7080a62 100644
--- a/app/src/main/java/com/john/waveview/WaveView.java
+++ b/app/src/main/java/com/john/waveview/WaveView.java
@@ -9,7 +9,7 @@
import android.view.ViewGroup;
import android.widget.LinearLayout;
-import com.yzy.supercleanmaster.R;
+import com.balaganovrocks.yourmasterclean.R;
/**
diff --git a/app/src/main/java/com/yzy/supercleanmaster/adapter/AutoStartAdapter.java b/app/src/main/java/com/yzy/supercleanmaster/adapter/AutoStartAdapter.java
deleted file mode 100644
index c45379f..0000000
--- a/app/src/main/java/com/yzy/supercleanmaster/adapter/AutoStartAdapter.java
+++ /dev/null
@@ -1,183 +0,0 @@
-package com.yzy.supercleanmaster.adapter;
-
-import android.content.Context;
-import android.os.Handler;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.BaseAdapter;
-import android.widget.ImageView;
-import android.widget.TextView;
-
-import com.yzy.supercleanmaster.R;
-import com.yzy.supercleanmaster.fragment.AutoStartFragment;
-import com.yzy.supercleanmaster.model.AutoStartInfo;
-import com.yzy.supercleanmaster.utils.ShellUtils;
-import com.yzy.supercleanmaster.utils.T;
-
-import java.util.ArrayList;
-import java.util.List;
-
-public class AutoStartAdapter extends BaseAdapter {
-
- public List mlistAppInfo;
- LayoutInflater infater = null;
- private Context mContext;
- public static List clearIds;
- private Handler mHandler;
-
- public AutoStartAdapter(Context context, List apps, Handler mHandler) {
- infater = LayoutInflater.from(context);
- mContext = context;
- clearIds = new ArrayList();
- this.mlistAppInfo = apps;
- this.mHandler = mHandler;
- }
-
- @Override
- public int getCount() {
- // TODO Auto-generated method stub
- return mlistAppInfo.size();
- }
-
- @Override
- public Object getItem(int position) {
- // TODO Auto-generated method stub
- return mlistAppInfo.get(position);
- }
-
- @Override
- public long getItemId(int position) {
- // TODO Auto-generated method stub
- return position;
- }
-
- @Override
- public View getView(int position, View convertView, ViewGroup parent) {
- ViewHolder holder = null;
- if (convertView == null) {
- convertView = infater.inflate(R.layout.listview_auto_start,
- null);
- holder = new ViewHolder();
- holder.appIcon = (ImageView) convertView
- .findViewById(R.id.app_icon);
- holder.appName = (TextView) convertView
- .findViewById(R.id.app_name);
- holder.size = (TextView) convertView
- .findViewById(R.id.app_size);
- holder.disable_switch = (TextView) convertView
- .findViewById(R.id.disable_switch);
-
- convertView.setTag(holder);
- } else {
- holder = (ViewHolder) convertView.getTag();
- }
- final AutoStartInfo item = (AutoStartInfo) getItem(position);
- if (item != null) {
- holder.appIcon.setImageDrawable(item.getIcon());
- holder.appName.setText(item.getLabel());
- if (item.isEnable()) {
- holder.disable_switch.setBackgroundResource(R.drawable.switch_on);
- holder.disable_switch.setText("已开启");
- } else {
- holder.disable_switch.setBackgroundResource(R.drawable.switch_off);
- holder.disable_switch.setText("已禁止");
- }
- // holder.size.setText(Formatter.formatShortFileSize(mContext, item.getCacheSize()));
-
- holder.disable_switch.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
-
-
- if (ShellUtils.checkRootPermission()) {
-
- if (item.isEnable()) {
-
-
- diasableApp(item);
- } else {
-
- enableApp(item);
- }
-
- } else {
-
- T.showLong(mContext, "该功能需要获取系统root权限,点击允许获取root权限");
-
- }
-
- }
- });
- holder.packageName = item.getPackageName();
- }
-
-
- return convertView;
- }
-
- private void diasableApp(AutoStartInfo item) {
- String packageReceiverList[] = item.getPackageReceiver().toString().split(";");
-
- List mSring = new ArrayList<>();
- for (int j = 0; j < packageReceiverList.length; j++) {
- String cmd = "pm disable " + packageReceiverList[j];
- //部分receiver包含$符号,需要做进一步处理,用"$"替换掉$
- cmd = cmd.replace("$", "\"" + "$" + "\"");
- //执行命令
- mSring.add(cmd);
-
- }
- ShellUtils.CommandResult mCommandResult = ShellUtils.execCommand(mSring, true, true);
-
- if (mCommandResult.result == 0) {
- T.showLong(mContext, item.getLabel() + "已禁止");
- item.setEnable(false);
- notifyDataSetChanged();
- if (mHandler != null) {
- mHandler.sendEmptyMessage(AutoStartFragment.REFRESH_BT);
- }
- } else {
- T.showLong(mContext, item.getLabel() + "禁止失败");
- }
-
- // T.showLong(mContext, mCommandResult.result + "" + mCommandResult.errorMsg + mCommandResult.successMsg);
- }
-
- private void enableApp(AutoStartInfo item) {
- String packageReceiverList[] = item.getPackageReceiver().toString().split(";");
-
- List mSring = new ArrayList<>();
- for (int j = 0; j < packageReceiverList.length; j++) {
- String cmd = "pm enable " + packageReceiverList[j];
- //部分receiver包含$符号,需要做进一步处理,用"$"替换掉$
- cmd = cmd.replace("$", "\"" + "$" + "\"");
- //执行命令
- mSring.add(cmd);
-
- }
- ShellUtils.CommandResult mCommandResult = ShellUtils.execCommand(mSring, true, true);
-
- if (mCommandResult.result == 0) {
- T.showLong(mContext, item.getLabel() + "已开启");
- item.setEnable(true);
- notifyDataSetChanged();
- if (mHandler != null) {
- mHandler.sendEmptyMessage(AutoStartFragment.REFRESH_BT);
- }
- } else {
- T.showLong(mContext, item.getLabel() + "开启失败");
- }
- // T.showLong(mContext, mCommandResult.result + "" + mCommandResult.errorMsg + mCommandResult.successMsg);
- }
-
- class ViewHolder {
- ImageView appIcon;
- TextView appName;
- TextView size;
- TextView disable_switch;
-
- String packageName;
- }
-
-}
diff --git a/app/src/main/java/com/yzy/supercleanmaster/base/BaseApplication.java b/app/src/main/java/com/yzy/supercleanmaster/base/BaseApplication.java
deleted file mode 100644
index ea6198d..0000000
--- a/app/src/main/java/com/yzy/supercleanmaster/base/BaseApplication.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.yzy.supercleanmaster.base;
-
-import android.app.Application;
-import android.content.Context;
-
-public class BaseApplication extends Application {
- private static BaseApplication mInstance;
-
-
- private Context mContext;
-
-
- // private Gson mG;
- public static BaseApplication getInstance() {
- return mInstance;
- }
-
- @Override
- public void onCreate() {
- super.onCreate();
- mInstance = this;
-
-
- MyCrashHandler myCrashHandler = MyCrashHandler.getInstance();
- myCrashHandler.init(getApplicationContext());
- Thread.currentThread().setUncaughtExceptionHandler(myCrashHandler);
- }
-
-
- @Override
- public void onLowMemory() {
- // TODO Auto-generated method stub
-
- android.os.Process.killProcess(android.os.Process.myPid());
- super.onLowMemory();
-
- }
-
-}
diff --git a/app/src/main/java/com/yzy/supercleanmaster/base/MyCrashHandler.java b/app/src/main/java/com/yzy/supercleanmaster/base/MyCrashHandler.java
deleted file mode 100644
index 5b39196..0000000
--- a/app/src/main/java/com/yzy/supercleanmaster/base/MyCrashHandler.java
+++ /dev/null
@@ -1,92 +0,0 @@
-package com.yzy.supercleanmaster.base;
-
-import android.content.Context;
-
-import java.lang.Thread.UncaughtExceptionHandler;
-
-public class MyCrashHandler implements UncaughtExceptionHandler {
- // 保证MyCrashHandler只有一个实例
- // 2.提供一个静态的程序变量
- private static MyCrashHandler myCrashHandler;
- private Context context;
-
- // 1.私有化构造方法
- private MyCrashHandler() {
-
- }
-
- // 3.暴露出来一个静态的方法 获取myCrashHandler
-
- public static synchronized MyCrashHandler getInstance() {
- if (myCrashHandler == null) {
- myCrashHandler = new MyCrashHandler();
- }
- return myCrashHandler;
- }
-
- public void init(Context context) {
- this.context = context;
- }
-
- // 程序发生异常的时候调用的方法
- // try catch
-
- public void uncaughtException(Thread thread, Throwable ex) {
- // System.out.println("出现错误啦 哈哈");
- ex.printStackTrace();
-// StringBuilder sb = new StringBuilder();
-// // 1.获取当前应用程序的版本号.
-// PackageManager pm = context.getPackageManager();
-// try {
-// PackageInfo packinfo = pm.getPackageInfo(context.getPackageName(),
-// 0);
-// sb.append("程序的版本号为" + packinfo.versionName);
-// sb.append("\n");
-//
-// // 2.获取手机的硬件信息.
-// Field[] fields = Build.class.getDeclaredFields();
-// for (int i = 0; i < fields.length; i++) {
-// // 暴力反射,获取私有的字段信息
-// fields[i].setAccessible(true);
-// String name = fields[i].getName();
-// sb.append(name + " = ");
-// String value = fields[i].get(null).toString();
-// sb.append(value);
-// sb.append("\n");
-// }
-// // 3.获取程序错误的堆栈信息 .
-// StringWriter writer = new StringWriter();
-// PrintWriter printWriter = new PrintWriter(writer);
-// ex.printStackTrace(printWriter);
-//
-// String result = writer.toString();
-// sb.append(result);
-// String time = new SimpleDateFormat("yyyy-MM-dd-HH-mm-ss").format(new Date());
-// String name ="xizi"+time+".txt";
-// String fileName=Environment.getExternalStorageDirectory()+File.separator+"xz_app"+File.separator+"log";
-//
-// File file1 =new File(fileName);
-// if(!file1.exists()){
-// file1.mkdir();
-// }
-// File file=new File(fileName,name);
-// if(!file.exists()){
-// file.createNewFile();
-// }
-// // File file = new File(Environment.getExternalStorageDirectory(),"error.log");
-// FileOutputStream fos = new FileOutputStream(file);
-// fos.write(sb.toString().getBytes());
-// fos.close();
-//
-//
-// // 4.把错误信息 提交到服务器
-//
-// } catch (Exception e) {
-// e.printStackTrace();
-// }
-
- // 完成自杀的操作
- android.os.Process.killProcess(android.os.Process.myPid());
- }
-
-}
diff --git a/app/src/main/java/com/yzy/supercleanmaster/engine/CacheInfoProvider.java b/app/src/main/java/com/yzy/supercleanmaster/engine/CacheInfoProvider.java
deleted file mode 100644
index efb6f1d..0000000
--- a/app/src/main/java/com/yzy/supercleanmaster/engine/CacheInfoProvider.java
+++ /dev/null
@@ -1,130 +0,0 @@
-package com.yzy.supercleanmaster.engine;
-
-import android.content.Context;
-import android.content.pm.ApplicationInfo;
-import android.content.pm.IPackageStatsObserver;
-import android.content.pm.PackageInfo;
-import android.content.pm.PackageManager;
-import android.content.pm.PackageStats;
-import android.graphics.drawable.Drawable;
-import android.os.Handler;
-import android.os.RemoteException;
-
-import com.yzy.supercleanmaster.model.CacheInfo;
-import com.yzy.supercleanmaster.utils.TextFormater;
-
-import java.lang.reflect.Method;
-import java.util.List;
-import java.util.Vector;
-
-
-public class CacheInfoProvider
-{
- private Handler handler;
- private PackageManager packageManager;
- private Vector cacheInfos;
- private int size = 0;
-
- public CacheInfoProvider(Handler handler, Context context)
- {
- // 拿到一个包管理器
- packageManager = context.getPackageManager();
- this.handler = handler;
- cacheInfos = new Vector();
- }
-
- public void initCacheInfos()
- {
- // 获取到所有安装了的应用程序的信息,包括那些卸载了的,但没有清除数据的应用程序
- List packageInfos = packageManager
- .getInstalledPackages(PackageManager.GET_UNINSTALLED_PACKAGES);
- size = packageInfos.size();
- for (int i = 0; i < size; i++)
- {
- PackageInfo packageInfo = packageInfos.get(i);
- CacheInfo cacheInfo = new CacheInfo();
- // 拿到包名
- String packageName = packageInfo.packageName;
- cacheInfo.setPackageName(packageName);
- // 拿到应用程序的信息
- ApplicationInfo applicationInfo = packageInfo.applicationInfo;
- // 拿到应用程序的程序名
- String name = applicationInfo.loadLabel(packageManager).toString();
- cacheInfo.setName(name);
- // 拿到应用程序的图标
- Drawable icon = applicationInfo.loadIcon(packageManager);
- cacheInfo.setIcon(icon);
-
- initDataSize(cacheInfo, i);
- }
- }
-
- /**
- * 通过AIDL的方法来获取到应用的缓存信息,getPackageSizeInfo是PackageManager里面的一个私有方法来的
- * 我们通过反射就可以调用到它的了,但是这个方法里面会传递一个IPackageStatsObserver.Stub的对象
- * 里面就可能通过AIDL来获取我们想要的信息了
- *
- * 因为这样的调用是异步的,所以当我们完成获取完这些信息之后,我们就通过handler来发送一个消息
- * 来通知我们的应用,通过getCacheInfos来获取到我们的Vector
- *
- * 为什么要用Vector呢,因为下面的方法是异步的,也就是有可能是多线程操作,所以我们就用了线程安全的Vector
- *
- * @param cacheInfo
- * @param position
- */
- private void initDataSize(final CacheInfo cacheInfo, final int position)
- {
- try
- {
- Method method = PackageManager.class.getMethod(
- "getPackageSizeInfo", new Class[] { String.class,
- IPackageStatsObserver.class });
- method.invoke(packageManager,
- new Object[] { cacheInfo.getPackageName(),
- new IPackageStatsObserver.Stub()
- {
- @Override
- public void onGetStatsCompleted(
- PackageStats pStats, boolean succeeded)
- throws RemoteException
- {
- System.out.println("onGetStatsCompleted" + position);
- long cacheSize = pStats.cacheSize;
- long codeSize = pStats.codeSize;
- long dataSize = pStats.dataSize;
-
- cacheInfo.setCacheSize(TextFormater
- .dataSizeFormat(cacheSize));
- cacheInfo.setCodeSize(TextFormater
- .dataSizeFormat(codeSize));
- cacheInfo.setDataSize(TextFormater
- .dataSizeFormat(dataSize));
-
- cacheInfos.add(cacheInfo);
-
- if (position == (size - 1))
- {
- // 当完全获取完信息之后,发送一个成功的消息
- // 1对应的就是CacheClearActivity里面的FINISH
- handler.sendEmptyMessage(1);
- }
- }
- } });
- }
- catch (Exception e)
- {
- e.printStackTrace();
- }
- }
-
- public Vector getCacheInfos()
- {
- return cacheInfos;
- }
-
- public void setCacheInfos(Vector cacheInfos)
- {
- this.cacheInfos = cacheInfos;
- }
-
-}
diff --git a/app/src/main/java/com/yzy/supercleanmaster/fragment/AutoStartFragment.java b/app/src/main/java/com/yzy/supercleanmaster/fragment/AutoStartFragment.java
deleted file mode 100644
index 489b0c0..0000000
--- a/app/src/main/java/com/yzy/supercleanmaster/fragment/AutoStartFragment.java
+++ /dev/null
@@ -1,198 +0,0 @@
-package com.yzy.supercleanmaster.fragment;
-
-import android.content.Context;
-import android.os.Bundle;
-import android.os.Handler;
-import android.os.Message;
-import android.support.annotation.Nullable;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.Button;
-import android.widget.LinearLayout;
-import android.widget.ListView;
-import android.widget.TextView;
-
-import com.yzy.supercleanmaster.R;
-import com.yzy.supercleanmaster.adapter.AutoStartAdapter;
-import com.yzy.supercleanmaster.base.BaseFragment;
-import com.yzy.supercleanmaster.model.AutoStartInfo;
-import com.yzy.supercleanmaster.utils.BootStartUtils;
-import com.yzy.supercleanmaster.utils.RootUtil;
-import com.yzy.supercleanmaster.utils.ShellUtils;
-import com.yzy.supercleanmaster.utils.T;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import butterknife.ButterKnife;
-import butterknife.InjectView;
-import butterknife.OnClick;
-
-
-public class AutoStartFragment extends BaseFragment {
-
-
- Context mContext;
- public static final int REFRESH_BT = 111;
- private static final String ARG_POSITION = "position";
- private int position; // 0:普通软件,2 系统软件
- AutoStartAdapter mAutoStartAdapter;
-
- @InjectView(R.id.listview)
- ListView listview;
-
- @InjectView(R.id.bottom_lin)
- LinearLayout bottom_lin;
-
- @InjectView(R.id.disable_button)
- Button disableButton;
- @InjectView(R.id.topText)
- TextView topText;
- List isSystemAuto = null;
- List noSystemAuto = null;
- private int canDisableCom;
-
-
- private Handler mHandler = new Handler() {
-
-
- public void handleMessage(Message msg) {
- switch (msg.what) {
- case REFRESH_BT:
- refeshButoom();
-
- break;
- }
- }
- };
-
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
-
- position = getArguments().getInt(ARG_POSITION);
- }
-
- @Override
- public View onCreateView(LayoutInflater inflater,
- @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
- // TODO Auto-generated method stub
-
- View view = inflater.inflate(R.layout.fragment_auto_start, container, false);
- ButterKnife.inject(this, view);
- mContext = getActivity();
-
- return view;
- }
-
-
- @Override
- public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
- super.onViewCreated(view, savedInstanceState);
-
- fillData();
- }
-
- @OnClick(R.id.disable_button)
- public void onClickDisable() {
- RootUtil.preparezlsu(mContext);
- disableAPP();
-
- }
-
- private void disableAPP() {
- List mSring = new ArrayList<>();
- for (AutoStartInfo auto : noSystemAuto) {
- if (auto.isEnable()) {
- String packageReceiverList[] = auto.getPackageReceiver().toString().split(";");
- for (int j = 0; j < packageReceiverList.length; j++) {
- String cmd = "pm disable " + packageReceiverList[j];
- //部分receiver包含$符号,需要做进一步处理,用"$"替换掉$
- cmd = cmd.replace("$", "\"" + "$" + "\"");
- //执行命令
- mSring.add(cmd);
- }
- }
- }
-
- ShellUtils.CommandResult mCommandResult = ShellUtils.execCommand(mSring, true, true);
- if (mCommandResult.result == 0) {
- T.showLong(mContext, "应用已经全部禁止");
- for (AutoStartInfo auto : noSystemAuto) {
- if (auto.isEnable()) {
- auto.setEnable(false);
- }
- }
- mAutoStartAdapter.notifyDataSetChanged();
- refeshButoom();
- } else {
- T.showLong(mContext, "该功能需要获取系统root权限,请允许获取root权限");
- }
- }
-
-
- private void fillData() {
-
- if (position == 0) {
- topText.setText("禁止下列软件自启,可提升运行速度");
-
- } else {
- topText.setText("禁止系统核心软件自启,将会影响手机的正常使用,请谨慎操作");
-
- }
-
- List mAutoStartInfo = BootStartUtils.fetchAutoApps(mContext);
-
- // List mAutoStartInfo = BootStartUtils.fetchInstalledApps(mContext);
- noSystemAuto = new ArrayList<>();
- isSystemAuto = new ArrayList<>();
-
- for (AutoStartInfo a : mAutoStartInfo) {
- if (a.isSystem()) {
-
- isSystemAuto.add(a);
- } else {
- noSystemAuto.add(a);
- }
- }
-
- if (position == 0) {
- mAutoStartAdapter = new AutoStartAdapter(mContext, noSystemAuto, mHandler);
- listview.setAdapter(mAutoStartAdapter);
- refeshButoom();
- } else {
-
- mAutoStartAdapter = new AutoStartAdapter(mContext, isSystemAuto, null);
- listview.setAdapter(mAutoStartAdapter);
-
- }
-
-
- }
-
- private void refeshButoom() {
- if (position == 0) {
- canDisableCom = 0;
- for (AutoStartInfo autoS : noSystemAuto) {
- if (autoS.isEnable()) {
- canDisableCom++;
- }
- }
- if (canDisableCom > 0) {
- bottom_lin.setVisibility(View.VISIBLE);
- disableButton.setText("可优化" + canDisableCom + "款");
- } else {
- bottom_lin.setVisibility(View.GONE);
- }
- }
-
- }
-
- @Override
- public void onDestroyView() {
- super.onDestroyView();
- ButterKnife.reset(this);
- }
-
-}
diff --git a/app/src/main/java/com/yzy/supercleanmaster/fragment/DeciveInfoFragment.java b/app/src/main/java/com/yzy/supercleanmaster/fragment/DeciveInfoFragment.java
deleted file mode 100644
index 4afa1ab..0000000
--- a/app/src/main/java/com/yzy/supercleanmaster/fragment/DeciveInfoFragment.java
+++ /dev/null
@@ -1,184 +0,0 @@
-package com.yzy.supercleanmaster.fragment;
-
-import android.content.Context;
-import android.graphics.Bitmap;
-import android.os.Bundle;
-import android.support.annotation.Nullable;
-import android.view.KeyEvent;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-import android.webkit.JsPromptResult;
-import android.webkit.JsResult;
-import android.webkit.WebChromeClient;
-import android.webkit.WebSettings;
-import android.webkit.WebView;
-import android.webkit.WebViewClient;
-import android.widget.ProgressBar;
-
-import com.yzy.supercleanmaster.R;
-import com.yzy.supercleanmaster.base.BaseFragment;
-
-import butterknife.ButterKnife;
-import butterknife.InjectView;
-
-
-public class DeciveInfoFragment extends BaseFragment {
-
- @InjectView(R.id.webView)
- WebView mWebView;
- @InjectView(R.id.progress_bar)
- ProgressBar mProgressBar;
- Context mContext;
- @Override
- public View onCreateView(LayoutInflater inflater,
- @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
- // TODO Auto-generated method stub
-
- View view = inflater.inflate(R.layout.fragment_device_info, container, false);
- ButterKnife.inject(this, view);
- mContext = getActivity();
-
- return view;
- }
-
-
- @Override
- public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
- super.onViewCreated(view, savedInstanceState);
-
- initWebview();
- }
-
- private void fillData() {
-
- }
-
-
- @Override
- public void onDestroyView() {
- super.onDestroyView();
- ButterKnife.reset(this);
- }
- private void initWebview() {
- // TODO Auto-generated method stub
- WebSettings webSettings = mWebView.getSettings();
- webSettings.setJavaScriptEnabled(true);
- // 设置可以访问文件
- webSettings.setAllowFileAccess(true);
- // 设置可以支持缩放
- webSettings.setSupportZoom(true);
- // 设置默认缩放方式尺寸是far
- webSettings.setDefaultZoom(WebSettings.ZoomDensity.MEDIUM);
- // 设置出现缩放工具
- webSettings.setBuiltInZoomControls(false);
- webSettings.setDefaultFontSize(20);
-
- // 访问assets目录下的文件
-
- mWebView.loadUrl("http://girl-atlas.com/");
-
- // 设置WebViewClient
- mWebView.setWebViewClient(new WebViewClient() {
- // url拦截
- @Override
- public boolean shouldOverrideUrlLoading(WebView view, String url) {
- // 使用自己的WebView组件来响应Url加载事件,而不是使用默认浏览器器加载页面
- view.loadUrl(url);
- // 相应完成返回true
- return true;
- // return super.shouldOverrideUrlLoading(view, url);
- }
-
- // 页面开始加载
- @Override
- public void onPageStarted(WebView view, String url, Bitmap favicon) {
- mProgressBar.setVisibility(View.VISIBLE);
- super.onPageStarted(view, url, favicon);
- }
-
- // 页面加载完成
- @Override
- public void onPageFinished(WebView view, String url) {
- mProgressBar.setVisibility(View.GONE);
- super.onPageFinished(view, url);
- }
-
- // WebView加载的所有资源url
- @Override
- public void onLoadResource(WebView view, String url) {
- super.onLoadResource(view, url);
- }
-
- @Override
- public void onReceivedError(WebView view, int errorCode,
- String description, String failingUrl) {
- super.onReceivedError(view, errorCode, description, failingUrl);
- }
-
- });
-
- // 设置WebChromeClient
- mWebView.setWebChromeClient(new WebChromeClient() {
- @Override
- // 处理javascript中的alert
- public boolean onJsAlert(WebView view, String url, String message,
- final JsResult result) {
- return super.onJsAlert(view, url, message, result);
- };
-
- @Override
- // 处理javascript中的confirm
- public boolean onJsConfirm(WebView view, String url,
- String message, final JsResult result) {
- return super.onJsConfirm(view, url, message, result);
- };
-
- @Override
- // 处理javascript中的prompt
- public boolean onJsPrompt(WebView view, String url, String message,
- String defaultValue, final JsPromptResult result) {
- return super.onJsPrompt(view, url, message, defaultValue,
- result);
- };
-
- // 设置网页加载的进度条
- @Override
- public void onProgressChanged(WebView view, int newProgress) {
- mProgressBar.setProgress(newProgress);
- super.onProgressChanged(view, newProgress);
- }
-
- // 设置程序的Title
- @Override
- public void onReceivedTitle(WebView view, String title) {
- super.onReceivedTitle(view, title);
- }
- });
- mWebView.setOnKeyListener(new View.OnKeyListener() {
- @Override
- public boolean onKey(View v, int keyCode, KeyEvent event) {
- if (event.getAction() == KeyEvent.ACTION_DOWN) {
- if (keyCode == KeyEvent.KEYCODE_BACK
- && mWebView.canGoBack()) { // 表示按返回键
-
- mWebView.goBack(); // 后退
-
- // webview.goForward();//前进
- return true; // 已处理
- }
- }
- return false;
- }
- });
- }
-
- public boolean canBack() {
- if (mWebView.canGoBack()) {
- mWebView.goBack();
- return false;
- }
- return true;
- }
-
-}
diff --git a/app/src/main/java/com/yzy/supercleanmaster/fragment/NavigationDrawerFragment.java b/app/src/main/java/com/yzy/supercleanmaster/fragment/NavigationDrawerFragment.java
deleted file mode 100644
index ec86329..0000000
--- a/app/src/main/java/com/yzy/supercleanmaster/fragment/NavigationDrawerFragment.java
+++ /dev/null
@@ -1,141 +0,0 @@
-package com.yzy.supercleanmaster.fragment;
-
-import android.app.ActionBar;
-import android.app.Activity;
-import android.os.Bundle;
-import android.support.annotation.Nullable;
-import android.support.v4.view.GravityCompat;
-import android.support.v4.widget.DrawerLayout;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.RadioButton;
-
-import com.yzy.supercleanmaster.R;
-import com.yzy.supercleanmaster.base.BaseFragment;
-
-import butterknife.ButterKnife;
-
-
-public class NavigationDrawerFragment extends BaseFragment {
-
- private DrawerLayout mDrawerLayout;
- private View mFragmentContainerView;
- private boolean mFromSavedInstanceState;
- private NavigationDrawerCallbacks mCallbacks;
- final int radioIds[] = {
- R.id.radio0,
- R.id.radio1,
- R.id.radio2
-
- };
- RadioButton radios[] = new RadioButton[radioIds.length];
-
- @Override
- public void onActivityCreated(Bundle savedInstanceState) {
- super.onActivityCreated(savedInstanceState);
- // Indicate that this fragment would like to influence the set of
- // actions in the action bar.
- setHasOptionsMenu(true);
- }
-
- @Override
- public View onCreateView(LayoutInflater inflater,
- @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
- // TODO Auto-generated method stub
-
- View view = inflater.inflate(R.layout.fragment_navigation_drawer,
- container, false);
- ButterKnife.inject(this, view);
- return view;
- }
-
-
- @Override
- public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
- super.onViewCreated(view, savedInstanceState);
-
- fillData();
- }
-
- private void fillData() {
-
-
- for (int i = 0; i < radioIds.length; ++i) {
- radios[i] = (RadioButton) getView().findViewById(radioIds[i]);
- radios[i].setOnClickListener(clickItem);
- }
- }
-
-
- public void setUp(int fragmentId, DrawerLayout drawerLayout) {
- mFragmentContainerView = getActivity().findViewById(fragmentId);
- mDrawerLayout = drawerLayout;
-
- mDrawerLayout.setDrawerShadow(R.drawable.drawer_shadow, GravityCompat.START);
-
-
- }
-
-
- View.OnClickListener clickItem = new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- for (int i = 0; i < radios.length; ++i) {
- if (v.equals(radios[i])) {
- selectItem(i);
- } else {
- radios[i].setChecked(false);
- }
- }
- }
- };
-
-
- private void selectItem(int position) {
-// if (mDrawerLayout != null) {
-// mDrawerLayout.closeDrawer(mFragmentContainerView);
-// }
- if (mCallbacks != null) {
- mCallbacks.onNavigationDrawerItemSelected(position);
- }
- }
-
-
- private ActionBar getActionBar() {
- return getActivity().getActionBar();
- }
-
- @Override
- public void onSaveInstanceState(Bundle outState) {
- super.onSaveInstanceState(outState);
- }
-
-
- @Override
- public void onAttach(Activity activity) {
- super.onAttach(activity);
- try {
- mCallbacks = (NavigationDrawerCallbacks) activity;
- } catch (ClassCastException e) {
- throw new ClassCastException(
- "Activity must implement NavigationDrawerCallbacks.");
- }
- }
-
- @Override
- public void onDetach() {
- super.onDetach();
- mCallbacks = null;
- }
-
- public static interface NavigationDrawerCallbacks {
- void onNavigationDrawerItemSelected(int position);
- }
-
- @Override
- public void onDestroyView() {
- super.onDestroyView();
- ButterKnife.reset(this);
- }
-}
diff --git a/app/src/main/java/com/yzy/supercleanmaster/fragment/RelaxFragment.java b/app/src/main/java/com/yzy/supercleanmaster/fragment/RelaxFragment.java
deleted file mode 100644
index 07082d5..0000000
--- a/app/src/main/java/com/yzy/supercleanmaster/fragment/RelaxFragment.java
+++ /dev/null
@@ -1,184 +0,0 @@
-package com.yzy.supercleanmaster.fragment;
-
-import android.content.Context;
-import android.graphics.Bitmap;
-import android.os.Bundle;
-import android.support.annotation.Nullable;
-import android.view.KeyEvent;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-import android.webkit.JsPromptResult;
-import android.webkit.JsResult;
-import android.webkit.WebChromeClient;
-import android.webkit.WebSettings;
-import android.webkit.WebView;
-import android.webkit.WebViewClient;
-import android.widget.ProgressBar;
-
-import com.yzy.supercleanmaster.R;
-import com.yzy.supercleanmaster.base.BaseFragment;
-
-import butterknife.ButterKnife;
-import butterknife.InjectView;
-
-
-public class RelaxFragment extends BaseFragment {
-
- @InjectView(R.id.webView)
- WebView mWebView;
- @InjectView(R.id.progress_bar)
- ProgressBar mProgressBar;
- Context mContext;
- @Override
- public View onCreateView(LayoutInflater inflater,
- @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
- // TODO Auto-generated method stub
-
- View view = inflater.inflate(R.layout.fragment_relax, container, false);
- ButterKnife.inject(this, view);
- mContext = getActivity();
-
- return view;
- }
-
-
- @Override
- public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
- super.onViewCreated(view, savedInstanceState);
-
- initWebview();
- }
-
- private void fillData() {
-
- }
-
-
- @Override
- public void onDestroyView() {
- super.onDestroyView();
- ButterKnife.reset(this);
- }
- private void initWebview() {
- // TODO Auto-generated method stub
- WebSettings webSettings = mWebView.getSettings();
- webSettings.setJavaScriptEnabled(true);
- // 设置可以访问文件
- webSettings.setAllowFileAccess(true);
- // 设置可以支持缩放
- webSettings.setSupportZoom(true);
- // 设置默认缩放方式尺寸是far
- webSettings.setDefaultZoom(WebSettings.ZoomDensity.MEDIUM);
- // 设置出现缩放工具
- webSettings.setBuiltInZoomControls(false);
- webSettings.setDefaultFontSize(20);
-
- // 访问assets目录下的文件
-
- mWebView.loadUrl("http://girl-atlas.com/");
-
- // 设置WebViewClient
- mWebView.setWebViewClient(new WebViewClient() {
- // url拦截
- @Override
- public boolean shouldOverrideUrlLoading(WebView view, String url) {
- // 使用自己的WebView组件来响应Url加载事件,而不是使用默认浏览器器加载页面
- view.loadUrl(url);
- // 相应完成返回true
- return true;
- // return super.shouldOverrideUrlLoading(view, url);
- }
-
- // 页面开始加载
- @Override
- public void onPageStarted(WebView view, String url, Bitmap favicon) {
- mProgressBar.setVisibility(View.VISIBLE);
- super.onPageStarted(view, url, favicon);
- }
-
- // 页面加载完成
- @Override
- public void onPageFinished(WebView view, String url) {
- mProgressBar.setVisibility(View.GONE);
- super.onPageFinished(view, url);
- }
-
- // WebView加载的所有资源url
- @Override
- public void onLoadResource(WebView view, String url) {
- super.onLoadResource(view, url);
- }
-
- @Override
- public void onReceivedError(WebView view, int errorCode,
- String description, String failingUrl) {
- super.onReceivedError(view, errorCode, description, failingUrl);
- }
-
- });
-
- // 设置WebChromeClient
- mWebView.setWebChromeClient(new WebChromeClient() {
- @Override
- // 处理javascript中的alert
- public boolean onJsAlert(WebView view, String url, String message,
- final JsResult result) {
- return super.onJsAlert(view, url, message, result);
- };
-
- @Override
- // 处理javascript中的confirm
- public boolean onJsConfirm(WebView view, String url,
- String message, final JsResult result) {
- return super.onJsConfirm(view, url, message, result);
- };
-
- @Override
- // 处理javascript中的prompt
- public boolean onJsPrompt(WebView view, String url, String message,
- String defaultValue, final JsPromptResult result) {
- return super.onJsPrompt(view, url, message, defaultValue,
- result);
- };
-
- // 设置网页加载的进度条
- @Override
- public void onProgressChanged(WebView view, int newProgress) {
- mProgressBar.setProgress(newProgress);
- super.onProgressChanged(view, newProgress);
- }
-
- // 设置程序的Title
- @Override
- public void onReceivedTitle(WebView view, String title) {
- super.onReceivedTitle(view, title);
- }
- });
- mWebView.setOnKeyListener(new View.OnKeyListener() {
- @Override
- public boolean onKey(View v, int keyCode, KeyEvent event) {
- if (event.getAction() == KeyEvent.ACTION_DOWN) {
- if (keyCode == KeyEvent.KEYCODE_BACK
- && mWebView.canGoBack()) { // 表示按返回键
-
- mWebView.goBack(); // 后退
-
- // webview.goForward();//前进
- return true; // 已处理
- }
- }
- return false;
- }
- });
- }
-
- public boolean canBack() {
- if (mWebView.canGoBack()) {
- mWebView.goBack();
- return false;
- }
- return true;
- }
-
-}
diff --git a/app/src/main/java/com/yzy/supercleanmaster/fragment/SettingsFragment.java b/app/src/main/java/com/yzy/supercleanmaster/fragment/SettingsFragment.java
deleted file mode 100644
index f00dcb1..0000000
--- a/app/src/main/java/com/yzy/supercleanmaster/fragment/SettingsFragment.java
+++ /dev/null
@@ -1,159 +0,0 @@
-package com.yzy.supercleanmaster.fragment;
-
-import android.app.Activity;
-import android.content.Intent;
-import android.graphics.BitmapFactory;
-import android.net.Uri;
-import android.os.Bundle;
-import android.preference.Preference;
-import android.preference.PreferenceFragment;
-
-import com.umeng.socialize.bean.RequestType;
-import com.umeng.socialize.controller.UMServiceFactory;
-import com.umeng.socialize.controller.UMSocialService;
-import com.umeng.socialize.weixin.controller.UMWXHandler;
-import com.umeng.update.UmengUpdateAgent;
-import com.umeng.update.UmengUpdateListener;
-import com.umeng.update.UpdateResponse;
-import com.yzy.supercleanmaster.R;
-import com.yzy.supercleanmaster.base.FragmentContainerActivity;
-import com.yzy.supercleanmaster.ui.AboutActivity;
-import com.yzy.supercleanmaster.utils.AppUtil;
-import com.yzy.supercleanmaster.utils.T;
-import com.yzy.supercleanmaster.utils.Utils;
-
-
-public class SettingsFragment extends PreferenceFragment implements Preference.OnPreferenceClickListener {
-
-
- public static void launch(Activity from) {
- FragmentContainerActivity.launch(from, SettingsFragment.class, null);
- }
-
- private Preference createShortCut;
- private Preference pVersion;
- private Preference pVersionDetail;
- private Preference pGithub;// Github
- private Preference pGrade;// Github
- private Preference pShare;// Github
- private Preference pAbout;// Github
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
-
-
- }
-
- @Override
- public void onActivityCreated(Bundle savedInstanceState) {
- super.onActivityCreated(savedInstanceState);
- addPreferencesFromResource(R.xml.ui_settings);
- getActivity().getActionBar().setDisplayHomeAsUpEnabled(true);
- getActivity().getActionBar().setDisplayShowHomeEnabled(false);
- getActivity().getActionBar().setTitle(R.string.title_settings);
-
- createShortCut = findPreference("createShortCut");
- createShortCut.setOnPreferenceClickListener(this);
- pVersion = findPreference("pVersion");
- pVersion.setOnPreferenceClickListener(this);
- pVersionDetail = findPreference("pVersionDetail");
- pVersionDetail.setSummary("当前版本:" + AppUtil.getVersion(getActivity()));
- pVersionDetail.setOnPreferenceClickListener(this);
-
- pGithub = findPreference("pGithub");
- pGithub.setOnPreferenceClickListener(this);
- pGrade = findPreference("pGrade");
- pGrade.setOnPreferenceClickListener(this);
- pShare = findPreference("pShare");
- pShare.setOnPreferenceClickListener(this);
- pAbout = findPreference("pAbout");
- pAbout.setOnPreferenceClickListener(this);
- initData();
- }
-
-
- @Override
- public boolean onPreferenceClick(Preference preference) {
- if ("createShortCut".equals(preference.getKey())) {
- createShortCut();
- } else if ("pVersion".equals(preference.getKey())) {
- UmengUpdateAgent.forceUpdate(getActivity());
- UmengUpdateAgent.setUpdateListener(new UmengUpdateListener() {
- @Override
- public void onUpdateReturned(int i, UpdateResponse updateResponse) {
- if (i != 0) {
- T.showLong(getActivity(), "当前版本为最新版本!");
- }
-
- }
- });
- } else if ("pVersionDetail".equals(preference.getKey())) {
- VersionFragment.launch(getActivity());
- } else if ("pGithub".equals(preference.getKey())) {
- Utils.launchBrowser(getActivity(), "https://github.com/joyoyao/superCleanMaster");
- }else if ("pGrade".equals(preference.getKey())) {
- startMarket();
- }else if ("pShare".equals(preference.getKey())) {
- shareMyApp();
- }
- else if ("pAbout".equals(preference.getKey())) {
- getActivity().startActivity(new Intent(getActivity(), AboutActivity.class));
- }
- return false;
- }
-
- private void shareMyApp() {
-
- UMSocialService mController = UMServiceFactory.getUMSocialService("com.umeng.share", RequestType.SOCIAL);
- mController.setShareContent("一键清理(开源版)一键清理手机进程,真心不错呀,推荐您使用!.");
- mController.openShare(getActivity(), false);
-
- }
-
- private void initData() {
- String appID = "wxa263da737a20300e";
- String appSecret = "381a2fab6466410c674afaa40c77c953";
-// 添加微信平台
- UMWXHandler wxHandler = new UMWXHandler(getActivity(),appID,appSecret);
- wxHandler.addToSocialSDK();
-// 添加微信朋友圈
- UMWXHandler wxCircleHandler = new UMWXHandler(getActivity(),appID,appSecret);
- wxCircleHandler.setToCircle(true);
- wxCircleHandler.addToSocialSDK();
-
-
-
- }
-
-
- private void createShortCut() {
- // TODO Auto-generated method stub
- Intent intent = new Intent();
- intent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
- intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "一键加速");
- intent.putExtra("duplicate", false);
- intent.putExtra(Intent.EXTRA_SHORTCUT_ICON, BitmapFactory.decodeResource(getResources(), R.drawable.short_cut_icon));
- Intent i = new Intent();
- i.setAction("com.yzy.shortcut");
- i.addCategory("android.intent.category.DEFAULT");
- intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, i);
- getActivity().sendBroadcast(intent);
- T.showLong(getActivity(), "“一键加速”快捷图标已创建");
-
- }
-
-
- public void startMarket() {
- Uri uri = Uri.parse(String.format("market://details?id=%s", AppUtil.getPackageInfo(getActivity()).packageName));
- if (Utils.isIntentSafe(getActivity(), uri)) {
- Intent intent = new Intent(Intent.ACTION_VIEW, uri);
- intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
- getActivity().startActivity(intent);
- }
- // 没有安装市场
- else {
- T.showLong(getActivity(),"无法打开应用市场");
-
- }
- }
-}
diff --git a/app/src/main/java/com/yzy/supercleanmaster/ui/RubbishCleanActivity.java b/app/src/main/java/com/yzy/supercleanmaster/ui/RubbishCleanActivity.java
deleted file mode 100644
index 3db3757..0000000
--- a/app/src/main/java/com/yzy/supercleanmaster/ui/RubbishCleanActivity.java
+++ /dev/null
@@ -1,302 +0,0 @@
-package com.yzy.supercleanmaster.ui;
-
-import android.annotation.TargetApi;
-import android.app.ActionBar;
-import android.content.ComponentName;
-import android.content.Context;
-import android.content.Intent;
-import android.content.ServiceConnection;
-import android.content.res.Resources;
-import android.os.Build;
-import android.os.Bundle;
-import android.os.IBinder;
-import android.support.annotation.NonNull;
-import android.text.format.Formatter;
-import android.view.MenuItem;
-import android.view.View;
-import android.view.ViewGroup;
-import android.view.Window;
-import android.view.WindowManager;
-import android.view.animation.AnimationUtils;
-import android.widget.Button;
-import android.widget.LinearLayout;
-import android.widget.ListView;
-import android.widget.RelativeLayout;
-import android.widget.TextView;
-import android.widget.Toast;
-
-import com.etiennelawlor.quickreturn.library.enums.QuickReturnType;
-import com.etiennelawlor.quickreturn.library.listeners.QuickReturnListViewOnScrollListener;
-import com.nhaarman.listviewanimations.appearance.simple.SwingBottomInAnimationAdapter;
-import com.nhaarman.listviewanimations.itemmanipulation.swipedismiss.OnDismissCallback;
-import com.yzy.supercleanmaster.R;
-import com.yzy.supercleanmaster.adapter.RublishMemoryAdapter;
-import com.yzy.supercleanmaster.base.BaseSwipeBackActivity;
-import com.yzy.supercleanmaster.model.CacheListItem;
-import com.yzy.supercleanmaster.model.StorageSize;
-import com.yzy.supercleanmaster.service.CleanerService;
-import com.yzy.supercleanmaster.utils.StorageUtil;
-import com.yzy.supercleanmaster.utils.SystemBarTintManager;
-import com.yzy.supercleanmaster.utils.UIElementsHelper;
-import com.yzy.supercleanmaster.widget.textcounter.CounterView;
-import com.yzy.supercleanmaster.widget.textcounter.formatters.DecimalFormatter;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import butterknife.InjectView;
-import butterknife.OnClick;
-
-
-public class RubbishCleanActivity extends BaseSwipeBackActivity implements OnDismissCallback, CleanerService.OnActionListener {
-
- ActionBar ab;
- protected static final int SCANING = 5;
-
- protected static final int SCAN_FINIFSH = 6;
- protected static final int PROCESS_MAX = 8;
- protected static final int PROCESS_PROCESS = 9;
-
- private static final int INITIAL_DELAY_MILLIS = 300;
- SwingBottomInAnimationAdapter swingBottomInAnimationAdapter;
- Resources res;
- int ptotal = 0;
- int pprocess = 0;
-
-
- private CleanerService mCleanerService;
-
- private boolean mAlreadyScanned = false;
- private boolean mAlreadyCleaned = false;
-
- @InjectView(R.id.listview)
- ListView mListView;
-
- @InjectView(R.id.empty)
- TextView mEmptyView;
-
- @InjectView(R.id.header)
- RelativeLayout header;
-
-
- @InjectView(R.id.textCounter)
- CounterView textCounter;
- @InjectView(R.id.sufix)
- TextView sufix;
-
- @InjectView(R.id.progressBar)
- View mProgressBar;
- @InjectView(R.id.progressBarText)
- TextView mProgressBarText;
-
- RublishMemoryAdapter rublishMemoryAdapter;
-
- List mCacheListItem = new ArrayList<>();
-
- @InjectView(R.id.bottom_lin)
- LinearLayout bottom_lin;
-
- @InjectView(R.id.clear_button)
- Button clearButton;
-
- private ServiceConnection mServiceConnection = new ServiceConnection() {
- @Override
- public void onServiceConnected(ComponentName name, IBinder service) {
- mCleanerService = ((CleanerService.CleanerServiceBinder) service).getService();
- mCleanerService.setOnActionListener(RubbishCleanActivity.this);
-
- // updateStorageUsage();
-
- if (!mCleanerService.isScanning() && !mAlreadyScanned) {
- mCleanerService.scanCache();
- }
- }
-
- @Override
- public void onServiceDisconnected(ComponentName name) {
- mCleanerService.setOnActionListener(null);
- mCleanerService = null;
- }
- };
-
-
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_rublish_clean);
- getActionBar().setDisplayHomeAsUpEnabled(true);
- // applyKitKatTranslucency();
-
-// StikkyHeaderBuilder.stickTo(mListView).setHeader(header)
-// .minHeightHeaderPixel(0).build();
- res = getResources();
-
-
- int footerHeight = mContext.getResources().getDimensionPixelSize(R.dimen.footer_height);
-
- mListView.setEmptyView(mEmptyView);
- rublishMemoryAdapter = new RublishMemoryAdapter(mContext, mCacheListItem);
- mListView.setAdapter(rublishMemoryAdapter);
- mListView.setOnItemClickListener(rublishMemoryAdapter);
- mListView.setOnScrollListener(new QuickReturnListViewOnScrollListener(QuickReturnType.FOOTER, null, 0, bottom_lin, footerHeight));
- bindService(new Intent(mContext, CleanerService.class),
- mServiceConnection, Context.BIND_AUTO_CREATE);
- }
-
- @Override
- public boolean onOptionsItemSelected(MenuItem item) {
- // TODO Auto-generated method stub
- if (item.getItemId() == android.R.id.home) {
- finish();
- return true;
- }
- return super.onOptionsItemSelected(item);
- }
-
- @Override
- public void onDismiss(@NonNull ViewGroup viewGroup, @NonNull int[] ints) {
-
- }
-
- @Override
- public void onScanStarted(Context context) {
- mProgressBarText.setText(R.string.scanning);
- showProgressBar(true);
- }
-
- @Override
- public void onScanProgressUpdated(Context context, int current, int max) {
- mProgressBarText.setText(getString(R.string.scanning_m_of_n, current, max));
-
- }
-
- @Override
- public void onScanCompleted(Context context, List apps) {
- showProgressBar(false);
- mCacheListItem.clear();
- mCacheListItem.addAll(apps);
- rublishMemoryAdapter.notifyDataSetChanged();
- header.setVisibility(View.GONE);
- if (apps.size() > 0) {
- header.setVisibility(View.VISIBLE);
- bottom_lin.setVisibility(View.VISIBLE);
-
- long medMemory = mCleanerService != null ? mCleanerService.getCacheSize() : 0;
-
- StorageSize mStorageSize = StorageUtil.convertStorageSize(medMemory);
- textCounter.setAutoFormat(false);
- textCounter.setFormatter(new DecimalFormatter());
- textCounter.setAutoStart(false);
- textCounter.setStartValue(0f);
- textCounter.setEndValue(mStorageSize.value);
- textCounter.setIncrement(5f); // the amount the number increments at each time interval
- textCounter.setTimeInterval(50); // the time interval (ms) at which the text changes
- sufix.setText(mStorageSize.suffix);
- // textCounter.setSuffix(mStorageSize.suffix);
- textCounter.start();
- } else {
- header.setVisibility(View.GONE);
- bottom_lin.setVisibility(View.GONE);
- }
-
- if (!mAlreadyScanned) {
- mAlreadyScanned = true;
-
- }
-
-
- }
-
- @Override
- public void onCleanStarted(Context context) {
- if (isProgressBarVisible()) {
- showProgressBar(false);
- }
-
- if (!RubbishCleanActivity.this.isFinishing()) {
- showDialogLoading();
- }
- }
-
- @Override
- public void onCleanCompleted(Context context, long cacheSize) {
- dismissDialogLoading();
- Toast.makeText(context, context.getString(R.string.cleaned, Formatter.formatShortFileSize(
- mContext, cacheSize)), Toast.LENGTH_LONG).show();
- header.setVisibility(View.GONE);
- bottom_lin.setVisibility(View.GONE);
- mCacheListItem.clear();
- rublishMemoryAdapter.notifyDataSetChanged();
- }
-
-
- /**
- * Apply KitKat specific translucency.
- */
- private void applyKitKatTranslucency() {
-
- // KitKat translucent navigation/status bar.
- if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
- setTranslucentStatus(true);
- SystemBarTintManager mTintManager = new SystemBarTintManager(this);
- mTintManager.setStatusBarTintEnabled(true);
- mTintManager.setNavigationBarTintEnabled(true);
- // mTintManager.setTintColor(0xF00099CC);
-
- mTintManager.setTintDrawable(UIElementsHelper
- .getGeneralActionBarBackground(this));
-
- getActionBar().setBackgroundDrawable(
- UIElementsHelper.getGeneralActionBarBackground(this));
-
- }
-
- }
-
-
- @OnClick(R.id.clear_button)
- public void onClickClear() {
-
- if (mCleanerService != null && !mCleanerService.isScanning() &&
- !mCleanerService.isCleaning() && mCleanerService.getCacheSize() > 0) {
- mAlreadyCleaned = false;
-
- mCleanerService.cleanCache();
- }
- }
-
-
- @TargetApi(19)
- private void setTranslucentStatus(boolean on) {
- Window win = getWindow();
- WindowManager.LayoutParams winParams = win.getAttributes();
- final int bits = WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS;
- if (on) {
- winParams.flags |= bits;
- } else {
- winParams.flags &= ~bits;
- }
- win.setAttributes(winParams);
- }
-
-
- private boolean isProgressBarVisible() {
- return mProgressBar.getVisibility() == View.VISIBLE;
- }
-
- private void showProgressBar(boolean show) {
- if (show) {
- mProgressBar.setVisibility(View.VISIBLE);
- } else {
- mProgressBar.startAnimation(AnimationUtils.loadAnimation(
- mContext, android.R.anim.fade_out));
- mProgressBar.setVisibility(View.GONE);
- }
- }
-
- public void onDestroy() {
- unbindService(mServiceConnection);
- super.onDestroy();
- }
-
-}
diff --git a/app/src/main/java/com/yzy/supercleanmaster/ui/SplishActivity.java b/app/src/main/java/com/yzy/supercleanmaster/ui/SplishActivity.java
deleted file mode 100644
index 04e32f5..0000000
--- a/app/src/main/java/com/yzy/supercleanmaster/ui/SplishActivity.java
+++ /dev/null
@@ -1,137 +0,0 @@
-package com.yzy.supercleanmaster.ui;
-
-import android.content.Intent;
-import android.graphics.BitmapFactory;
-import android.os.Bundle;
-import android.view.animation.Animation;
-import android.view.animation.Animation.AnimationListener;
-import android.view.animation.AnimationUtils;
-import android.widget.ImageView;
-
-import com.yzy.supercleanmaster.R;
-import com.yzy.supercleanmaster.base.BaseActivity;
-import com.yzy.supercleanmaster.service.CleanerService;
-import com.yzy.supercleanmaster.service.CoreService;
-import com.yzy.supercleanmaster.utils.SharedPreferencesUtils;
-
-import java.util.Random;
-
-
-public class SplishActivity extends BaseActivity {
-
- /**
- * 三个切换的动画
- */
- private Animation mFadeIn;
- private Animation mFadeInScale;
- private Animation mFadeOut;
-
- // @InjectView(R.id.image)
- ImageView mImageView;
-
- public static final String ACTION_INSTALL_SHORTCUT = "com.android.launcher.action.INSTALL_SHORTCUT";
-
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_splish);
- mImageView = (ImageView) findViewById(R.id.image);
- int index = new Random().nextInt(2);
- if (index == 1) {
- mImageView.setImageResource(R.drawable.entrance3);
- } else {
- mImageView.setImageResource(R.drawable.entrance2);
- }
- startService(new Intent(this, CoreService.class));
- startService(new Intent(this, CleanerService.class));
-
-
- if (!SharedPreferencesUtils.isShortCut(mContext)) {
- createShortCut();
- }
-
- initAnim();
- setListener();
- }
-
- private void createShortCut() {
- // TODO Auto-generated method stub
- Intent intent = new Intent();
- intent.setAction("com.android.launcher.action.INSTALL_SHORTCUT");
- intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, "一键加速");
- intent.putExtra("duplicate", false);
- intent.putExtra(Intent.EXTRA_SHORTCUT_ICON, BitmapFactory.decodeResource(getResources(), R.drawable.short_cut_icon));
- Intent i = new Intent();
- i.setAction("com.yzy.shortcut");
- i.addCategory("android.intent.category.DEFAULT");
- intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, i);
- sendBroadcast(intent);
- SharedPreferencesUtils.setIsShortCut(mContext, true);
- }
-
- private void initAnim() {
- mFadeIn = AnimationUtils.loadAnimation(this, R.anim.welcome_fade_in);
- mFadeIn.setDuration(500);
- mFadeInScale = AnimationUtils.loadAnimation(this,
- R.anim.welcome_fade_in_scale);
- mFadeInScale.setDuration(2000);
- mFadeOut = AnimationUtils.loadAnimation(this, R.anim.welcome_fade_out);
- mFadeOut.setDuration(500);
- mImageView.startAnimation(mFadeIn);
- }
-
-
- /**
- * 监听事件
- */
- public void setListener() {
- /**
- * 动画切换原理:开始时是用第一个渐现动画,当第一个动画结束时开始第二个放大动画,当第二个动画结束时调用第三个渐隐动画,
- * 第三个动画结束时修改显示的内容并且重新调用第一个动画,从而达到循环效果
- */
- mFadeIn.setAnimationListener(new AnimationListener() {
-
- public void onAnimationStart(Animation animation) {
-
- }
-
- public void onAnimationRepeat(Animation animation) {
-
- }
-
- public void onAnimationEnd(Animation animation) {
- mImageView.startAnimation(mFadeInScale);
- }
- });
- mFadeInScale.setAnimationListener(new AnimationListener() {
-
- public void onAnimationStart(Animation animation) {
-
- }
-
- public void onAnimationRepeat(Animation animation) {
-
- }
-
- public void onAnimationEnd(Animation animation) {
- startActivity(MainActivity.class);
- finish();
- // mImageView.startAnimation(mFadeOut);
- }
- });
- mFadeOut.setAnimationListener(new AnimationListener() {
-
- public void onAnimationStart(Animation animation) {
-
- }
-
- public void onAnimationRepeat(Animation animation) {
-
- }
-
- public void onAnimationEnd(Animation animation) {
- // startActivity(MainActivity.class);
- }
- });
- }
-}
diff --git a/app/src/main/res/drawable-xhdpi/app_icon.png b/app/src/main/res/drawable-xhdpi/app_icon.png
index d3079f1..69e19d7 100644
Binary files a/app/src/main/res/drawable-xhdpi/app_icon.png and b/app/src/main/res/drawable-xhdpi/app_icon.png differ
diff --git a/app/src/main/res/drawable-xhdpi/back_for_rate.png b/app/src/main/res/drawable-xhdpi/back_for_rate.png
new file mode 100644
index 0000000..d043a92
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/back_for_rate.png differ
diff --git a/app/src/main/res/drawable-xhdpi/background.png b/app/src/main/res/drawable-xhdpi/background.png
new file mode 100644
index 0000000..3f66a26
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/background.png differ
diff --git a/app/src/main/res/drawable-xhdpi/black_arrow.png b/app/src/main/res/drawable-xhdpi/black_arrow.png
new file mode 100644
index 0000000..b3651e2
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/black_arrow.png differ
diff --git a/app/src/main/res/drawable-xhdpi/card_icon_autorun.png b/app/src/main/res/drawable-xhdpi/card_icon_autorun.png
index 8677979..f69170e 100644
Binary files a/app/src/main/res/drawable-xhdpi/card_icon_autorun.png and b/app/src/main/res/drawable-xhdpi/card_icon_autorun.png differ
diff --git a/app/src/main/res/drawable-xhdpi/card_icon_media.png b/app/src/main/res/drawable-xhdpi/card_icon_media.png
index 851e533..1cd963d 100644
Binary files a/app/src/main/res/drawable-xhdpi/card_icon_media.png and b/app/src/main/res/drawable-xhdpi/card_icon_media.png differ
diff --git a/app/src/main/res/drawable-xhdpi/card_icon_speedup.png b/app/src/main/res/drawable-xhdpi/card_icon_speedup.png
index 21eaaef..c5b6e33 100644
Binary files a/app/src/main/res/drawable-xhdpi/card_icon_speedup.png and b/app/src/main/res/drawable-xhdpi/card_icon_speedup.png differ
diff --git a/app/src/main/res/drawable-xhdpi/card_icon_trash.png b/app/src/main/res/drawable-xhdpi/card_icon_trash.png
index 595fa39..8ec2483 100644
Binary files a/app/src/main/res/drawable-xhdpi/card_icon_trash.png and b/app/src/main/res/drawable-xhdpi/card_icon_trash.png differ
diff --git a/app/src/main/res/drawable-xhdpi/ellipse.png b/app/src/main/res/drawable-xhdpi/ellipse.png
new file mode 100644
index 0000000..5827a80
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/ellipse.png differ
diff --git a/app/src/main/res/drawable-xhdpi/exit.png b/app/src/main/res/drawable-xhdpi/exit.png
new file mode 100644
index 0000000..b8546c1
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/exit.png differ
diff --git a/app/src/main/res/drawable-xhdpi/goto_battey_saving.png b/app/src/main/res/drawable-xhdpi/goto_battey_saving.png
new file mode 100644
index 0000000..0545975
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/goto_battey_saving.png differ
diff --git a/app/src/main/res/drawable-xhdpi/goto_memory_clean.png b/app/src/main/res/drawable-xhdpi/goto_memory_clean.png
new file mode 100644
index 0000000..ca235e8
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/goto_memory_clean.png differ
diff --git a/app/src/main/res/drawable-xhdpi/goto_rate_app.png b/app/src/main/res/drawable-xhdpi/goto_rate_app.png
new file mode 100644
index 0000000..64e0b53
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/goto_rate_app.png differ
diff --git a/app/src/main/res/drawable-xhdpi/icon_memory_clean.png b/app/src/main/res/drawable-xhdpi/icon_memory_clean.png
new file mode 100644
index 0000000..2fc3df9
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/icon_memory_clean.png differ
diff --git a/app/src/main/res/drawable-xhdpi/icon_rate.png b/app/src/main/res/drawable-xhdpi/icon_rate.png
new file mode 100644
index 0000000..70d6f4c
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/icon_rate.png differ
diff --git a/app/src/main/res/drawable-xhdpi/icon_saving_battery.png b/app/src/main/res/drawable-xhdpi/icon_saving_battery.png
new file mode 100644
index 0000000..8651092
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/icon_saving_battery.png differ
diff --git a/app/src/main/res/drawable-xhdpi/line.png b/app/src/main/res/drawable-xhdpi/line.png
new file mode 100644
index 0000000..56e6595
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/line.png differ
diff --git a/app/src/main/res/drawable-xhdpi/no_exit.png b/app/src/main/res/drawable-xhdpi/no_exit.png
new file mode 100644
index 0000000..b8546c1
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/no_exit.png differ
diff --git a/app/src/main/res/drawable-xhdpi/settings.png b/app/src/main/res/drawable-xhdpi/settings.png
new file mode 100644
index 0000000..d393ce6
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/settings.png differ
diff --git a/app/src/main/res/drawable-xhdpi/start.png b/app/src/main/res/drawable-xhdpi/start.png
new file mode 100644
index 0000000..53ab1e9
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/start.png differ
diff --git a/app/src/main/res/drawable-xhdpi/vect.png b/app/src/main/res/drawable-xhdpi/vect.png
new file mode 100644
index 0000000..a80fe59
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/vect.png differ
diff --git a/app/src/main/res/drawable-xhdpi/whight_arrow.png b/app/src/main/res/drawable-xhdpi/whight_arrow.png
new file mode 100644
index 0000000..821e6f4
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/whight_arrow.png differ
diff --git a/app/src/main/res/drawable/app_icon.png b/app/src/main/res/drawable/app_icon.png
new file mode 100644
index 0000000..69e19d7
Binary files /dev/null and b/app/src/main/res/drawable/app_icon.png differ
diff --git a/app/src/main/res/layout/about.xml b/app/src/main/res/layout/about.xml
index 11dd8ef..fc044b3 100644
--- a/app/src/main/res/layout/about.xml
+++ b/app/src/main/res/layout/about.xml
@@ -72,7 +72,7 @@
android:layout_centerHorizontal="true"
android:layout_marginTop="3.0dip"
android:includeFontPadding="false"
- android:text="V1.05" />
+ android:text="V1.00" />
@@ -115,7 +115,7 @@
android:paddingLeft="10.0dip"
android:paddingRight="10.0dip"
android:singleLine="true"
- android:text="作者:"
+ android:text="Автор:"
android:textSize="15sp" />
@@ -141,35 +141,6 @@
android:focusable="true"
android:orientation="horizontal">
-
-
-
diff --git a/app/src/main/res/layout/activity_autostart_manage.xml b/app/src/main/res/layout/activity_autostart_manage.xml
index 74e3fe1..5c9f9c5 100644
--- a/app/src/main/res/layout/activity_autostart_manage.xml
+++ b/app/src/main/res/layout/activity_autostart_manage.xml
@@ -4,7 +4,7 @@
android:layout_width="match_parent"
android:orientation="vertical"
android:layout_height="match_parent">
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/layout/activity_change_language.xml b/app/src/main/res/layout/activity_change_language.xml
new file mode 100644
index 0000000..9779aab
--- /dev/null
+++ b/app/src/main/res/layout/activity_change_language.xml
@@ -0,0 +1,90 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml
index 20711c6..143e966 100644
--- a/app/src/main/res/layout/activity_main.xml
+++ b/app/src/main/res/layout/activity_main.xml
@@ -39,7 +39,7 @@
-
@@ -109,7 +109,7 @@
android:textSize="@dimen/text_size_large"
android:layout_width="match_parent"
android:gravity="center"
- android:text="一键清理"
+ android:text="@string/Speed_up"
android:layout_height="wrap_content" />
diff --git a/app/src/main/res/layout/activity_result.xml b/app/src/main/res/layout/activity_result.xml
new file mode 100644
index 0000000..c1fb11d
--- /dev/null
+++ b/app/src/main/res/layout/activity_result.xml
@@ -0,0 +1,279 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_rublish_clean.xml b/app/src/main/res/layout/activity_rublish_clean.xml
index 0dcda6f..70e37e5 100644
--- a/app/src/main/res/layout/activity_rublish_clean.xml
+++ b/app/src/main/res/layout/activity_rublish_clean.xml
@@ -25,7 +25,7 @@
android:layout_centerInParent="true"
android:layout_height="wrap_content">
-
@@ -84,7 +84,7 @@
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center"
- android:text="@string/empty_cache"
+ android:text="@string/Congratulations_Memory_cleaned"
android:textAppearance="?android:attr/textAppearanceLarge" />
+ android:text="@string/Speed_up"
+ android:textColor="@color/white"
+ android:textSize="@dimen/text_size_large" />
diff --git a/app/src/main/res/layout/activity_software_manage.xml b/app/src/main/res/layout/activity_software_manage.xml
index 74e3fe1..5c9f9c5 100644
--- a/app/src/main/res/layout/activity_software_manage.xml
+++ b/app/src/main/res/layout/activity_software_manage.xml
@@ -4,7 +4,7 @@
android:layout_width="match_parent"
android:orientation="vertical"
android:layout_height="match_parent">
-
+ android:background="#2B78E4">
-
-
-
-
+
-
+
-
+
+
+ android:layout_centerHorizontal="true"
+ android:layout_marginBottom="26dp"
+ android:text="@ 2018 Your Master Cleaner"
+ android:textColor="#b3ffffff" />
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/exit.xml b/app/src/main/res/layout/exit.xml
new file mode 100644
index 0000000..ff66909
--- /dev/null
+++ b/app/src/main/res/layout/exit.xml
@@ -0,0 +1,38 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_auto_start.xml b/app/src/main/res/layout/fragment_auto_start.xml
index dfc304b..7ee8142 100644
--- a/app/src/main/res/layout/fragment_auto_start.xml
+++ b/app/src/main/res/layout/fragment_auto_start.xml
@@ -13,7 +13,7 @@
diff --git a/app/src/main/res/layout/fragment_device_info.xml b/app/src/main/res/layout/fragment_device_info.xml
index 8fcd75d..b7a16af 100644
--- a/app/src/main/res/layout/fragment_device_info.xml
+++ b/app/src/main/res/layout/fragment_device_info.xml
@@ -17,9 +17,6 @@
android:progressDrawable="@drawable/progress_horizontal_img"
android:visibility="gone" />
-
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_main.xml b/app/src/main/res/layout/fragment_main.xml
index b8ce7f7..7cfa306 100644
--- a/app/src/main/res/layout/fragment_main.xml
+++ b/app/src/main/res/layout/fragment_main.xml
@@ -7,66 +7,79 @@
+ android:layout_height="88dp"
+ android:layout_weight="0.3"
+ android:background="#E5E5E5">
+ android:layout_width="335dp"
+ android:layout_height="177dp"
+ android:layout_alignParentTop="true"
+ android:layout_centerHorizontal="true">
-
+ custom:arc_text_color="#000000"
+ custom:arc_text_size="30dp" />
+ android:layout_centerHorizontal="true"
+ android:layout_marginBottom="49dp"
+ android:text="20/30"
+ android:textColor="#000000"
+ android:textSize="8dip" />
-
+ custom:arc_text_color="#000000"
+ custom:arc_text_size="30dip" />
+
+
+ android:background="#000000"
+ android:visibility="gone">
+
-
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_navigation_drawer.xml b/app/src/main/res/layout/fragment_navigation_drawer.xml
index 41fc098..3153c1d 100644
--- a/app/src/main/res/layout/fragment_navigation_drawer.xml
+++ b/app/src/main/res/layout/fragment_navigation_drawer.xml
@@ -3,7 +3,7 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#f8ffffff"
- tools:context=".NavigationDrawerFragment_">
+ tools:context="com.balaganovrocks.yourmasterclean.fragment.NavigationDrawerFragment">
-
-
-
-
diff --git a/app/src/main/res/layout/fragment_relax.xml b/app/src/main/res/layout/fragment_relax.xml
index 8fcd75d..b7a16af 100644
--- a/app/src/main/res/layout/fragment_relax.xml
+++ b/app/src/main/res/layout/fragment_relax.xml
@@ -17,9 +17,6 @@
android:progressDrawable="@drawable/progress_horizontal_img"
android:visibility="gone" />
-
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_software.xml b/app/src/main/res/layout/fragment_software.xml
index f24435f..70baf4e 100644
--- a/app/src/main/res/layout/fragment_software.xml
+++ b/app/src/main/res/layout/fragment_software.xml
@@ -13,7 +13,7 @@
-
-
-
-
-
-
-
-
+
+
+
+
-
-
+
+
+
+
+
-
-
-
+ android:gravity="center"
+ card:card_image="@drawable/card_icon_speedup"
+ card:card_name="@string/Speed_up_your_phone" />
+
+
-
+ android:layout_weight="1.0">
+
+
+
+
+
-
+ android:layout_centerInParent="true"
+ android:gravity="center"
+ card:card_image="@drawable/card_icon_media"
+ card:card_name="@string/app_software_manage" />
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/listview_auto_start.xml b/app/src/main/res/layout/listview_auto_start.xml
index 2214617..d30dce9 100644
--- a/app/src/main/res/layout/listview_auto_start.xml
+++ b/app/src/main/res/layout/listview_auto_start.xml
@@ -42,7 +42,7 @@
android:textAppearance="@style/TextAppearance.AppCompat.Body1"
android:textColor="?android:attr/textColorSecondary"
android:textAlignment="viewStart"
- android:text="开机/后台自启"
+ android:text="Самозапуск загрузки / фона"
android:layout_gravity="start">
diff --git a/app/src/main/res/layout/listview_battery_saving.xml b/app/src/main/res/layout/listview_battery_saving.xml
new file mode 100644
index 0000000..caf5d94
--- /dev/null
+++ b/app/src/main/res/layout/listview_battery_saving.xml
@@ -0,0 +1,45 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/layout/listview_software.xml b/app/src/main/res/layout/listview_software.xml
index 6a9f2c8..62192ca 100644
--- a/app/src/main/res/layout/listview_software.xml
+++ b/app/src/main/res/layout/listview_software.xml
@@ -43,13 +43,13 @@
android:textAppearance="@style/TextAppearance.AppCompat.Body1"
android:textColor="?android:attr/textColorSecondary"
android:textAlignment="viewStart"
- android:text="开机/后台自启"
+ android:text="Самозапуск загрузки / фона"
android:layout_gravity="start">
-
-
+
diff --git a/app/src/main/res/layout/notification.xml b/app/src/main/res/layout/notification.xml
new file mode 100644
index 0000000..5e3ed56
--- /dev/null
+++ b/app/src/main/res/layout/notification.xml
@@ -0,0 +1,18 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/privacy_policy.xml b/app/src/main/res/layout/privacy_policy.xml
new file mode 100644
index 0000000..07a38f9
--- /dev/null
+++ b/app/src/main/res/layout/privacy_policy.xml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/settings.xml b/app/src/main/res/layout/settings.xml
new file mode 100644
index 0000000..d390967
--- /dev/null
+++ b/app/src/main/res/layout/settings.xml
@@ -0,0 +1,139 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/swipeback_layout.xml b/app/src/main/res/layout/swipeback_layout.xml
index 9d04745..6f8bed7 100644
--- a/app/src/main/res/layout/swipeback_layout.xml
+++ b/app/src/main/res/layout/swipeback_layout.xml
@@ -1,5 +1,5 @@
-
diff --git a/app/src/main/res/layout/tb_munion_adview.xml b/app/src/main/res/layout/tb_munion_adview.xml
index 4b89fb7..fb89efc 100644
--- a/app/src/main/res/layout/tb_munion_adview.xml
+++ b/app/src/main/res/layout/tb_munion_adview.xml
@@ -14,7 +14,7 @@
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
- android:text="精品应用推荐下载"
+ android:text="Бутик-приложение рекомендуется скачать"
android:textColor="#000"
android:textSize="16sp" />
diff --git a/app/src/main/res/layout/umeng_bak_platform_selector_dialog.xml b/app/src/main/res/layout/umeng_bak_platform_selector_dialog.xml
index e94d668..9fc4af7 100644
--- a/app/src/main/res/layout/umeng_bak_platform_selector_dialog.xml
+++ b/app/src/main/res/layout/umeng_bak_platform_selector_dialog.xml
@@ -20,7 +20,7 @@
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:paddingLeft="26dp"
- android:text="分享到"
+ android:text="Поделиться"
android:textColor="#84898f"
android:textSize="16sp" />
diff --git a/app/src/main/res/layout/umeng_socialize_at_view.xml b/app/src/main/res/layout/umeng_socialize_at_view.xml
index 5ac7545..2310928 100644
--- a/app/src/main/res/layout/umeng_socialize_at_view.xml
+++ b/app/src/main/res/layout/umeng_socialize_at_view.xml
@@ -18,15 +18,6 @@
android:layout_height="50dp"
android:id="@+id/umeng_socialize_line_serach"
android:background="#C4C4C4">
-
-
-
@@ -39,7 +39,7 @@
android:layout_width="fill_parent"
android:layout_height="38dp"
android:background="@drawable/umeng_socialize_button_white_blue"
- android:text="腾讯微博"
+ android:text="Tencent Weibo"
android:textColor="#000000"
android:textSize="14sp" />
@@ -49,7 +49,7 @@
android:layout_height="38dp"
android:layout_marginTop="5dp"
android:background="@drawable/umeng_socialize_button_white_blue"
- android:text="新浪微博"
+ android:text="Сина Вейбо"
android:textColor="#000000"
android:textSize="14sp" />
@@ -59,7 +59,7 @@
android:layout_height="38dp"
android:layout_marginTop="5dp"
android:background="@drawable/umeng_socialize_button_white_blue"
- android:text="人人网"
+ android:text="Renren"
android:textColor="#000000"
android:textSize="14sp" />
@@ -69,7 +69,7 @@
android:layout_height="38dp"
android:layout_marginTop="5dp"
android:background="@drawable/umeng_socialize_button_white_blue"
- android:text="豆瓣"
+ android:text="жеруха"
android:textColor="#000000"
android:textSize="14sp" />
@@ -79,7 +79,7 @@
android:layout_height="38dp"
android:layout_marginTop="5dp"
android:background="@drawable/umeng_socialize_button_white_blue"
- android:text="匿名评论 "
+ android:text="Анонимный комментарий "
android:textColor="#000000"
android:textSize="14sp" />
@@ -89,7 +89,7 @@
android:layout_height="38dp"
android:layout_marginTop="5dp"
android:background="@drawable/umeng_socialize_button_grey_blue"
- android:text="取消"
+ android:text="отменен"
android:textColor="#000000"
android:textSize="14sp" />
diff --git a/app/src/main/res/layout/umeng_socialize_failed_load_page.xml b/app/src/main/res/layout/umeng_socialize_failed_load_page.xml
index 58df238..1723da2 100644
--- a/app/src/main/res/layout/umeng_socialize_failed_load_page.xml
+++ b/app/src/main/res/layout/umeng_socialize_failed_load_page.xml
@@ -7,7 +7,7 @@
-
+
diff --git a/app/src/main/res/menu/main.xml b/app/src/main/res/menu/main.xml
index 4f2a0cb..46b76ec 100644
--- a/app/src/main/res/menu/main.xml
+++ b/app/src/main/res/menu/main.xml
@@ -1,6 +1,6 @@
+ tools:context="com.balaganovrocks.yourmasterclean.ui.MainActivity" >
-
-
项目V1.0正式发布!
- 代码正式开源!
+ Проект V1.0 официально выпущен!
+ Код официально с открытым исходным кодом!
\ No newline at end of file
diff --git a/app/src/main/res/values-en/strings.xml b/app/src/main/res/values-en/strings.xml
new file mode 100644
index 0000000..74c642b
--- /dev/null
+++ b/app/src/main/res/values-en/strings.xml
@@ -0,0 +1,128 @@
+
+
+
+ Your Master Cleaner
+ Your Master Cleaner
+ Settings
+ drawer_open
+ drawer_close
+ Open navigation drawer
+ Close navigation drawer
+ Memory clean
+ Rubish clean
+ Remove Apps
+ Hybernate selected apps.
+ Start
+ RAM
+ Attention! Deleting system apps may cause problems in your Android functionality!
+ Privacy Policy
+ Speed up your phone
+ Speed up your phone
+ Remove Apps
+ Settings
+ Language
+ Boost
+ Cleaned
+ Storage
+ Press "Back" again to exit
+ User Apps
+ System Apps
+ Remove
+ Apps installed
+ Exit
+ May be cleaned
+ Remove apps
+ Yes, close app
+ No continue
+ Hybernate apps.
+ Hybernate selected apps.
+ Rate this app
+ Your support is our best motivation!
+ Please rate us
+ Your Android can work faster. Optimize its speed.
+ Check
+ Boost battery live in one tap!
+ Save Battery
+ Speed up!
+ Delete
+ Congratulations! Memory cleaned
+ Scanning
+ SCAN FOR JUNK
+ Storage
+ Clean, speed up and optimize your Android!
+ Clean rubish(%1$s )
+ Congratulations! Memory cleaned!
+ Congratulations! You have saved battery power!
+ Scanning ...
+ Scanning %1$d/%2$d
+ %1$s apps installed.%2$s MB storage used.
+
+Privacy Policy
+Effective date: September 26, 2018
+Your Master Cleaner ("us", "we", or "our") operates the website and the Your Master Cleaner mobile application (the "Service").
+This page informs you of our policies regarding the collection, use, and disclosure of personal data when you use our Service and the choices you have associated with that data. Our Privacy Policy for Your Master Cleaner is managed through Free Privacy Policy.
+We use your data to provide and improve the Service. By using the Service, you agree to the collection and use of information in accordance with this policy. Unless otherwise defined in this Privacy Policy, terms used in this Privacy Policy have the same meanings as in our Terms and Conditions.
+Information Collection And Use
+We collect several different types of information for various purposes to provide and improve our Service to you.
+Types of Data Collected
+Personal Data
+While using our Service, we may ask you to provide us with certain personally identifiable information that can be used to contact or identify you ("Personal Data"). Personally identifiable information may include, but is not limited to:
+Cookies and Usage Data
+Usage Data
+We may also collect information that your browser sends whenever you visit our Service or when you access the Service by or through a mobile device ("Usage Data").
+This Usage Data may include information such as your computer\'s Internet Protocol address (e.g. IP address), browser type, browser version, the pages of our Service that you visit, the time and date of your visit, the time spent on those pages, unique device identifiers and other diagnostic data.
+When you access the Service by or through a mobile device, this Usage Data may include information such as the type of mobile device you use, your mobile device unique ID, the IP address of your mobile device, your mobile operating system, the type of mobile Internet browser you use, unique device identifiers and other diagnostic data.
+Tracking and Cookies Data
+We use cookies and similar tracking technologies to track the activity on our Service and hold certain information.
+Cookies are files with small amount of data which may include an anonymous unique identifier. Cookies are sent to your browser from a website and stored on your device. Tracking technologies also used are beacons, tags, and scripts to collect and track information and to improve and analyze our Service.
+You can instruct your browser to refuse all cookies or to indicate when a cookie is being sent. However, if you do not accept cookies, you may not be able to use some portions of our Service.
+Examples of Cookies we use:
+Session Cookies. We use Session Cookies to operate our Service.
+Preference Cookies. We use Preference Cookies to remember your preferences and various settings.
+Security Cookies. We use Security Cookies for security purposes.
+Use of Data
+Your Master Cleaner uses the collected data for various purposes:
+To provide and maintain the Service
+To notify you about changes to our Service
+To allow you to participate in interactive features of our Service when you choose to do so
+To provide customer care and support
+To provide analysis or valuable information so that we can improve the Service
+To monitor the usage of the Service
+To detect, prevent and address technical issues
+Transfer Of Data
+Your information, including Personal Data, may be transferred to — and maintained on — computers located outside of your state, province, country or other governmental jurisdiction where the data protection laws may differ than those from your jurisdiction.
+If you are located outside Belarus and choose to provide information to us, please note that we transfer the data, including Personal Data, to Belarus and process it there.
+Your consent to this Privacy Policy followed by your submission of such information represents your agreement to that transfer.
+Your Master Cleaner will take all steps reasonably necessary to ensure that your data is treated securely and in accordance with this Privacy Policy and no transfer of your Personal Data will take place to an organization or a country unless there are adequate controls in place including the security of your data and other personal information.
+Disclosure Of Data
+Legal Requirements
+Your Master Cleaner may disclose your Personal Data in the good faith belief that such action is necessary to:
+To comply with a legal obligation
+To protect and defend the rights or property of Your Master Cleaner
+To prevent or investigate possible wrongdoing in connection with the Service
+To protect the personal safety of users of the Service or the public
+To protect against legal liability
+Security Of Data
+The security of your data is important to us, but remember that no method of transmission over the Internet, or method of electronic storage is 100% secure. While we strive to use commercially acceptable means to protect your Personal Data, we cannot guarantee its absolute security.
+Service Providers
+We may employ third party companies and individuals to facilitate our Service ("Service Providers"), to provide the Service on our behalf, to perform Service-related services or to assist us in analyzing how our Service is used.
+These third parties have access to your Personal Data only to perform these tasks on our behalf and are obligated not to disclose or use it for any other purpose.
+Analytics
+We may use third-party Service Providers to monitor and analyze the use of our Service.
+Google Analytics
+Google Analytics is a web analytics service offered by Google that tracks and reports website traffic. Google uses the data collected to track and monitor the use of our Service. This data is shared with other Google services. Google may use the collected data to contextualize and personalize the ads of its own advertising network.
+For more information on the privacy practices of Google, please visit the Google Privacy and Terms web page: https://policies.google.com/privacy?hl=en
+Links To Other Sites
+Our Service may contain links to other sites that are not operated by us. If you click on a third party link, you will be directed to that third party's site. We strongly advise you to review the Privacy Policy of every site you visit.
+We have no control over and assume no responsibility for the content, privacy policies or practices of any third party sites or services.
+Children's Privacy
+Our Service does not address anyone under the age of 18 ("Children").
+We do not knowingly collect personally identifiable information from anyone under the age of 18. If you are a parent or guardian and you are aware that your Children has provided us with Personal Data, please contact us. If we become aware that we have collected Personal Data from children without verification of parental consent, we take steps to remove that information from our servers.
+Changes To This Privacy Policy
+We may update our Privacy Policy from time to time. We will notify you of any changes by posting the new Privacy Policy on this page.
+We will let you know via email and/or a prominent notice on our Service, prior to the change becoming effective and update the "effective date" at the top of this Privacy Policy.
+You are advised to review this Privacy Policy periodically for any changes. Changes to this Privacy Policy are effective when they are posted on this page.
+Contact Us
+If you have any questions about this Privacy Policy, please contact us:
+By email: am@balaganov.rocks
+
\ No newline at end of file
diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml
new file mode 100644
index 0000000..15e6b15
--- /dev/null
+++ b/app/src/main/res/values-es/strings.xml
@@ -0,0 +1,131 @@
+
+
+
+ Your Master Cleaner
+ Your Master Cleaner
+ Привет мир!
+ Ajustes
+ drawer_open
+ drawer_close
+ Open navigation drawer
+ Close navigation drawer
+ ¡Impulso RAM!
+ Recolección de basura
+ Control de autoencendido
+ Eliminar Aplicaciones
+ Hypernate aplicaciones
+ INICIAR
+ RAM
+ ¡Atención! Eliminación de aplicaciones del sistema puede causar problemas en su funcionalidad Android!
+ Optimizador de Android
+ ¡Acelera tu Teléfono!
+ Eliminar aplicaciones
+ Configuración
+ Idioma
+ Política De Privacidad
+ Acelerar
+ despejado
+ de memoria
+ Pulse "Volver" de nuevo para salir
+ Aplicaciones de usuario
+ Aplicaciones del sistema
+ Eliminar
+ Si cerrar
+ No continuar
+ Acelerar
+ Salida
+ Se puede borrar
+ Eliminar aplicaciones
+ Hypernate
+ Hypernate aplicaciones
+ Valorar
+ Estamos motivados por tu apoyo
+ Valorar esta aplicación
+ Tu Androide puede funcionar más estrategia.
+ Comprobar
+ ¡Guarde la Batería en un solo toque!
+ Ahorrador De Batería
+ Acelera
+ Borrar
+ Enhorabuena ¡La memoria es gratis!
+ Escaneando
+ LIMPIAR YA
+ Almacenamiento
+ ¡Aplicación de limpieza!
+ Limpieza de basura(%1$s )
+ Enhorabuena ¡La memoria es gratis!
+ Enhorabuena ¡Has ahorrado energía de la batería!
+ Escaneando ...
+ Escaneando %1$d/%2$d
+
+
+Privacy Policy
+Effective date: September 26, 2018
+Your Master Cleaner ("us", "we", or "our") operates the website and the Your Master Cleaner mobile application (the "Service").
+This page informs you of our policies regarding the collection, use, and disclosure of personal data when you use our Service and the choices you have associated with that data. Our Privacy Policy for Your Master Cleaner is managed through Free Privacy Policy.
+We use your data to provide and improve the Service. By using the Service, you agree to the collection and use of information in accordance with this policy. Unless otherwise defined in this Privacy Policy, terms used in this Privacy Policy have the same meanings as in our Terms and Conditions.
+Information Collection And Use
+We collect several different types of information for various purposes to provide and improve our Service to you.
+Types of Data Collected
+Personal Data
+While using our Service, we may ask you to provide us with certain personally identifiable information that can be used to contact or identify you ("Personal Data"). Personally identifiable information may include, but is not limited to:
+Cookies and Usage Data
+Usage Data
+We may also collect information that your browser sends whenever you visit our Service or when you access the Service by or through a mobile device ("Usage Data").
+This Usage Data may include information such as your computer\'s Internet Protocol address (e.g. IP address), browser type, browser version, the pages of our Service that you visit, the time and date of your visit, the time spent on those pages, unique device identifiers and other diagnostic data.
+When you access the Service by or through a mobile device, this Usage Data may include information such as the type of mobile device you use, your mobile device unique ID, the IP address of your mobile device, your mobile operating system, the type of mobile Internet browser you use, unique device identifiers and other diagnostic data.
+Tracking and Cookies Data
+We use cookies and similar tracking technologies to track the activity on our Service and hold certain information.
+Cookies are files with small amount of data which may include an anonymous unique identifier. Cookies are sent to your browser from a website and stored on your device. Tracking technologies also used are beacons, tags, and scripts to collect and track information and to improve and analyze our Service.
+You can instruct your browser to refuse all cookies or to indicate when a cookie is being sent. However, if you do not accept cookies, you may not be able to use some portions of our Service.
+Examples of Cookies we use:
+Session Cookies. We use Session Cookies to operate our Service.
+Preference Cookies. We use Preference Cookies to remember your preferences and various settings.
+Security Cookies. We use Security Cookies for security purposes.
+Use of Data
+Your Master Cleaner uses the collected data for various purposes:
+To provide and maintain the Service
+To notify you about changes to our Service
+To allow you to participate in interactive features of our Service when you choose to do so
+To provide customer care and support
+To provide analysis or valuable information so that we can improve the Service
+To monitor the usage of the Service
+To detect, prevent and address technical issues
+Transfer Of Data
+Your information, including Personal Data, may be transferred to — and maintained on — computers located outside of your state, province, country or other governmental jurisdiction where the data protection laws may differ than those from your jurisdiction.
+If you are located outside Belarus and choose to provide information to us, please note that we transfer the data, including Personal Data, to Belarus and process it there.
+Your consent to this Privacy Policy followed by your submission of such information represents your agreement to that transfer.
+Your Master Cleaner will take all steps reasonably necessary to ensure that your data is treated securely and in accordance with this Privacy Policy and no transfer of your Personal Data will take place to an organization or a country unless there are adequate controls in place including the security of your data and other personal information.
+Disclosure Of Data
+Legal Requirements
+Your Master Cleaner may disclose your Personal Data in the good faith belief that such action is necessary to:
+To comply with a legal obligation
+To protect and defend the rights or property of Your Master Cleaner
+To prevent or investigate possible wrongdoing in connection with the Service
+To protect the personal safety of users of the Service or the public
+To protect against legal liability
+Security Of Data
+The security of your data is important to us, but remember that no method of transmission over the Internet, or method of electronic storage is 100% secure. While we strive to use commercially acceptable means to protect your Personal Data, we cannot guarantee its absolute security.
+Service Providers
+We may employ third party companies and individuals to facilitate our Service ("Service Providers"), to provide the Service on our behalf, to perform Service-related services or to assist us in analyzing how our Service is used.
+These third parties have access to your Personal Data only to perform these tasks on our behalf and are obligated not to disclose or use it for any other purpose.
+Analytics
+We may use third-party Service Providers to monitor and analyze the use of our Service.
+Google Analytics
+Google Analytics is a web analytics service offered by Google that tracks and reports website traffic. Google uses the data collected to track and monitor the use of our Service. This data is shared with other Google services. Google may use the collected data to contextualize and personalize the ads of its own advertising network.
+For more information on the privacy practices of Google, please visit the Google Privacy and Terms web page: https://policies.google.com/privacy?hl=en
+Links To Other Sites
+Our Service may contain links to other sites that are not operated by us. If you click on a third party link, you will be directed to that third party's site. We strongly advise you to review the Privacy Policy of every site you visit.
+We have no control over and assume no responsibility for the content, privacy policies or practices of any third party sites or services.
+Children's Privacy
+Our Service does not address anyone under the age of 18 ("Children").
+We do not knowingly collect personally identifiable information from anyone under the age of 18. If you are a parent or guardian and you are aware that your Children has provided us with Personal Data, please contact us. If we become aware that we have collected Personal Data from children without verification of parental consent, we take steps to remove that information from our servers.
+Changes To This Privacy Policy
+We may update our Privacy Policy from time to time. We will notify you of any changes by posting the new Privacy Policy on this page.
+We will let you know via email and/or a prominent notice on our Service, prior to the change becoming effective and update the "effective date" at the top of this Privacy Policy.
+You are advised to review this Privacy Policy periodically for any changes. Changes to this Privacy Policy are effective when they are posted on this page.
+Contact Us
+If you have any questions about this Privacy Policy, please contact us:
+By email: am@balaganov.rocks
+
+
\ No newline at end of file
diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml
new file mode 100644
index 0000000..6cfb1d3
--- /dev/null
+++ b/app/src/main/res/values-ru/strings.xml
@@ -0,0 +1,131 @@
+
+
+
+ Your Master Cleaner
+ Your Master Cleaner
+ Привет мир!
+ Настройки
+ drawer_open
+ drawer_close
+ Open navigation drawer
+ Close navigation drawer
+ Ускорение памяти
+ Уборка мусора
+ Управление самозапуском
+ Удаление программ
+ Перевести выбранные приложения в спящий режим
+ Старт
+ Оперативная Память
+ Осторожно! Удаление системных приложений может привести к некорректной работе вашего телефона!
+ Ускорение телефона
+ Ускорение телефона
+ Удаление программ
+ Настройки
+ Язык
+ Политика конфиденциальности
+ Ускорить
+ Очищено
+ Памяти
+ Нажмите еще раз, чтобы выйти из приложения.
+ Пользовательские приложения
+ Системные приложения
+ Удалить
+ Ускорить
+ Выход
+ Может быть очищен
+ Удаление приложений
+ Да, закрыть
+ Нет, продолжить
+ Перевести в спящий режим
+ Перевести выбранные приложения в спящий режим
+ Оценить
+ Ваша поддержка - лучшая мотивация для нас!
+ Выставить оценку
+ Устройство может работать быстрее. Оптимизируйте скорость
+ Проверить
+ Экономьте заряд, усыпляя приложения одним нажатием
+ Экономия энергии
+ Освободить
+ Удалить
+ Поздравляем! Память освобождена!
+ Сканирование
+ Запустить проверку
+ Занято памяти
+ Очистка, ускорение и оптимизация телефона
+ Очистка мусора(%1$s )
+ Поздравляю! Память освобождена!
+ Поздравляю! Вы сэкономили заряд батареи!
+ Сканирование ...
+ Сканирование %1$d/%2$d
+ Установлено %1$s приложений, занимающих %2$s МБ
+
+Privacy Policy
+Effective date: September 26, 2018
+Your Master Cleaner ("us", "we", or "our") operates the website and the Your Master Cleaner mobile application (the "Service").
+This page informs you of our policies regarding the collection, use, and disclosure of personal data when you use our Service and the choices you have associated with that data. Our Privacy Policy for Your Master Cleaner is managed through Free Privacy Policy.
+We use your data to provide and improve the Service. By using the Service, you agree to the collection and use of information in accordance with this policy. Unless otherwise defined in this Privacy Policy, terms used in this Privacy Policy have the same meanings as in our Terms and Conditions.
+Information Collection And Use
+We collect several different types of information for various purposes to provide and improve our Service to you.
+Types of Data Collected
+Personal Data
+While using our Service, we may ask you to provide us with certain personally identifiable information that can be used to contact or identify you ("Personal Data"). Personally identifiable information may include, but is not limited to:
+Cookies and Usage Data
+Usage Data
+We may also collect information that your browser sends whenever you visit our Service or when you access the Service by or through a mobile device ("Usage Data").
+This Usage Data may include information such as your computer\'s Internet Protocol address (e.g. IP address), browser type, browser version, the pages of our Service that you visit, the time and date of your visit, the time spent on those pages, unique device identifiers and other diagnostic data.
+When you access the Service by or through a mobile device, this Usage Data may include information such as the type of mobile device you use, your mobile device unique ID, the IP address of your mobile device, your mobile operating system, the type of mobile Internet browser you use, unique device identifiers and other diagnostic data.
+Tracking and Cookies Data
+We use cookies and similar tracking technologies to track the activity on our Service and hold certain information.
+Cookies are files with small amount of data which may include an anonymous unique identifier. Cookies are sent to your browser from a website and stored on your device. Tracking technologies also used are beacons, tags, and scripts to collect and track information and to improve and analyze our Service.
+You can instruct your browser to refuse all cookies or to indicate when a cookie is being sent. However, if you do not accept cookies, you may not be able to use some portions of our Service.
+Examples of Cookies we use:
+Session Cookies. We use Session Cookies to operate our Service.
+Preference Cookies. We use Preference Cookies to remember your preferences and various settings.
+Security Cookies. We use Security Cookies for security purposes.
+Use of Data
+Your Master Cleaner uses the collected data for various purposes:
+To provide and maintain the Service
+To notify you about changes to our Service
+To allow you to participate in interactive features of our Service when you choose to do so
+To provide customer care and support
+To provide analysis or valuable information so that we can improve the Service
+To monitor the usage of the Service
+To detect, prevent and address technical issues
+Transfer Of Data
+Your information, including Personal Data, may be transferred to — and maintained on — computers located outside of your state, province, country or other governmental jurisdiction where the data protection laws may differ than those from your jurisdiction.
+If you are located outside Belarus and choose to provide information to us, please note that we transfer the data, including Personal Data, to Belarus and process it there.
+Your consent to this Privacy Policy followed by your submission of such information represents your agreement to that transfer.
+Your Master Cleaner will take all steps reasonably necessary to ensure that your data is treated securely and in accordance with this Privacy Policy and no transfer of your Personal Data will take place to an organization or a country unless there are adequate controls in place including the security of your data and other personal information.
+Disclosure Of Data
+Legal Requirements
+Your Master Cleaner may disclose your Personal Data in the good faith belief that such action is necessary to:
+To comply with a legal obligation
+To protect and defend the rights or property of Your Master Cleaner
+To prevent or investigate possible wrongdoing in connection with the Service
+To protect the personal safety of users of the Service or the public
+To protect against legal liability
+Security Of Data
+The security of your data is important to us, but remember that no method of transmission over the Internet, or method of electronic storage is 100% secure. While we strive to use commercially acceptable means to protect your Personal Data, we cannot guarantee its absolute security.
+Service Providers
+We may employ third party companies and individuals to facilitate our Service ("Service Providers"), to provide the Service on our behalf, to perform Service-related services or to assist us in analyzing how our Service is used.
+These third parties have access to your Personal Data only to perform these tasks on our behalf and are obligated not to disclose or use it for any other purpose.
+Analytics
+We may use third-party Service Providers to monitor and analyze the use of our Service.
+Google Analytics
+Google Analytics is a web analytics service offered by Google that tracks and reports website traffic. Google uses the data collected to track and monitor the use of our Service. This data is shared with other Google services. Google may use the collected data to contextualize and personalize the ads of its own advertising network.
+For more information on the privacy practices of Google, please visit the Google Privacy and Terms web page: https://policies.google.com/privacy?hl=en
+Links To Other Sites
+Our Service may contain links to other sites that are not operated by us. If you click on a third party link, you will be directed to that third party's site. We strongly advise you to review the Privacy Policy of every site you visit.
+We have no control over and assume no responsibility for the content, privacy policies or practices of any third party sites or services.
+Children's Privacy
+Our Service does not address anyone under the age of 18 ("Children").
+We do not knowingly collect personally identifiable information from anyone under the age of 18. If you are a parent or guardian and you are aware that your Children has provided us with Personal Data, please contact us. If we become aware that we have collected Personal Data from children without verification of parental consent, we take steps to remove that information from our servers.
+Changes To This Privacy Policy
+We may update our Privacy Policy from time to time. We will notify you of any changes by posting the new Privacy Policy on this page.
+We will let you know via email and/or a prominent notice on our Service, prior to the change becoming effective and update the "effective date" at the top of this Privacy Policy.
+You are advised to review this Privacy Policy periodically for any changes. Changes to this Privacy Policy are effective when they are posted on this page.
+Contact Us
+If you have any questions about this Privacy Policy, please contact us:
+By email: am@balaganov.rocks
+
+
\ No newline at end of file
diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml
index 21bfe2b..ddb5beb 100644
--- a/app/src/main/res/values/colors.xml
+++ b/app/src/main/res/values/colors.xml
@@ -34,7 +34,7 @@
#3e802f
#f4b400
#427fed
- #b23424
+ #b21400
- @color/gplus_color_1
- @color/gplus_color_2
diff --git a/app/src/main/res/values/colors_actionbar.xml b/app/src/main/res/values/colors_actionbar.xml
index 4cc87b9..bf4bd33 100644
--- a/app/src/main/res/values/colors_actionbar.xml
+++ b/app/src/main/res/values/colors_actionbar.xml
@@ -3,7 +3,7 @@
#3A5FCD
#3A5FCD
#27408B
- #FFFFFF
+ #ffffff
#FF7F00
#EE7600
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 17487b9..d8bf9e4 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -1,39 +1,128 @@
- 一键清理 开源版
- 一键加速
- Hello world!
+ Your Master Cleaner
Settings
+ Your Master Cleaner
drawer_open
drawer_close
Open navigation drawer
Close navigation drawer
- 内存加速
- 垃圾清理
- 自启管理
- 软件管理
- 清理垃圾 (%1$s )
- 缓存为空.
- 扫描中…
- 扫描中 %1$d/%2$d
- 已安装%1$s款软件,占有存储空间%2$s
-
-
- 其他
- 常规设置
- 基本设置
- 高级设置
- 关于
- 检查更新
- 给我好评
- 推荐给好友
-
- 设置
- \
- 亲!么么!一键清理 开源版 。高效、快速、准确的清理手机垃圾,提升手机运行速度。\
- 源代码开源,保证安全
- 由于时间仓促,错误与疏忽之处在所难免,\
- 如果各位亲能给出宝贵的建议与指点,那将是极好的哦!么么哒!
- Copyright © 2012-2015 zaiyong. All Rights Reserved.
+ Memory clean
+ Rubish clean
+ Remove Apps
+ Hybernate selected apps.
+ Start
+ RAM
+ Attention! Deleting system apps may cause problems in your Android functionality!
+ Privacy Policy
+ Speed up your phone
+ Speed up your phone
+ Remove Apps
+ Settings
+ Language
+ Boost
+ Cleaned
+ Storage
+ Press "Back" again to exit
+ User Apps
+ System Apps
+ Remove
+ Apps installed
+ Exit
+ May be cleaned
+ Remove apps
+ Yes, close app
+ No continue
+ Hybernate apps.
+ Hybernate selected apps.
+ Rate this app
+ Your support is our best motivation!
+ Please rate us
+ Your Android can work faster. Optimize its speed.
+ Check
+ Boost battery live in one tap!
+ Save Battery
+ Speed up!
+ Delete
+ Congratulations! Memory cleaned
+ Scanning
+ SCAN FOR JUNK
+ Storage
+ Clean, speed up and optimize your Android!
+ Clean rubish(%1$s )
+ Congratulations! Memory cleaned!
+ Congratulations! You have saved battery power!
+ Scanning ...
+ Scanning %1$d/%2$d
+ %1$s apps installed.%2$s MB storage used.
+
+Privacy Policy
+Effective date: September 26, 2018
+Your Master Cleaner ("us", "we", or "our") operates the website and the Your Master Cleaner mobile application (the "Service").
+This page informs you of our policies regarding the collection, use, and disclosure of personal data when you use our Service and the choices you have associated with that data. Our Privacy Policy for Your Master Cleaner is managed through Free Privacy Policy.
+We use your data to provide and improve the Service. By using the Service, you agree to the collection and use of information in accordance with this policy. Unless otherwise defined in this Privacy Policy, terms used in this Privacy Policy have the same meanings as in our Terms and Conditions.
+Information Collection And Use
+We collect several different types of information for various purposes to provide and improve our Service to you.
+Types of Data Collected
+Personal Data
+While using our Service, we may ask you to provide us with certain personally identifiable information that can be used to contact or identify you ("Personal Data"). Personally identifiable information may include, but is not limited to:
+Cookies and Usage Data
+Usage Data
+We may also collect information that your browser sends whenever you visit our Service or when you access the Service by or through a mobile device ("Usage Data").
+This Usage Data may include information such as your computer\'s Internet Protocol address (e.g. IP address), browser type, browser version, the pages of our Service that you visit, the time and date of your visit, the time spent on those pages, unique device identifiers and other diagnostic data.
+When you access the Service by or through a mobile device, this Usage Data may include information such as the type of mobile device you use, your mobile device unique ID, the IP address of your mobile device, your mobile operating system, the type of mobile Internet browser you use, unique device identifiers and other diagnostic data.
+Tracking and Cookies Data
+We use cookies and similar tracking technologies to track the activity on our Service and hold certain information.
+Cookies are files with small amount of data which may include an anonymous unique identifier. Cookies are sent to your browser from a website and stored on your device. Tracking technologies also used are beacons, tags, and scripts to collect and track information and to improve and analyze our Service.
+You can instruct your browser to refuse all cookies or to indicate when a cookie is being sent. However, if you do not accept cookies, you may not be able to use some portions of our Service.
+Examples of Cookies we use:
+Session Cookies. We use Session Cookies to operate our Service.
+Preference Cookies. We use Preference Cookies to remember your preferences and various settings.
+Security Cookies. We use Security Cookies for security purposes.
+Use of Data
+Your Master Cleaner uses the collected data for various purposes:
+To provide and maintain the Service
+To notify you about changes to our Service
+To allow you to participate in interactive features of our Service when you choose to do so
+To provide customer care and support
+To provide analysis or valuable information so that we can improve the Service
+To monitor the usage of the Service
+To detect, prevent and address technical issues
+Transfer Of Data
+Your information, including Personal Data, may be transferred to — and maintained on — computers located outside of your state, province, country or other governmental jurisdiction where the data protection laws may differ than those from your jurisdiction.
+If you are located outside Belarus and choose to provide information to us, please note that we transfer the data, including Personal Data, to Belarus and process it there.
+Your consent to this Privacy Policy followed by your submission of such information represents your agreement to that transfer.
+Your Master Cleaner will take all steps reasonably necessary to ensure that your data is treated securely and in accordance with this Privacy Policy and no transfer of your Personal Data will take place to an organization or a country unless there are adequate controls in place including the security of your data and other personal information.
+Disclosure Of Data
+Legal Requirements
+Your Master Cleaner may disclose your Personal Data in the good faith belief that such action is necessary to:
+To comply with a legal obligation
+To protect and defend the rights or property of Your Master Cleaner
+To prevent or investigate possible wrongdoing in connection with the Service
+To protect the personal safety of users of the Service or the public
+To protect against legal liability
+Security Of Data
+The security of your data is important to us, but remember that no method of transmission over the Internet, or method of electronic storage is 100% secure. While we strive to use commercially acceptable means to protect your Personal Data, we cannot guarantee its absolute security.
+Service Providers
+We may employ third party companies and individuals to facilitate our Service ("Service Providers"), to provide the Service on our behalf, to perform Service-related services or to assist us in analyzing how our Service is used.
+These third parties have access to your Personal Data only to perform these tasks on our behalf and are obligated not to disclose or use it for any other purpose.
+Analytics
+We may use third-party Service Providers to monitor and analyze the use of our Service.
+Google Analytics
+Google Analytics is a web analytics service offered by Google that tracks and reports website traffic. Google uses the data collected to track and monitor the use of our Service. This data is shared with other Google services. Google may use the collected data to contextualize and personalize the ads of its own advertising network.
+For more information on the privacy practices of Google, please visit the Google Privacy and Terms web page: https://policies.google.com/privacy?hl=en
+Links To Other Sites
+Our Service may contain links to other sites that are not operated by us. If you click on a third party link, you will be directed to that third party's site. We strongly advise you to review the Privacy Policy of every site you visit.
+We have no control over and assume no responsibility for the content, privacy policies or practices of any third party sites or services.
+Children's Privacy
+Our Service does not address anyone under the age of 18 ("Children").
+We do not knowingly collect personally identifiable information from anyone under the age of 18. If you are a parent or guardian and you are aware that your Children has provided us with Personal Data, please contact us. If we become aware that we have collected Personal Data from children without verification of parental consent, we take steps to remove that information from our servers.
+Changes To This Privacy Policy
+We may update our Privacy Policy from time to time. We will notify you of any changes by posting the new Privacy Policy on this page.
+We will let you know via email and/or a prominent notice on our Service, prior to the change becoming effective and update the "effective date" at the top of this Privacy Policy.
+You are advised to review this Privacy Policy periodically for any changes. Changes to this Privacy Policy are effective when they are posted on this page.
+Contact Us
+If you have any questions about this Privacy Policy, please contact us:
+By email: am@balaganov.rocks
\ No newline at end of file
diff --git a/app/src/main/res/values/umeng_common_strings.xml b/app/src/main/res/values/umeng_common_strings.xml
index 8bb240d..c2145f2 100644
--- a/app/src/main/res/values/umeng_common_strings.xml
+++ b/app/src/main/res/values/umeng_common_strings.xml
@@ -1,19 +1,19 @@
- 正在下载中.
- 下载出错啦,请检查网络后继续。
- 暂停
- 继续
- 取消
- 正在下载:
- 暂停:
- 正在下载应用
- 正在更新安装包
- 请连接网络后再尝试!
- 下载失败
- 下载完成,请点击安装
- 更新完成,请点击安装
- 新版本已经准备好,请点击安装
+ Загрузка.
+ Загрузка неверна, проверьте сеть и продолжайте.
+ Пауза
+ продолжать
+ отменен
+ Загрузка:
+ Пауза:
+ Загрузка приложения
+ Обновление установочного пакета
+ Пожалуйста, подключитесь к сети и повторите попытку!
+ Ошибка загрузки
+ Загрузка завершена, нажмите кнопку «Установить»
+ Обновление завершено, нажмите кнопку «Установить».
+ Новая версия готова, нажмите кнопку «Установить».
diff --git a/app/src/main/res/values/umeng_socialize_laiwang_strings.xml b/app/src/main/res/values/umeng_socialize_laiwang_strings.xml
index 67832a7..0cad262 100644
--- a/app/src/main/res/values/umeng_socialize_laiwang_strings.xml
+++ b/app/src/main/res/values/umeng_socialize_laiwang_strings.xml
@@ -1,6 +1,6 @@
来往
- 来往动态
- 友盟社会化组件(SDK)让移动应用快速整合社交分享功能
+ И от динамического
+ Компонент мобильности дружбы (SDK) позволяет мобильным приложениям быстро интегрировать функции социального обмена
diff --git a/app/src/main/res/values/umeng_socialize_strings.xml b/app/src/main/res/values/umeng_socialize_strings.xml
index e1558f3..9cb34cc 100644
--- a/app/src/main/res/values/umeng_socialize_strings.xml
+++ b/app/src/main/res/values/umeng_socialize_strings.xml
@@ -1,8 +1,8 @@
- 向下拉动可以刷新
- 松开可以刷新
+ Потяните вниз, чтобы обновить
+ Освобождение может обновляться
加载中…
点击刷新
请连接网络后再尝试!
diff --git a/app/src/main/res/values/umeng_update_string.xml b/app/src/main/res/values/umeng_update_string.xml
index 836ab8c..1149ac1 100644
--- a/app/src/main/res/values/umeng_update_string.xml
+++ b/app/src/main/res/values/umeng_update_string.xml
@@ -1,19 +1,19 @@
- 未联网
- 发现新版本
- 最新版本:
- 更新内容
- 仅需要下载:
- 新版本大小:
- (提示:非WIFI环境)
- 立即更新
- 应用更新
- 以后再说
- 忽略该版
- 正在更新中....
- 最新版本已下载,是否安装?
+ Не подключен
+ Откройте новую версию
+ Последняя версия:
+ Обновить контент
+ Просто скачайте:
+ Размер новой версии:
+ (Совет: среда, отличная от WIFI))
+ Обновить сейчас
+ Обновление приложения
+ Я расскажу об этом позже.
+ Игнорировать эту версию
+ Он обновляется ....
+ Последняя версия была загружена, установлена ли она?
- 2.5.0.20141210
+ 1.0.0
diff --git a/app/src/main/res/xml/ui_settings.xml b/app/src/main/res/xml/ui_settings.xml
index 15c3fbd..12e0926 100644
--- a/app/src/main/res/xml/ui_settings.xml
+++ b/app/src/main/res/xml/ui_settings.xml
@@ -1,42 +1,38 @@
-
+
+ android:title="создать"Однократное ускорение"Ярлыки" />
+ android:summary="Эта функция требует root компетентность" />
-
+
+ android:title="c" />
+ android:title="d" />
-
+ android:title="e" />
+
+ android:title="f" />
diff --git a/build.gradle b/build.gradle
index f9a8e3c..a74bfd0 100644
--- a/build.gradle
+++ b/build.gradle
@@ -4,9 +4,11 @@ buildscript {
repositories {
maven { url "https://oss.sonatype.org/content/repositories/snapshots/" }
jcenter()
+ google()
+
}
dependencies {
- classpath 'com.android.tools.build:gradle:1.0.0'
+ classpath 'com.android.tools.build:gradle:3.1.4'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
@@ -15,6 +17,11 @@ buildscript {
allprojects {
repositories {
+ // The order in which you list these repositories matter.
+ google()
jcenter()
+ maven {
+ url "https://maven.google.com/"
+ }
}
-}
+}
\ No newline at end of file
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index 0c71e76..100cf9d 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
-#Wed Apr 10 15:27:10 PDT 2013
+#Sun Sep 09 15:31:16 MSK 2018
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.zip
diff --git a/library/build.gradle b/library/build.gradle
index 108f065..0b9af00 100644
--- a/library/build.gradle
+++ b/library/build.gradle
@@ -5,13 +5,19 @@ android {
config {
}
}
+ lintOptions {
+ checkReleaseBuilds false
+ // Or, if you prefer, you can continue to check for errors in release builds,
+ // but continue the build even when errors are found:
+ abortOnError false
+ }
compileSdkVersion 21
- buildToolsVersion "21.1.1"
+ buildToolsVersion '27.0.3'
defaultConfig {
- minSdkVersion 14
+ minSdkVersion 16
targetSdkVersion 21
- versionCode 1
- versionName "1.0"
+ versionCode 4
+ versionName "1.1"
}
buildTypes {
release {
@@ -22,6 +28,7 @@ android {
}
dependencies {
- compile 'com.android.support:recyclerview-v7:21.0.3'
- compile fileTree(dir: 'libs', include: ['*.jar'])
+ implementation 'com.android.support:recyclerview-v7:21.0.3'
+ implementation fileTree(include: ['*.jar'], dir: 'libs')
+ implementation 'com.android.support:support-v4:21.0.3'
}
diff --git a/library/library.iml b/library/library.iml
index a0e1bfd..466b9ce 100644
--- a/library/library.iml
+++ b/library/library.iml
@@ -1,5 +1,5 @@
-
+
@@ -11,82 +11,108 @@
-
-
-
+
+ generateDebugSources
+
-
+
-
+
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
+
+
+
+
+
+
-
-
-
+
+
+
+
-
-
-
-
+
-
-
-
-
+
+
+
+
-
-
-
+
+
+
+
+
+
+
-
-
-
+
+
+
-
-
+
\ No newline at end of file
diff --git a/superCleanMaster.iml b/superCleanMaster.iml
index 2a02201..9308729 100644
--- a/superCleanMaster.iml
+++ b/superCleanMaster.iml
@@ -1,15 +1,14 @@
-
+
+
-
-
-
+
@@ -17,5 +16,4 @@
-
-
+
\ No newline at end of file