diff options
author | Kazuki Yamaguchi <k@rhe.jp> | 2017-10-01 19:42:13 +0900 |
---|---|---|
committer | Kazuki Yamaguchi <k@rhe.jp> | 2017-10-01 19:42:13 +0900 |
commit | b471085c2b2d6229bb6fb54a6d444802147a7392 (patch) | |
tree | 90ed43686d23391433ce938afabcc605afdd1b3f | |
parent | d8b158b4b6195711cbb7e50c90c436ae220b17cb (diff) | |
download | SmileEssence-b471085c2b2d6229bb6fb54a6d444802147a7392.tar.gz |
remove leakcanary for now
8 files changed, 32 insertions, 92 deletions
diff --git a/.idea/kotlinc.xml b/.idea/kotlinc.xml new file mode 100644 index 00000000..d80eed3c --- /dev/null +++ b/.idea/kotlinc.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="KotlinCommonCompilerArguments"> + <option name="languageVersion" value="1.0" /> + <option name="apiVersion" value="1.0" /> + </component> +</project>
\ No newline at end of file diff --git a/app/app.iml b/app/app.iml index 54fb7da4..e0ae65c6 100644 --- a/app/app.iml +++ b/app/app.iml @@ -9,7 +9,6 @@ <facet type="android" name="Android"> <configuration> <option name="SELECTED_BUILD_VARIANT" value="debug" /> - <option name="SELECTED_TEST_ARTIFACT" value="_android_test_" /> <option name="ASSEMBLE_TASK_NAME" value="assembleDebug" /> <option name="COMPILE_JAVA_TASK_NAME" value="compileDebugSources" /> <afterSyncTasks> @@ -22,8 +21,25 @@ <option name="ASSETS_FOLDER_RELATIVE_PATH" value="/src/main/assets" /> </configuration> </facet> + <facet type="kotlin-language" name="Kotlin"> + <configuration version="3" platform="JVM 1.8" useProjectSettings="false"> + <compilerSettings /> + <compilerArguments> + <option name="jvmTarget" value="1.8" /> + <option name="languageVersion" value="1.0" /> + <option name="apiVersion" value="1.0" /> + <option name="pluginOptions"> + <array /> + </option> + <option name="pluginClasspaths"> + <array /> + </option> + <option name="version" value="true" /> + </compilerArguments> + </configuration> + </facet> </component> - <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8" inherit-compiler-output="false"> + <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8"> <output url="file://$MODULE_DIR$/build/intermediates/classes/debug" /> <output-test url="file://$MODULE_DIR$/build/intermediates/classes/test/debug" /> <exclude-output /> @@ -50,7 +66,6 @@ <sourceFolder url="file://$MODULE_DIR$/src/debug/assets" type="java-resource" /> <sourceFolder url="file://$MODULE_DIR$/src/debug/aidl" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/src/debug/java" isTestSource="false" /> - <sourceFolder url="file://$MODULE_DIR$/src/debug/jni" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/src/debug/rs" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/src/debug/shaders" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/src/testDebug/res" type="java-test-resource" /> @@ -58,7 +73,6 @@ <sourceFolder url="file://$MODULE_DIR$/src/testDebug/assets" type="java-test-resource" /> <sourceFolder url="file://$MODULE_DIR$/src/testDebug/aidl" isTestSource="true" /> <sourceFolder url="file://$MODULE_DIR$/src/testDebug/java" isTestSource="true" /> - <sourceFolder url="file://$MODULE_DIR$/src/testDebug/jni" isTestSource="true" /> <sourceFolder url="file://$MODULE_DIR$/src/testDebug/rs" isTestSource="true" /> <sourceFolder url="file://$MODULE_DIR$/src/testDebug/shaders" isTestSource="true" /> <sourceFolder url="file://$MODULE_DIR$/src/main/res" type="java-resource" /> @@ -67,25 +81,22 @@ <sourceFolder url="file://$MODULE_DIR$/src/main/aidl" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/src/main/kotlin" isTestSource="false" /> - <sourceFolder url="file://$MODULE_DIR$/src/main/jni" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/src/main/rs" isTestSource="false" /> <sourceFolder url="file://$MODULE_DIR$/src/main/shaders" isTestSource="false" /> - <sourceFolder url="file://$MODULE_DIR$/src/androidTest/res" type="java-test-resource" /> - <sourceFolder url="file://$MODULE_DIR$/src/androidTest/resources" type="java-test-resource" /> - <sourceFolder url="file://$MODULE_DIR$/src/androidTest/assets" type="java-test-resource" /> - <sourceFolder url="file://$MODULE_DIR$/src/androidTest/aidl" isTestSource="true" /> - <sourceFolder url="file://$MODULE_DIR$/src/androidTest/java" isTestSource="true" /> - <sourceFolder url="file://$MODULE_DIR$/src/androidTest/jni" isTestSource="true" /> - <sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" /> - <sourceFolder url="file://$MODULE_DIR$/src/androidTest/shaders" isTestSource="true" /> <sourceFolder url="file://$MODULE_DIR$/src/test/res" type="java-test-resource" /> <sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" /> <sourceFolder url="file://$MODULE_DIR$/src/test/assets" type="java-test-resource" /> <sourceFolder url="file://$MODULE_DIR$/src/test/aidl" isTestSource="true" /> <sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" /> - <sourceFolder url="file://$MODULE_DIR$/src/test/jni" isTestSource="true" /> <sourceFolder url="file://$MODULE_DIR$/src/test/rs" isTestSource="true" /> <sourceFolder url="file://$MODULE_DIR$/src/test/shaders" isTestSource="true" /> + <sourceFolder url="file://$MODULE_DIR$/src/androidTest/res" type="java-test-resource" /> + <sourceFolder url="file://$MODULE_DIR$/src/androidTest/resources" type="java-test-resource" /> + <sourceFolder url="file://$MODULE_DIR$/src/androidTest/assets" type="java-test-resource" /> + <sourceFolder url="file://$MODULE_DIR$/src/androidTest/aidl" isTestSource="true" /> + <sourceFolder url="file://$MODULE_DIR$/src/androidTest/java" isTestSource="true" /> + <sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" /> + <sourceFolder url="file://$MODULE_DIR$/src/androidTest/shaders" isTestSource="true" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/assets" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/blame" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/builds" /> @@ -109,7 +120,6 @@ <excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.github.gfx.android.orma/orma-migration/2.6.0/jars" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.github.gfx.android.orma/orma/2.6.0/jars" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.navercorp.pulltorefresh/library/3.3.0-SNAPSHOT/jars" /> - <excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/com.squareup.leakcanary/leakcanary-android/1.4/jars" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/de.keyboardsurfer.android.widget/crouton/1.8.5/jars" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/exploded-aar/io.fabric.sdk.android/fabric/1.3.10/jars" /> <excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental" /> @@ -136,19 +146,15 @@ <orderEntry type="sourceFolder" forTests="false" /> <orderEntry type="library" exported="" name="library-1.0.19" level="project" /> <orderEntry type="library" exported="" name="juniversalchardet-1.0.3" level="project" /> - <orderEntry type="library" exported="" name="haha-2.0.3" level="project" /> <orderEntry type="library" exported="" name="library-3.3.0-SNAPSHOT" level="project" /> - <orderEntry type="library" exported="" name="leakcanary-analyzer-1.4" level="project" /> <orderEntry type="library" exported="" name="compiler-2.2.0" level="project" /> <orderEntry type="library" exported="" name="adapters-1.2.1" level="project" /> <orderEntry type="library" exported="" name="support-fragment-25.1.0" level="project" /> <orderEntry type="library" exported="" name="support-v13-25.1.0" level="project" /> <orderEntry type="library" exported="" name="baseLibrary-2.2.0" level="project" /> <orderEntry type="library" exported="" name="antlr4-runtime-4.5" level="project" /> - <orderEntry type="library" exported="" name="leakcanary-watcher-1.4" level="project" /> <orderEntry type="library" exported="" name="support-core-ui-25.1.0" level="project" /> <orderEntry type="library" exported="" name="twitter4j-stream-4.0.6" level="project" /> - <orderEntry type="library" exported="" name="leakcanary-android-1.4" level="project" /> <orderEntry type="library" exported="" name="library-1.2.1" level="project" /> <orderEntry type="library" exported="" name="support-core-utils-25.1.0" level="project" /> <orderEntry type="library" exported="" name="fabric-1.3.10" level="project" /> diff --git a/app/build.gradle b/app/build.gradle index 33051a39..fb3267ac 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -82,11 +82,6 @@ dependencies { // guava compile 'com.google.guava:guava:19.0' - // LeakCanary - debugCompile 'com.squareup.leakcanary:leakcanary-android:1.4' - releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.4' - release2Compile 'com.squareup.leakcanary:leakcanary-android-no-op:1.4' - // Fabric compile('com.crashlytics.sdk.android:crashlytics:2.5.5@aar') { transitive = true; diff --git a/app/src/main/java/net/lacolaco/smileessence/Application.java b/app/src/main/java/net/lacolaco/smileessence/Application.java index 0b2b07ab..e46d31d6 100644 --- a/app/src/main/java/net/lacolaco/smileessence/Application.java +++ b/app/src/main/java/net/lacolaco/smileessence/Application.java @@ -28,20 +28,12 @@ import android.app.Activity; import android.os.Bundle; import com.crashlytics.android.Crashlytics; import com.crashlytics.android.core.CrashlyticsCore; -import com.squareup.haha.perflib.Main; -import com.squareup.leakcanary.LeakCanary; -import com.squareup.leakcanary.RefWatcher; import io.fabric.sdk.android.Fabric; import net.lacolaco.smileessence.activity.MainActivity; import net.lacolaco.smileessence.data.Account; import net.lacolaco.smileessence.data.OrmaHolder; import net.lacolaco.smileessence.logging.Logger; import net.lacolaco.smileessence.preference.UserPreferenceHelper; -import net.lacolaco.smileessence.util.UIHandler; - -import java.util.Collections; -import java.util.Set; -import java.util.WeakHashMap; /** * プロセスと同期しているオブジェクト @@ -52,7 +44,6 @@ public class Application extends android.app.Application { private static Application instance; private MainActivity lastUsedMainActivity; private int resId; - private RefWatcher refWatcher; @Override public void onCreate() { @@ -60,7 +51,6 @@ public class Application extends android.app.Application { Fabric.with(this, new Crashlytics.Builder().core(new CrashlyticsCore.Builder().disabled(BuildConfig.DEBUG).build()).build()); OrmaHolder.initialize(this); instance = this; // プロセスの寿命の間 1 度しか呼ばれないので安全 - refWatcher = LeakCanary.install(this); registerActivityLifecycleCallbacks(new ActivityLifeCycleListener()); Logger.debug("onCreate"); } @@ -104,11 +94,6 @@ public class Application extends android.app.Application { void onCurrentAccountChanged(Account newAccount); } - // --------------------- LeakCanary --------------------- - public RefWatcher getRefWatcher() { - return refWatcher; - } - private class ActivityLifeCycleListener implements ActivityLifecycleCallbacks { @Override public void onActivityCreated(Activity activity, Bundle savedInstanceState) { diff --git a/app/src/main/java/net/lacolaco/smileessence/activity/MainActivity.java b/app/src/main/java/net/lacolaco/smileessence/activity/MainActivity.java index fef4e7e2..4e1b50e0 100644 --- a/app/src/main/java/net/lacolaco/smileessence/activity/MainActivity.java +++ b/app/src/main/java/net/lacolaco/smileessence/activity/MainActivity.java @@ -268,44 +268,9 @@ public class MainActivity extends Activity implements Application.OnCurrentAccou if (stream != null) { new Thread(stream::shutdown).start(); } - if (BuildConfig.DEBUG) fixIMMLeak(); // LeakCanary shows - fixCroutonLeak(); Logger.debug("onDestroy"); } - private void fixIMMLeak() { - if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) { - try { - Object imm = getSystemService(Context.INPUT_METHOD_SERVICE); - Field mCurRootView = imm.getClass().getDeclaredField("mCurRootView"); - mCurRootView.setAccessible(true); - mCurRootView.set(imm, null); - Field mServedView = imm.getClass().getDeclaredField("mServedView"); - mServedView.setAccessible(true); - mServedView.set(imm, null); - Field mNextServedView = imm.getClass().getDeclaredField("mNextServedView"); - mNextServedView.setAccessible(true); - mNextServedView.set(imm, null); - } catch (Exception e) { - Logger.debug("imm fix error: " + e); - } - } - } - - private void fixCroutonLeak() { - try { - Class klass = Class.forName("de.keyboardsurfer.android.widget.crouton.DefaultAnimationsBuilder"); - Field slideInDownAnimation = klass.getDeclaredField("slideInDownAnimation"); - slideInDownAnimation.setAccessible(true); - slideInDownAnimation.set(null, null); - Field slideOutUpAnimation = klass.getDeclaredField("slideOutUpAnimation"); - slideOutUpAnimation.setAccessible(true); - slideOutUpAnimation.set(null, null); - } catch (Exception e) { - Logger.error("crouton fix error: " + e); - } - } - @Override protected void onNewIntent(Intent intent) { IntentRouter.onNewIntent(this, intent); diff --git a/app/src/main/java/net/lacolaco/smileessence/view/SettingFragment.java b/app/src/main/java/net/lacolaco/smileessence/view/SettingFragment.java index 6b198310..d9891a49 100644 --- a/app/src/main/java/net/lacolaco/smileessence/view/SettingFragment.java +++ b/app/src/main/java/net/lacolaco/smileessence/view/SettingFragment.java @@ -126,12 +126,6 @@ public class SettingFragment extends PreferenceFragment implements OnSharedPrefe sharedPreferences.registerOnSharedPreferenceChangeListener(this); } - @Override - public void onDestroy() { - super.onDestroy(); - Application.getInstance().getRefWatcher().watch(this); - } - // -------------------------- OTHER METHODS -------------------------- public Preference findPreference(int preferenceResID) { diff --git a/app/src/main/java/net/lacolaco/smileessence/view/dialog/StackableDialogFragment.java b/app/src/main/java/net/lacolaco/smileessence/view/dialog/StackableDialogFragment.java index 1fa5ff11..427c4884 100644 --- a/app/src/main/java/net/lacolaco/smileessence/view/dialog/StackableDialogFragment.java +++ b/app/src/main/java/net/lacolaco/smileessence/view/dialog/StackableDialogFragment.java @@ -16,10 +16,4 @@ public class StackableDialogFragment extends DialogFragment { super.dismissAllowingStateLoss(); DialogHelper.unregisterDialog(getTag()); } - - @Override - public void onDestroy() { - super.onDestroy(); - Application.getInstance().getRefWatcher().watch(this); - } } diff --git a/app/src/main/java/net/lacolaco/smileessence/view/page/PageFragment.java b/app/src/main/java/net/lacolaco/smileessence/view/page/PageFragment.java index cd59854c..d9393ccd 100644 --- a/app/src/main/java/net/lacolaco/smileessence/view/page/PageFragment.java +++ b/app/src/main/java/net/lacolaco/smileessence/view/page/PageFragment.java @@ -17,10 +17,4 @@ public abstract class PageFragment<T extends Adapter> extends Fragment { } public abstract void refresh(); - - @Override - public void onDestroy() { - super.onDestroy(); - Application.getInstance().getRefWatcher().watch(this); - } } |