├── app ├── .gitignore ├── libs │ └── gson-2.3.1.jar ├── src │ ├── main │ │ ├── assets │ │ │ └── jpg_1920_1080.jpg │ │ ├── res │ │ │ ├── mipmap-xhdpi │ │ │ │ ├── logo.png │ │ │ │ ├── test3.jpg │ │ │ │ ├── main_bg.png │ │ │ │ ├── ic_launcher.png │ │ │ │ ├── activity_back_normal.png │ │ │ │ ├── activity_back_pressed.png │ │ │ │ ├── maintabbar_button_search_normal.png │ │ │ │ ├── maintabbar_button_search_highlight.png │ │ │ │ └── maintabbar_button_search_selector.xml │ │ │ ├── mipmap-hdpi │ │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ │ └── ic_launcher.png │ │ │ ├── drawable │ │ │ │ ├── ic_red_dot.xml │ │ │ │ ├── hp_button_right.xml │ │ │ │ └── img_top_back.xml │ │ │ ├── values-w820dp │ │ │ │ └── dimens.xml │ │ │ ├── menu │ │ │ │ └── menu_layout_per.xml │ │ │ ├── layout │ │ │ │ ├── list_item.xml │ │ │ │ ├── viewstub_text_layout1.xml │ │ │ │ ├── fragment_third.xml │ │ │ │ ├── fm_listview.xml │ │ │ │ ├── list.xml │ │ │ │ ├── fragmet_test.xml │ │ │ │ ├── activity_homepage.xml │ │ │ │ ├── layout_bitmap_show.xml │ │ │ │ ├── view_item.xml │ │ │ │ ├── fragment_test_sec.xml │ │ │ │ ├── activity_app_start.xml │ │ │ │ ├── item_listview_tag.xml │ │ │ │ ├── common_top_bar.xml │ │ │ │ ├── fm_xml_show.xml │ │ │ │ ├── fm_performance.xml │ │ │ │ ├── item_listview_test.xml │ │ │ │ ├── fm_ui_perf.xml │ │ │ │ ├── fm_overdraw.xml │ │ │ │ ├── activity_layout_per.xml │ │ │ │ └── fragment_homepage.xml │ │ │ └── values │ │ │ │ ├── attrs.xml │ │ │ │ ├── dimens.xml │ │ │ │ ├── colors.xml │ │ │ │ ├── strings.xml │ │ │ │ └── styles.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── android │ │ │ │ └── androidtech │ │ │ │ ├── monitor │ │ │ │ ├── MonitorConfig.java │ │ │ │ ├── ui │ │ │ │ │ ├── LogPrinterListener.java │ │ │ │ │ ├── sampling │ │ │ │ │ │ ├── CpuInfo.java │ │ │ │ │ │ ├── BaseSampler.java │ │ │ │ │ │ └── CpuInfoSampler.java │ │ │ │ │ ├── UiPerfMonitorConfig.java │ │ │ │ │ ├── LogPrinter.java │ │ │ │ │ ├── UiPerfMonitor.java │ │ │ │ │ └── LogWriteThread.java │ │ │ │ ├── time │ │ │ │ │ ├── TimeMonitorConfig.java │ │ │ │ │ ├── TimeMonitorManager.java │ │ │ │ │ └── TimeMonitor.java │ │ │ │ └── memory │ │ │ │ │ ├── TestDataModel.java │ │ │ │ │ └── LeakCanaryService.java │ │ │ │ ├── database │ │ │ │ ├── tables │ │ │ │ │ ├── DBConfig.java │ │ │ │ │ ├── BaseTable.java │ │ │ │ │ └── ContactInfoTable.java │ │ │ │ └── DBManager.java │ │ │ │ ├── utils │ │ │ │ ├── Util4Phone.java │ │ │ │ ├── GLog.java │ │ │ │ ├── dex │ │ │ │ │ ├── DexUtil.java │ │ │ │ │ ├── ZipUtil.java │ │ │ │ │ └── ReflectUtil.java │ │ │ │ ├── Util4Common.java │ │ │ │ └── CpuFreqSet.java │ │ │ │ ├── jobscheduler │ │ │ │ ├── JobSchedulerService.java │ │ │ │ └── JobScheduleManager.java │ │ │ │ ├── activity │ │ │ │ ├── base │ │ │ │ │ ├── IFragmentStackManager.java │ │ │ │ │ ├── BaseActivity.java │ │ │ │ │ └── BaseFragmentActivity.java │ │ │ │ ├── ex │ │ │ │ │ └── LayoutPerActivity.java │ │ │ │ ├── HomePageActivity.java │ │ │ │ └── AppStartActivity.java │ │ │ │ ├── fragment │ │ │ │ ├── performance │ │ │ │ │ ├── ui │ │ │ │ │ │ ├── SingleCard.java │ │ │ │ │ │ ├── ViewStubDemoFragment.java │ │ │ │ │ │ ├── UiPerfFragment.java │ │ │ │ │ │ └── ListViewFragment.java │ │ │ │ │ ├── memory │ │ │ │ │ │ ├── Images.java │ │ │ │ │ │ ├── ImageGridFragment.java │ │ │ │ │ │ └── BitmapMemeryFragment.java │ │ │ │ │ └── multitask │ │ │ │ │ │ └── JobScheduleFragment.java │ │ │ │ ├── TestThirdFragment.java │ │ │ │ ├── UiPerfMoniterFragment.java │ │ │ │ ├── PerformanceFragment.java │ │ │ │ ├── base │ │ │ │ │ └── MyFragmentPagerAdapter.java │ │ │ │ └── ContactFragment.java │ │ │ │ ├── config │ │ │ │ └── PageIndexer.java │ │ │ │ ├── business │ │ │ │ └── contact │ │ │ │ │ ├── ContactInfo.java │ │ │ │ │ └── ContactsManager.java │ │ │ │ ├── ui │ │ │ │ ├── TopBar.java │ │ │ │ ├── ListViewWithViewPager.java │ │ │ │ └── MultiCardsView.java │ │ │ │ ├── androidsyncadapter │ │ │ │ ├── TestSyncService.java │ │ │ │ └── TestContentProvider.java │ │ │ │ ├── GmfSharedPreferences.java │ │ │ │ ├── GmfApplication.java │ │ │ │ └── CrashHandler.java │ │ └── AndroidManifest.xml │ └── androidTest │ │ └── java │ │ └── com │ │ └── android │ │ └── androidtech │ │ └── ApplicationTest.java ├── proguard-rules.pro └── build.gradle ├── miniimageloder ├── .gitignore ├── src │ ├── main │ │ ├── res │ │ │ └── values │ │ │ │ └── strings.xml │ │ ├── AndroidManifest.xml │ │ └── java │ │ │ └── com │ │ │ └── android │ │ │ └── miniimageloader │ │ │ ├── config │ │ │ ├── MiniImageLoaderConfig.java │ │ │ └── BitmapConfig.java │ │ │ ├── utils │ │ │ ├── CloseUtil.java │ │ │ ├── FileUtil.java │ │ │ ├── MLog.java │ │ │ └── BitmapUtil.java │ │ │ ├── cache │ │ │ ├── ImageCache.java │ │ │ └── MemoryCache.java │ │ │ ├── MiniImageLoader.java │ │ │ └── ImageLoader.java │ └── androidTest │ │ └── java │ │ └── com │ │ └── android │ │ └── miniimageloader │ │ └── ApplicationTest.java ├── build.gradle └── proguard-rules.pro ├── settings.gradle ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── .gitignore ├── README.md ├── gradle.properties ├── AndroidTech.iml ├── gradlew.bat └── gradlew /app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /miniimageloder/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app', ':miniimageloder' 2 | -------------------------------------------------------------------------------- /app/libs/gson-2.3.1.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lyc7898/AndroidTech/HEAD/app/libs/gson-2.3.1.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lyc7898/AndroidTech/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .gradle 2 | /local.properties 3 | /.idea/workspace.xml 4 | /.idea/libraries 5 | .DS_Store 6 | /build 7 | /captures 8 | -------------------------------------------------------------------------------- /app/src/main/assets/jpg_1920_1080.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lyc7898/AndroidTech/HEAD/app/src/main/assets/jpg_1920_1080.jpg -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lyc7898/AndroidTech/HEAD/app/src/main/res/mipmap-xhdpi/logo.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/test3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lyc7898/AndroidTech/HEAD/app/src/main/res/mipmap-xhdpi/test3.jpg -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/main_bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lyc7898/AndroidTech/HEAD/app/src/main/res/mipmap-xhdpi/main_bg.png -------------------------------------------------------------------------------- /miniimageloder/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | MiniImageLoder 3 | 4 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lyc7898/AndroidTech/HEAD/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lyc7898/AndroidTech/HEAD/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lyc7898/AndroidTech/HEAD/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lyc7898/AndroidTech/HEAD/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/activity_back_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lyc7898/AndroidTech/HEAD/app/src/main/res/mipmap-xhdpi/activity_back_normal.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/activity_back_pressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lyc7898/AndroidTech/HEAD/app/src/main/res/mipmap-xhdpi/activity_back_pressed.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/maintabbar_button_search_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lyc7898/AndroidTech/HEAD/app/src/main/res/mipmap-xhdpi/maintabbar_button_search_normal.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/maintabbar_button_search_highlight.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lyc7898/AndroidTech/HEAD/app/src/main/res/mipmap-xhdpi/maintabbar_button_search_highlight.png -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_red_dot.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /app/src/main/java/com/android/androidtech/monitor/MonitorConfig.java: -------------------------------------------------------------------------------- 1 | package com.android.androidtech.monitor; 2 | 3 | /** 4 | * Created by yuchengluo on 2016/3/31. 5 | */ 6 | public class MonitorConfig { 7 | static boolean ENABLE_UI_PERF_MONITOR = true; 8 | } 9 | -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Wed Apr 10 15:27:10 PDT 2013 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.2-all.zip 7 | -------------------------------------------------------------------------------- /miniimageloder/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /app/src/main/java/com/android/androidtech/database/tables/DBConfig.java: -------------------------------------------------------------------------------- 1 | package com.android.androidtech.database.tables; 2 | 3 | /** 4 | * Created by yuchengluo on 2015/6/29. 5 | */ 6 | public interface DBConfig { 7 | public static final String DATABASE_FILE = "QmfDb"; // DB文件名 8 | public static final int DB_VER = 1; // 9 | } 10 | -------------------------------------------------------------------------------- /app/src/main/java/com/android/androidtech/monitor/ui/LogPrinterListener.java: -------------------------------------------------------------------------------- 1 | package com.android.androidtech.monitor.ui; 2 | 3 | /** 4 | * Created by yuchengluo on 2016/4/1. 5 | */ 6 | public interface LogPrinterListener { 7 | void onStartLoop(); 8 | void onEndLoop(long starttime,long endtime,String loginfo,int level); 9 | } 10 | -------------------------------------------------------------------------------- /app/src/main/java/com/android/androidtech/monitor/time/TimeMonitorConfig.java: -------------------------------------------------------------------------------- 1 | package com.android.androidtech.monitor.time; 2 | 3 | /** 4 | * Created by yuchengluo on 2016/3/25. 5 | */ 6 | public class TimeMonitorConfig { 7 | public static final int TIME_MONITOR_ID_APPLICATION_START = 1; 8 | public static final int TIME_MONITOR_ID_SQLITE= 2; 9 | } 10 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/hp_button_right.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/maintabbar_button_search_selector.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 64dp 6 | 7 | -------------------------------------------------------------------------------- /app/src/main/res/menu/menu_layout_per.xml: -------------------------------------------------------------------------------- 1 | 5 | 7 | 8 | -------------------------------------------------------------------------------- /app/src/androidTest/java/com/android/androidtech/ApplicationTest.java: -------------------------------------------------------------------------------- 1 | package com.android.androidtech; 2 | 3 | import android.app.Application; 4 | import android.test.ApplicationTestCase; 5 | 6 | /** 7 | * Testing Fundamentals 8 | */ 9 | public class ApplicationTest extends ApplicationTestCase { 10 | public ApplicationTest() { 11 | super(Application.class); 12 | } 13 | } -------------------------------------------------------------------------------- /app/src/main/java/com/android/androidtech/utils/Util4Phone.java: -------------------------------------------------------------------------------- 1 | package com.android.androidtech.utils; 2 | 3 | import android.os.Build; 4 | 5 | /** 6 | * Created by yuchengluo on 2015/6/26. 7 | */ 8 | public class Util4Phone { 9 | 10 | /** 11 | * 12 | * @Discription:TODO 13 | * @return 14 | */ 15 | public static boolean isSupportAnimation() { 16 | return android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB; 17 | } 18 | } 19 | 20 | -------------------------------------------------------------------------------- /miniimageloder/src/androidTest/java/com/android/miniimageloader/ApplicationTest.java: -------------------------------------------------------------------------------- 1 | package com.android.miniimageloader; 2 | 3 | import android.app.Application; 4 | import android.test.ApplicationTestCase; 5 | 6 | /** 7 | * Testing Fundamentals 8 | */ 9 | public class ApplicationTest extends ApplicationTestCase { 10 | public ApplicationTest() { 11 | super(Application.class); 12 | } 13 | } -------------------------------------------------------------------------------- /app/src/main/res/drawable/img_top_back.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /miniimageloder/src/main/java/com/android/miniimageloader/config/MiniImageLoaderConfig.java: -------------------------------------------------------------------------------- 1 | package com.android.miniimageloader.config; 2 | 3 | import android.support.annotation.IntDef; 4 | 5 | import java.lang.annotation.Retention; 6 | import java.lang.annotation.RetentionPolicy; 7 | 8 | /** 9 | * Created by yuchengluo on 2016/5/3. 10 | */ 11 | public class MiniImageLoaderConfig { 12 | public static final int VESION_IMAGELOADER = 1; 13 | public static final long DEFAULT_DISK_CACHE_SIZE = 10 * 1024 * 1024;//10M 14 | } 15 | -------------------------------------------------------------------------------- /app/src/main/res/layout/list_item.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 14 | 15 | -------------------------------------------------------------------------------- /app/src/main/res/values/attrs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /miniimageloder/src/main/java/com/android/miniimageloader/utils/CloseUtil.java: -------------------------------------------------------------------------------- 1 | package com.android.miniimageloader.utils; 2 | 3 | import java.io.Closeable; 4 | import java.io.IOException; 5 | 6 | /** 7 | * Created by yuchengluo on 2016/5/7. 8 | */ 9 | public class CloseUtil { 10 | public static void closeQuietly(Closeable closeable){ 11 | if(null != closeable){ 12 | try{ 13 | closeable.close(); 14 | }catch (IOException e){ 15 | e.printStackTrace(); 16 | } 17 | } 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /app/src/main/java/com/android/androidtech/jobscheduler/JobSchedulerService.java: -------------------------------------------------------------------------------- 1 | package com.android.androidtech.jobscheduler; 2 | 3 | import android.app.job.JobParameters; 4 | import android.app.job.JobService; 5 | 6 | /** 7 | * Created by yuchengluo on 2016/6/30. 8 | */ 9 | 10 | public class JobSchedulerService extends JobService{ 11 | @Override 12 | public boolean onStartJob(JobParameters params) { 13 | return false; 14 | } 15 | 16 | @Override 17 | public boolean onStopJob(JobParameters params) { 18 | return false; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 210dip 5 | 96dip 6 | 50dip 7 | 48dip 8 | 60dip 9 | 10 | 16dp 11 | 16dp 12 | -------------------------------------------------------------------------------- /app/src/main/res/layout/viewstub_text_layout1.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 14 | -------------------------------------------------------------------------------- /app/src/main/res/layout/fragment_third.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 13 | -------------------------------------------------------------------------------- /miniimageloder/build.gradle: -------------------------------------------------------------------------------- 1 | apply plugin: 'com.android.library' 2 | 3 | android { 4 | compileSdkVersion 23 5 | buildToolsVersion "23.0.1" 6 | 7 | defaultConfig { 8 | minSdkVersion 14 9 | targetSdkVersion 23 10 | versionCode 1 11 | versionName "1.0" 12 | } 13 | buildTypes { 14 | release { 15 | minifyEnabled false 16 | proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 17 | } 18 | } 19 | } 20 | 21 | dependencies { 22 | compile 'com.android.support:support-annotations:22.0.0' 23 | } 24 | -------------------------------------------------------------------------------- /app/src/main/java/com/android/androidtech/monitor/memory/TestDataModel.java: -------------------------------------------------------------------------------- 1 | package com.android.androidtech.monitor.memory; 2 | 3 | import android.widget.TextView; 4 | 5 | public class TestDataModel { 6 | 7 | private static TestDataModel sInstance; 8 | private TextView mRetainedTextView; 9 | 10 | public static TestDataModel getInstance() { 11 | if (sInstance == null) { 12 | sInstance = new TestDataModel(); 13 | } 14 | return sInstance; 15 | } 16 | 17 | public void setRetainedTextView(TextView textView) { 18 | mRetainedTextView = textView; 19 | } 20 | } -------------------------------------------------------------------------------- /app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #66000000 4 | #FFFFFFFF 5 | #ff0000 6 | #0000ff 7 | #ffff00 8 | #00ff00 9 | #000000 10 | #00000000 11 | #CF000000 12 | #E0000000 13 | #F8F8F8 14 | #ABABAB 15 | 16 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # AndroidTech 2 | This is a performance optimization project source code, including optimization of UI/memory and other aspects. 3 | 这是一个教学DEMO,主要是性能优化方面的一些案例,架构主要分成三个方面。 4 | 一.UI层(界面) 5 | 1.全局只有两个Activity,启动页面AppStartActivity和主页面HomepageActivity,其它都是Fragment,所有界面间的切换都是Fragment的切换。 6 | 2.所有的界面都在:com.ycl.androidtech.fragment包下,下一级目录: 7 | (1)base:Fragment基类。 8 | (2)homepage:首页。 9 | (3)ui: 界面设计的一些DEMO。 10 | (4)memery:内存优化的一些DEMO。 11 | 二.工具 12 | 1.监控工具 13 | (1)UI卡顿监控 com.ycl.androidtech.monitor.ui。 14 | (2)内存监控:com.ycl.androidtech.monitor.memory。 15 | (3)耗时上报工具:com.ycl.androidtech.monitor.time 16 | 三.引擎模块 17 | 1.图片引擎:MiniImageLoader. 18 | 2.数据库引擎。 -------------------------------------------------------------------------------- /app/src/main/res/layout/fm_listview.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 13 | 14 | 18 | 19 | -------------------------------------------------------------------------------- /app/src/main/res/layout/list.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 13 | 14 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /app/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Add project specific ProGuard rules here. 2 | # By default, the flags in this file are appended to flags specified 3 | # in G:\DevSoft\adt-bundle-windows-x86-20140702\sdk/tools/proguard/proguard-android.txt 4 | # You can edit the include path and order by changing the proguardFiles 5 | # directive in build.gradle. 6 | # 7 | # For more details, see 8 | # http://developer.android.com/guide/developing/tools/proguard.html 9 | 10 | # Add any project specific keep options here: 11 | 12 | # If your project uses WebView with JS, uncomment the following 13 | # and specify the fully qualified class name to the JavaScript interface 14 | # class: 15 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 16 | # public *; 17 | #} 18 | -------------------------------------------------------------------------------- /miniimageloder/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Add project specific ProGuard rules here. 2 | # By default, the flags in this file are appended to flags specified 3 | # in D:\DevSoft\adt-bundle-windows-x86-20140702\sdk/tools/proguard/proguard-android.txt 4 | # You can edit the include path and order by changing the proguardFiles 5 | # directive in build.gradle. 6 | # 7 | # For more details, see 8 | # http://developer.android.com/guide/developing/tools/proguard.html 9 | 10 | # Add any project specific keep options here: 11 | 12 | # If your project uses WebView with JS, uncomment the following 13 | # and specify the fully qualified class name to the JavaScript interface 14 | # class: 15 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 16 | # public *; 17 | #} 18 | -------------------------------------------------------------------------------- /app/src/main/res/layout/fragmet_test.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 |