diff --git a/.gitignore b/.gitignore index 5edb4ee..d28b69f 100644 --- a/.gitignore +++ b/.gitignore @@ -1,10 +1,9 @@ *.iml .gradle /local.properties -/.idea/libraries -/.idea/modules.xml -/.idea/workspace.xml +/.idea .DS_Store /build /captures .externalNativeBuild +.idea/ diff --git a/.idea/caches/build_file_checksums.ser b/.idea/caches/build_file_checksums.ser new file mode 100644 index 0000000..830f80c Binary files /dev/null and b/.idea/caches/build_file_checksums.ser differ diff --git a/.idea/caches/gradle_models.ser b/.idea/caches/gradle_models.ser new file mode 100644 index 0000000..ce3d383 Binary files /dev/null and b/.idea/caches/gradle_models.ser differ diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml index 30aa626..681f41a 100644 --- a/.idea/codeStyles/Project.xml +++ b/.idea/codeStyles/Project.xml @@ -1,29 +1,116 @@ - - - - - - - - - - + + + + + +
+ + + + xmlns:android + + ^$ + + + +
+
+ + + + xmlns:.* + + ^$ + + + BY_NAME + +
+
+ + + + .*:id + + http://schemas.android.com/apk/res/android + + + +
+
+ + + + .*:name + + http://schemas.android.com/apk/res/android + + + +
+
+ + + + name + + ^$ + + + +
+
+ + + + style + + ^$ + + + +
+
+ + + + .* + + ^$ + + + BY_NAME + +
+
+ + + + .* + + http://schemas.android.com/apk/res/android + + + ANDROID_ATTRIBUTE_ORDER + +
+
+ + + + .* + + .* + + + BY_NAME + +
+
+
+
\ No newline at end of file diff --git a/.idea/compiler.xml b/.idea/compiler.xml new file mode 100644 index 0000000..61a9130 --- /dev/null +++ b/.idea/compiler.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/encodings.xml b/.idea/encodings.xml new file mode 100644 index 0000000..15a15b2 --- /dev/null +++ b/.idea/encodings.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/.idea/gradle.xml b/.idea/gradle.xml index 76a4349..61a93ca 100644 --- a/.idea/gradle.xml +++ b/.idea/gradle.xml @@ -1,11 +1,19 @@ + diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml new file mode 100644 index 0000000..247f71d --- /dev/null +++ b/.idea/jarRepositories.xml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/kotlinc.xml b/.idea/kotlinc.xml new file mode 100644 index 0000000..5806fb3 --- /dev/null +++ b/.idea/kotlinc.xml @@ -0,0 +1,7 @@ + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index 3801c33..28c375f 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,11 +1,12 @@ + - + diff --git a/.idea/runConfigurations.xml b/.idea/runConfigurations.xml deleted file mode 100644 index 7f68460..0000000 --- a/.idea/runConfigurations.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml index 35eb1dd..288b36b 100644 --- a/.idea/vcs.xml +++ b/.idea/vcs.xml @@ -1,6 +1,7 @@ - + + \ No newline at end of file diff --git a/AndroidLearnProject/.idea/caches/build_file_checksums.ser b/AndroidLearnProject/.idea/caches/build_file_checksums.ser deleted file mode 100644 index 0e1920c..0000000 Binary files a/AndroidLearnProject/.idea/caches/build_file_checksums.ser and /dev/null differ diff --git a/AndroidLearnProject/.idea/codeStyles/Project.xml b/AndroidLearnProject/.idea/codeStyles/Project.xml deleted file mode 100644 index 30aa626..0000000 --- a/AndroidLearnProject/.idea/codeStyles/Project.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/gradle.xml b/AndroidLearnProject/.idea/gradle.xml deleted file mode 100644 index 2063f8f..0000000 --- a/AndroidLearnProject/.idea/gradle.xml +++ /dev/null @@ -1,20 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle____local_aars____Users_GaoLei_gaolei_Android_Github_AndroidLearnProject_AndroidLearnProject_basemodule_libs_Msc_jar_unspecified_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle____local_aars____Users_GaoLei_gaolei_Android_Github_AndroidLearnProject_AndroidLearnProject_basemodule_libs_Msc_jar_unspecified_jar.xml deleted file mode 100644 index bde0b05..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle____local_aars____Users_GaoLei_gaolei_Android_Github_AndroidLearnProject_AndroidLearnProject_basemodule_libs_Msc_jar_unspecified_jar.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle____local_aars____Users_GaoLei_gaolei_Android_Github_AndroidLearnProject_AndroidLearnProject_basemodule_libs_Sunflower_jar_unspecified_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle____local_aars____Users_GaoLei_gaolei_Android_Github_AndroidLearnProject_AndroidLearnProject_basemodule_libs_Sunflower_jar_unspecified_jar.xml deleted file mode 100644 index 7fe50db..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle____local_aars____Users_GaoLei_gaolei_Android_Github_AndroidLearnProject_AndroidLearnProject_basemodule_libs_Sunflower_jar_unspecified_jar.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle____local_aars____Users_GaoLei_gaolei_Android_Github_AndroidLearnProject_AndroidLearnProject_basemodule_libs_activation_jar_unspecified_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle____local_aars____Users_GaoLei_gaolei_Android_Github_AndroidLearnProject_AndroidLearnProject_basemodule_libs_activation_jar_unspecified_jar.xml deleted file mode 100644 index 8782627..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle____local_aars____Users_GaoLei_gaolei_Android_Github_AndroidLearnProject_AndroidLearnProject_basemodule_libs_activation_jar_unspecified_jar.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle____local_aars____Users_GaoLei_gaolei_Android_Github_AndroidLearnProject_AndroidLearnProject_basemodule_libs_additionnal_jar_unspecified_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle____local_aars____Users_GaoLei_gaolei_Android_Github_AndroidLearnProject_AndroidLearnProject_basemodule_libs_additionnal_jar_unspecified_jar.xml deleted file mode 100644 index 0bb2e23..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle____local_aars____Users_GaoLei_gaolei_Android_Github_AndroidLearnProject_AndroidLearnProject_basemodule_libs_additionnal_jar_unspecified_jar.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle____local_aars____Users_GaoLei_gaolei_Android_Github_AndroidLearnProject_AndroidLearnProject_basemodule_libs_mail_jar_unspecified_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle____local_aars____Users_GaoLei_gaolei_Android_Github_AndroidLearnProject_AndroidLearnProject_basemodule_libs_mail_jar_unspecified_jar.xml deleted file mode 100644 index b6f1359..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle____local_aars____Users_GaoLei_gaolei_Android_Github_AndroidLearnProject_AndroidLearnProject_basemodule_libs_mail_jar_unspecified_jar.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__android_arch_core_common_1_0_0_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__android_arch_core_common_1_0_0_jar.xml deleted file mode 100644 index 0647ff1..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__android_arch_core_common_1_0_0_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__android_arch_lifecycle_common_1_0_0_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__android_arch_lifecycle_common_1_0_0_jar.xml deleted file mode 100644 index 7d25f6b..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__android_arch_lifecycle_common_1_0_0_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__android_arch_lifecycle_common_1_0_3_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__android_arch_lifecycle_common_1_0_3_jar.xml deleted file mode 100644 index b112cae..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__android_arch_lifecycle_common_1_0_3_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__android_arch_lifecycle_runtime_1_0_0.xml b/AndroidLearnProject/.idea/libraries/Gradle__android_arch_lifecycle_runtime_1_0_0.xml deleted file mode 100644 index 5f50bde..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__android_arch_lifecycle_runtime_1_0_0.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__android_arch_lifecycle_runtime_1_0_3.xml b/AndroidLearnProject/.idea/libraries/Gradle__android_arch_lifecycle_runtime_1_0_3.xml deleted file mode 100644 index 4facbde..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__android_arch_lifecycle_runtime_1_0_3.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__cat_ereza_customactivityoncrash_2_2_0.xml b/AndroidLearnProject/.idea/libraries/Gradle__cat_ereza_customactivityoncrash_2_2_0.xml deleted file mode 100644 index c0f31fc..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__cat_ereza_customactivityoncrash_2_2_0.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__cn_bingoogolapple_bga_swipebacklayout_1_2_0.xml b/AndroidLearnProject/.idea/libraries/Gradle__cn_bingoogolapple_bga_swipebacklayout_1_2_0.xml deleted file mode 100644 index dff440c..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__cn_bingoogolapple_bga_swipebacklayout_1_2_0.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__cn_lankton_flowlayout_1_0_1.xml b/AndroidLearnProject/.idea/libraries/Gradle__cn_lankton_flowlayout_1_0_1.xml deleted file mode 100644 index f073908..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__cn_lankton_flowlayout_1_0_1.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_animated_vector_drawable_26_1_0.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_animated_vector_drawable_26_1_0.xml deleted file mode 100644 index 7b4a829..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_animated_vector_drawable_26_1_0.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_animated_vector_drawable_27_0_1.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_animated_vector_drawable_27_0_1.xml deleted file mode 100644 index c9d2b7e..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_animated_vector_drawable_27_0_1.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_appcompat_v7_26_1_0.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_appcompat_v7_26_1_0.xml deleted file mode 100644 index 6518b6f..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_appcompat_v7_26_1_0.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_appcompat_v7_27_0_1.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_appcompat_v7_27_0_1.xml deleted file mode 100644 index 7da26ac..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_appcompat_v7_27_0_1.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_cardview_v7_26_1_0.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_cardview_v7_26_1_0.xml deleted file mode 100644 index 020fb40..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_cardview_v7_26_1_0.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_constraint_constraint_layout_1_1_0.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_constraint_constraint_layout_1_1_0.xml deleted file mode 100644 index 973447e..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_constraint_constraint_layout_1_1_0.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_constraint_constraint_layout_solver_1_1_0_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_constraint_constraint_layout_solver_1_1_0_jar.xml deleted file mode 100644 index 3297c5b..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_constraint_constraint_layout_solver_1_1_0_jar.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_design_26_1_0.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_design_26_1_0.xml deleted file mode 100644 index cdc410f..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_design_26_1_0.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_recyclerview_v7_26_1_0.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_recyclerview_v7_26_1_0.xml deleted file mode 100644 index 0e576e5..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_recyclerview_v7_26_1_0.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_annotations_26_1_0_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_annotations_26_1_0_jar.xml deleted file mode 100644 index 3371151..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_annotations_26_1_0_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_annotations_27_0_2_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_annotations_27_0_2_jar.xml deleted file mode 100644 index a33208b..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_annotations_27_0_2_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_compat_26_1_0.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_compat_26_1_0.xml deleted file mode 100644 index 1944452..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_compat_26_1_0.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_compat_27_0_2.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_compat_27_0_2.xml deleted file mode 100644 index 98fac6a..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_compat_27_0_2.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_core_ui_26_1_0.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_core_ui_26_1_0.xml deleted file mode 100644 index e7cccf7..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_core_ui_26_1_0.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_core_ui_27_0_2.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_core_ui_27_0_2.xml deleted file mode 100644 index 4edd11c..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_core_ui_27_0_2.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_core_utils_26_1_0.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_core_utils_26_1_0.xml deleted file mode 100644 index 1a47550..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_core_utils_26_1_0.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_core_utils_27_0_2.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_core_utils_27_0_2.xml deleted file mode 100644 index 54a6d1e..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_core_utils_27_0_2.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_fragment_26_1_0.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_fragment_26_1_0.xml deleted file mode 100644 index c73aa3b..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_fragment_26_1_0.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_fragment_27_0_2.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_fragment_27_0_2.xml deleted file mode 100644 index d79ec29..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_fragment_27_0_2.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_media_compat_26_1_0.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_media_compat_26_1_0.xml deleted file mode 100644 index 386ea6a..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_media_compat_26_1_0.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_v4_26_1_0.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_v4_26_1_0.xml deleted file mode 100644 index 3badac7..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_v4_26_1_0.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_vector_drawable_26_1_0.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_vector_drawable_26_1_0.xml deleted file mode 100644 index 10de8e6..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_vector_drawable_26_1_0.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_vector_drawable_27_0_1.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_vector_drawable_27_0_1.xml deleted file mode 100644 index 311e6f5..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_support_vector_drawable_27_0_1.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_transition_26_1_0.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_transition_26_1_0.xml deleted file mode 100644 index d1637f3..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_android_support_transition_26_1_0.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_github_CymChad_BaseRecyclerViewAdapterHelper_2_9_30.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_github_CymChad_BaseRecyclerViewAdapterHelper_2_9_30.xml deleted file mode 100644 index 337cce0..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_github_CymChad_BaseRecyclerViewAdapterHelper_2_9_30.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_github_bumptech_glide_annotations_4_6_1_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_github_bumptech_glide_annotations_4_6_1_jar.xml deleted file mode 100644 index 55f70c3..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_github_bumptech_glide_annotations_4_6_1_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_github_bumptech_glide_disklrucache_4_6_1_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_github_bumptech_glide_disklrucache_4_6_1_jar.xml deleted file mode 100644 index e4fcf74..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_github_bumptech_glide_disklrucache_4_6_1_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_github_bumptech_glide_gifdecoder_4_6_1.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_github_bumptech_glide_gifdecoder_4_6_1.xml deleted file mode 100644 index 6fc10e2..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_github_bumptech_glide_gifdecoder_4_6_1.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_github_bumptech_glide_glide_4_6_1.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_github_bumptech_glide_glide_4_6_1.xml deleted file mode 100644 index d196525..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_github_bumptech_glide_glide_4_6_1.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_github_devlight_infinitecycleviewpager_1_0_2.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_github_devlight_infinitecycleviewpager_1_0_2.xml deleted file mode 100644 index 920b6dd..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_github_devlight_infinitecycleviewpager_1_0_2.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_github_franmontiel_PersistentCookieJar_v1_0_1.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_github_franmontiel_PersistentCookieJar_v1_0_1.xml deleted file mode 100644 index 91a307f..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_github_franmontiel_PersistentCookieJar_v1_0_1.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_github_yyued_SVGAPlayer_Android_2_3_0.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_github_yyued_SVGAPlayer_Android_2_3_0.xml deleted file mode 100644 index 2e1f722..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_github_yyued_SVGAPlayer_Android_2_3_0.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_google_code_gson_gson_2_6_1_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_google_code_gson_gson_2_6_1_jar.xml deleted file mode 100644 index 0abbdc7..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_google_code_gson_gson_2_6_1_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_google_dagger_dagger_2_0_2_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_google_dagger_dagger_2_0_2_jar.xml deleted file mode 100644 index 10a9fba..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_google_dagger_dagger_2_0_2_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_jaeger_statusbarutil_library_1_4_0.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_jaeger_statusbarutil_library_1_4_0.xml deleted file mode 100644 index 6f0ee44..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_jaeger_statusbarutil_library_1_4_0.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_jakewharton_butterknife_8_8_1.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_jakewharton_butterknife_8_8_1.xml deleted file mode 100644 index 718f520..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_jakewharton_butterknife_8_8_1.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_jakewharton_butterknife_annotations_8_8_1_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_jakewharton_butterknife_annotations_8_8_1_jar.xml deleted file mode 100644 index 18477cf..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_jakewharton_butterknife_annotations_8_8_1_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_scwang_smartrefresh_SmartRefreshHeader_1_0_5.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_scwang_smartrefresh_SmartRefreshHeader_1_0_5.xml deleted file mode 100644 index f362a70..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_scwang_smartrefresh_SmartRefreshHeader_1_0_5.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_scwang_smartrefresh_SmartRefreshLayout_1_0_5.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_scwang_smartrefresh_SmartRefreshLayout_1_0_5.xml deleted file mode 100644 index 9fb5f76..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_scwang_smartrefresh_SmartRefreshLayout_1_0_5.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_squareup_okhttp3_okhttp_3_10_0_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_squareup_okhttp3_okhttp_3_10_0_jar.xml deleted file mode 100644 index 3bb1ed9..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_squareup_okhttp3_okhttp_3_10_0_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_squareup_okio_okio_1_14_0_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_squareup_okio_okio_1_14_0_jar.xml deleted file mode 100644 index 9c3a836..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_squareup_okio_okio_1_14_0_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_squareup_retrofit2_adapter_rxjava2_2_3_0_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_squareup_retrofit2_adapter_rxjava2_2_3_0_jar.xml deleted file mode 100644 index cc390a7..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_squareup_retrofit2_adapter_rxjava2_2_3_0_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_squareup_retrofit2_converter_gson_2_0_2_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_squareup_retrofit2_converter_gson_2_0_2_jar.xml deleted file mode 100644 index 260ed10..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_squareup_retrofit2_converter_gson_2_0_2_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_squareup_retrofit2_retrofit_2_4_0_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_squareup_retrofit2_retrofit_2_4_0_jar.xml deleted file mode 100644 index f5a5812..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_squareup_retrofit2_retrofit_2_4_0_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_squareup_wire_wire_runtime_2_3_0_RC1_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_squareup_wire_wire_runtime_2_3_0_RC1_jar.xml deleted file mode 100644 index 30e1ddd..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_squareup_wire_wire_runtime_2_3_0_RC1_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_umeng_sdk_analytics_7_5_0_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_umeng_sdk_analytics_7_5_0_jar.xml deleted file mode 100644 index 82ce8d1..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_umeng_sdk_analytics_7_5_0_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_umeng_sdk_common_1_5_0_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_umeng_sdk_common_1_5_0_jar.xml deleted file mode 100644 index 736a3f2..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_umeng_sdk_common_1_5_0_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__com_youth_banner_banner_1_4_10.xml b/AndroidLearnProject/.idea/libraries/Gradle__com_youth_banner_banner_1_4_10.xml deleted file mode 100644 index 0a1e58b..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__com_youth_banner_banner_1_4_10.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__io_reactivex_rxjava2_rxandroid_2_0_1.xml b/AndroidLearnProject/.idea/libraries/Gradle__io_reactivex_rxjava2_rxandroid_2_0_1.xml deleted file mode 100644 index 7f3dc6a..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__io_reactivex_rxjava2_rxandroid_2_0_1.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__io_reactivex_rxjava2_rxjava_2_1_1_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__io_reactivex_rxjava2_rxjava_2_1_1_jar.xml deleted file mode 100644 index aa4a22b..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__io_reactivex_rxjava2_rxjava_2_1_1_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__javax_inject_javax_inject_1_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__javax_inject_javax_inject_1_jar.xml deleted file mode 100644 index f9c9a30..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__javax_inject_javax_inject_1_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__junit_junit_4_12_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__junit_junit_4_12_jar.xml deleted file mode 100644 index f4f25a8..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__junit_junit_4_12_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__org_greenrobot_eventbus_3_1_1_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__org_greenrobot_eventbus_3_1_1_jar.xml deleted file mode 100644 index e29d235..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__org_greenrobot_eventbus_3_1_1_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__org_greenrobot_greendao_3_2_2_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__org_greenrobot_greendao_3_2_2_jar.xml deleted file mode 100644 index bbe9be6..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__org_greenrobot_greendao_3_2_2_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__org_greenrobot_greendao_api_3_2_2_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__org_greenrobot_greendao_api_3_2_2_jar.xml deleted file mode 100644 index 5f6dec7..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__org_greenrobot_greendao_api_3_2_2_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__org_hamcrest_hamcrest_core_1_3_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__org_hamcrest_hamcrest_core_1_3_jar.xml deleted file mode 100644 index 50cf2b9..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__org_hamcrest_hamcrest_core_1_3_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__org_jetbrains_annotations_13_0_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__org_jetbrains_annotations_13_0_jar.xml deleted file mode 100644 index 93524e8..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__org_jetbrains_annotations_13_0_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_1_1_60_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_1_1_60_jar.xml deleted file mode 100644 index 43d3124..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_1_1_60_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_jre7_1_1_60_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_jre7_1_1_60_jar.xml deleted file mode 100644 index dd60440..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_jre7_1_1_60_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/libraries/Gradle__org_reactivestreams_reactive_streams_1_0_0_jar.xml b/AndroidLearnProject/.idea/libraries/Gradle__org_reactivestreams_reactive_streams_1_0_0_jar.xml deleted file mode 100644 index f4fcefc..0000000 --- a/AndroidLearnProject/.idea/libraries/Gradle__org_reactivestreams_reactive_streams_1_0_0_jar.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/misc.xml b/AndroidLearnProject/.idea/misc.xml deleted file mode 100644 index 99202cc..0000000 --- a/AndroidLearnProject/.idea/misc.xml +++ /dev/null @@ -1,34 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/modules.xml b/AndroidLearnProject/.idea/modules.xml deleted file mode 100644 index 46a7816..0000000 --- a/AndroidLearnProject/.idea/modules.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/runConfigurations.xml b/AndroidLearnProject/.idea/runConfigurations.xml deleted file mode 100644 index 7f68460..0000000 --- a/AndroidLearnProject/.idea/runConfigurations.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/vcs.xml b/AndroidLearnProject/.idea/vcs.xml deleted file mode 100644 index 6c0b863..0000000 --- a/AndroidLearnProject/.idea/vcs.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/.idea/workspace.xml b/AndroidLearnProject/.idea/workspace.xml deleted file mode 100644 index 7cd6343..0000000 --- a/AndroidLearnProject/.idea/workspace.xml +++ /dev/null @@ -1,9549 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1545712087705 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - file://$PROJECT_DIR$/app/src/main/java/com/android/learn/fragment/TodoFragment.java - 123 - - - - file://$PROJECT_DIR$/app/src/main/java/com/android/learn/mpresenter/TodoPresenter.java - 67 - - - - file://$PROJECT_DIR$/app/src/main/java/com/android/learn/fragment/TodoFragment.java - 107 - - - - file://$PROJECT_DIR$/app/src/main/java/com/android/learn/activity/TodoEditActivity.java - 51 - - - - file://$PROJECT_DIR$/app/src/main/java/com/android/learn/fragment/TodoFragment.java - 221 - - - - file://$PROJECT_DIR$/app/src/main/java/com/android/learn/fragment/TodoFragment.java - 212 - - - - file://$PROJECT_DIR$/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/RetrofitProvider.java - 42 - - - - file://$PROJECT_DIR$/app/src/main/java/com/android/learn/MainActivity.java - 497 - - - - file://$PROJECT_DIR$/basemodule/src/main/java/com/android/learn/base/view/CustomProgressDialog.java - 44 - - - - file://$PROJECT_DIR$/app/src/main/java/com/android/learn/fragment/KnowledgeFragment.java - 66 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1.8 - - - - - - - - - - - - - - - \ No newline at end of file diff --git "a/AndroidLearnProject/app/LearnAndroid\357\274\215release-V1.0.1(101)_huawei.apk" "b/AndroidLearnProject/app/LearnAndroid\357\274\215release-V1.0.1(101)_huawei.apk" deleted file mode 100644 index cdf5fa0..0000000 Binary files "a/AndroidLearnProject/app/LearnAndroid\357\274\215release-V1.0.1(101)_huawei.apk" and /dev/null differ diff --git a/AndroidLearnProject/app/mvpmodel.jks b/AndroidLearnProject/app/mvpmodel.jks deleted file mode 100644 index e15edc9..0000000 Binary files a/AndroidLearnProject/app/mvpmodel.jks and /dev/null differ diff --git a/AndroidLearnProject/app/src/main/AndroidManifest.xml b/AndroidLearnProject/app/src/main/AndroidManifest.xml deleted file mode 100644 index 2867a8f..0000000 --- a/AndroidLearnProject/app/src/main/AndroidManifest.xml +++ /dev/null @@ -1,54 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/MainActivity.java b/AndroidLearnProject/app/src/main/java/com/android/learn/MainActivity.java deleted file mode 100644 index b5c7406..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/MainActivity.java +++ /dev/null @@ -1,683 +0,0 @@ -package com.android.learn; - -import android.Manifest; -import android.app.Activity; -import android.content.Context; -import android.content.Intent; -import android.content.res.Configuration; -import android.graphics.Canvas; -import android.graphics.Color; -import android.graphics.Paint; -import android.os.Bundle; -import android.os.Environment; -import android.os.Handler; -import android.support.design.widget.TabLayout; -import android.support.v4.app.Fragment; -import android.support.v7.widget.CardView; -import android.support.v7.widget.LinearLayoutManager; -import android.support.v7.widget.RecyclerView; -import android.text.Spannable; -import android.text.SpannableStringBuilder; -import android.text.StaticLayout; -import android.text.TextPaint; -import android.text.TextUtils; -import android.text.style.ForegroundColorSpan; -import android.util.Log; -import android.util.TypedValue; -import android.view.Gravity; -import android.view.KeyEvent; -import android.view.View; -import android.view.ViewGroup; -import android.view.inputmethod.EditorInfo; -import android.widget.EditText; -import android.widget.ImageView; -import android.widget.LinearLayout; -import android.widget.TextView; -import android.widget.Toast; - -import com.android.learn.activity.LanguageActivity; -import com.android.learn.activity.SearchResultActivity; -import com.android.learn.adapter.MainTabAdapter; -import com.android.learn.adapter.SearchRecordAdapter; -import com.android.learn.base.activity.BaseActivity; -import com.android.learn.base.activity.BaseMvpActivity; -import com.android.learn.base.db.DBManager; -import com.android.learn.base.db.SearchRecord; -import com.android.learn.base.event.ChangeNightEvent; -import com.android.learn.base.event.RestartMainEvent; -import com.android.learn.base.mmodel.HotKeyData; -import com.android.learn.base.utils.KeyboardUtils; -import com.android.learn.base.utils.LanguageUtil; -import com.android.learn.base.utils.LogUtil; -import com.android.learn.base.utils.PermissionUtil; -import com.android.learn.base.utils.SPUtils; -import com.android.learn.base.utils.ScreenUtils; -import com.android.learn.base.utils.Utils; -import com.android.learn.base.view.TitleView; -import com.android.learn.fragment.HomeFragment; -import com.android.learn.fragment.KnowledgeFragment; -import com.android.learn.fragment.WechatFragment; -import com.android.learn.fragment.ProjectFragment; -import com.android.learn.fragment.UserFragment; -import com.android.learn.mcontract.MainActivityContract; -import com.android.learn.mpresenter.MainActivityPresenter; -import com.android.learn.view.CustomViewPager; -import com.android.learn.view.SearchViewUtils; -import com.android.speechdemo.bean.TalkBackVo; -import com.android.speechdemo.xf.JsonParser; -import com.chad.library.adapter.base.BaseQuickAdapter; -import com.google.gson.Gson; -import com.google.gson.reflect.TypeToken; -import com.iflytek.cloud.ErrorCode; -import com.iflytek.cloud.InitListener; -import com.iflytek.cloud.RecognizerResult; -import com.iflytek.cloud.SpeechConstant; -import com.iflytek.cloud.SpeechError; -import com.iflytek.cloud.SpeechRecognizer; -import com.iflytek.cloud.SpeechUtility; -import com.iflytek.cloud.ui.RecognizerDialog; -import com.iflytek.cloud.ui.RecognizerDialogListener; -import com.iflytek.sunflower.FlowerCollector; -import com.opensource.svgaplayer.SVGADrawable; -import com.opensource.svgaplayer.SVGADynamicEntity; -import com.opensource.svgaplayer.SVGAImageView; -import com.opensource.svgaplayer.SVGAParser; -import com.opensource.svgaplayer.SVGAVideoEntity; - -import org.greenrobot.eventbus.EventBus; -import org.greenrobot.eventbus.Subscribe; -import org.greenrobot.eventbus.ThreadMode; -import org.jetbrains.annotations.NotNull; -import org.json.JSONException; -import org.json.JSONObject; - -import java.io.IOException; -import java.io.InputStream; -import java.lang.reflect.Type; -import java.net.URL; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.LinkedHashMap; -import java.util.List; - -import butterknife.BindView; -import butterknife.OnClick; -import cn.lankton.flowlayout.FlowLayout; -import kotlin.Unit; -import kotlin.jvm.functions.Function1; -import kotlin.jvm.functions.Function2; -import okhttp3.OkHttpClient; -import okhttp3.Request; -import okhttp3.Response; - -public class MainActivity extends BaseMvpActivity implements MainActivityContract.View { - - private ArrayList mFragments; - private ArrayList titles; - - @BindView(R.id.viewPager) - CustomViewPager viewPager; - @BindView(R.id.tabLayout) - TabLayout tabLayout; - @BindView(R.id.title) - TextView title; - @BindView(R.id.header_layout) - TitleView header_layout; - @BindView(R.id.iv_svga) - SVGAImageView iv_svga; - @BindView(R.id.cardview_search) - LinearLayout cardview_search; - @BindView(R.id.et_search) - EditText et_search; - @BindView(R.id.iv_search) - ImageView iv_search; - @BindView(R.id.iv_search_back) - ImageView iv_search_back; - @BindView(R.id.history_recycleview) - RecyclerView history_recycleview; - @BindView(R.id.title_view_divider) - View title_view_divider; - @BindView(R.id.flowlayout) - FlowLayout flowlayout; - HomeFragment homeFragment; - ProjectFragment projectFragment; - boolean isSearching; - SearchRecordAdapter searchRecordAdapter; - String TAG = "MainActivity"; - private SpeechRecognizer mIat; - private RecognizerDialog mIatDialog; - private Toast mToast; - // 用HashMap存储听写结果 - private HashMap mIatResults = new LinkedHashMap(); - // 引擎类型 这里我只考虑了一种引擎类型 :云端的 - private String mCLOUDType = SpeechConstant.TYPE_CLOUD; - - @Override - protected int getLayoutId() { - return R.layout.activity_main; - } - - @Override - protected void initData(Bundle bundle) { - initView(); - requestPermission(); - EventBus.getDefault().register(this); - } - - protected void initView() { - mFragments = new ArrayList(); - homeFragment = new HomeFragment(); - projectFragment = new ProjectFragment(); - mFragments.add(homeFragment); - mFragments.add(projectFragment); - mFragments.add(new KnowledgeFragment()); - mFragments.add(new WechatFragment()); - mFragments.add(new UserFragment()); - - titles = new ArrayList(); - titles.add(getString(R.string.home)); - titles.add(getString(R.string.project)); - titles.add(getString(R.string.knowledge)); - titles.add(getString(R.string.public_account)); - titles.add(getString(R.string.mine)); - - MainTabAdapter adapter = new MainTabAdapter(getSupportFragmentManager(), mFragments); - viewPager.setOffscreenPageLimit(mFragments.size()); - viewPager.setAdapter(adapter); - viewPager.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(tabLayout)); - tabLayout.addOnTabSelectedListener(new TabLayout.ViewPagerOnTabSelectedListener(viewPager)); - //将TabLayout和ViewPager关联起来 - tabLayout.setupWithViewPager(viewPager); - initTab(); - initSearchRecord(); - iv_search.setVisibility(View.VISIBLE); - Boolean isNightMode = (Boolean) SPUtils.getParam(this, "nightMode", new Boolean(false)); - if (isNightMode) { - title_view_divider.setVisibility(View.VISIBLE); - } else { - title_view_divider.setVisibility(View.GONE); - } - - et_search.setOnEditorActionListener(new TextView.OnEditorActionListener() { - @Override - public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { - if (actionId == EditorInfo.IME_ACTION_SEARCH) {//搜索按键action - beginSearch(); - } - return false; - } - }); - - } - - private void beginSearch() { - String content = et_search.getText().toString(); - if (TextUtils.isEmpty(content)) { - Utils.showToast(getString(R.string.search_content_no), true); - } - - Bundle bundle = new Bundle(); - bundle.putString("key", content); - SearchResultActivity.startActivity(MainActivity.this, bundle); - DBManager dbManager = DBManager.getInstance(MainActivity.this); - SearchRecord searchRecord = new SearchRecord(); - searchRecord.setName(content); - dbManager.insertUser(searchRecord); - et_search.setText(""); - KeyboardUtils.hideKeyboard(et_search); - } - - private void initSearchRecord() { - ArrayList list = new ArrayList<>(); - searchRecordAdapter = new SearchRecordAdapter(this, list); - history_recycleview.setLayoutManager(new LinearLayoutManager(this)); - history_recycleview.setAdapter(searchRecordAdapter); - searchRecordAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() { - @Override - public void onItemClick(BaseQuickAdapter adapter, View view, int position) { - Bundle bundle = new Bundle(); - bundle.putString("key", searchRecordAdapter.getData().get(position).getName()); - SearchResultActivity.startActivity(MainActivity.this, bundle); - } - }); - } - - /** - * 设置添加Tab - */ - private void initTab() { - - tabLayout.getTabAt(0).setCustomView(R.layout.tab_home); - tabLayout.getTabAt(1).setCustomView(R.layout.tab_project); - tabLayout.getTabAt(2).setCustomView(R.layout.tab_knowledge); - tabLayout.getTabAt(3).setCustomView(R.layout.tab_navigation); - tabLayout.getTabAt(4).setCustomView(R.layout.tab_mine); - - - tabLayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() { - //标签选中之后执行的方法 - @Override - public void onTabSelected(TabLayout.Tab tab) { - int position = tab.getPosition(); - title.setText(titles.get(position)); - - if (position == 4) header_layout.setVisibility(View.GONE); - else header_layout.setVisibility(View.VISIBLE); - } - - //标签没选中 - @Override - public void onTabUnselected(TabLayout.Tab tab) { - - } - - @Override - public void onTabReselected(TabLayout.Tab tab) { - - } - }); - Boolean isRestartMain = (Boolean) SPUtils.getParam(this, "isRestartMain", new Boolean(false)); - LogUtil.d(TAG, "isRestartMain:" + isRestartMain); - if (isRestartMain) { - //切换语言或切换字体大小,重启MainActivity则会走这里 - viewPager.setCurrentItem(4); -// tabLayout.getTabAt(4).getCustomView().setSelected(true); - SPUtils.setParam(MainActivity.this, "isRestartMain", new Boolean(false)); - } else { - //默认选中的Tab - viewPager.setCurrentItem(0); -// tabLayout.getTabAt(0).getCustomView().setSelected(true); - loadSVGAAnimation(); - - } - - } - - @OnClick({R.id.title, R.id.iv_svga, R.id.iv_search_back, R.id.iv_search, R.id.tv_search_clear, R.id.iv_speech_search}) - public void onClick(View view) { - switch (view.getId()) { - case R.id.title: - int index = viewPager.getCurrentItem(); - if (index == 0) - homeFragment.scrollToTop(); - if (index == 1) - projectFragment.scrollToTop(); - break; - - case R.id.iv_svga: - iv_svga.stopAnimation(); - iv_svga.setVisibility(View.GONE); - break; - case R.id.iv_search_back: - SearchViewUtils.handleToolBar(getApplicationContext(), cardview_search, et_search); - break; - case R.id.iv_search: - SearchViewUtils.handleToolBar(getApplicationContext(), cardview_search, et_search); - isSearching = true; - break; - case R.id.tv_search_clear: - searchRecordAdapter.getData().clear(); - searchRecordAdapter.notifyDataSetChanged(); - DBManager.getInstance(this).deleteAll(); - break; - case R.id.iv_speech_search: - KeyboardUtils.hideKeyboard(et_search); - requestRecordAudioPermission(); - break; - } - - } - - public void requestPermission() { - requestPermission(this, new PermissionUtil.RequestPermissionCallBack() { - - @Override - public void granted() { - - } - - @Override - public void denied() { - } - }, new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.READ_PHONE_STATE}); - } - - public void onRestart() { - super.onRestart(); - //跳转到设置界面后返回,重新检查权限 - requestPermission(); - } - - public void onStart() { - super.onStart(); - List recordList = DBManager.getInstance(this).queryUserList(); - searchRecordAdapter.getData().clear(); - searchRecordAdapter.addData(recordList); - - } - - // 用来计算返回键的点击间隔时间 - private long exitTime = 0; - - @Override - public boolean onKeyDown(int keyCode, KeyEvent event) { - if (keyCode == KeyEvent.KEYCODE_BACK - && event.getAction() == KeyEvent.ACTION_DOWN) { - if (isSearching) { - SearchViewUtils.handleToolBar(getApplicationContext(), cardview_search, et_search); - isSearching = false; - return false; - } - if ((System.currentTimeMillis() - exitTime) > 2000) { - //弹出提示,可以有多种方式 - Toast.makeText(getApplicationContext(), getString(R.string.press_exit), Toast.LENGTH_SHORT).show(); - exitTime = System.currentTimeMillis(); - } else { - finish(); - } - return true; - } - - return super.onKeyDown(keyCode, event); - } - - - private void loadSVGAAnimation() { - SVGAParser parser = new SVGAParser(this); - resetDownloader(parser); - try { - parser.parse(new URL("https://github.com/yyued/SVGA-Samples/blob/master/kingset.svga?raw=true"), new SVGAParser.ParseCompletion() { - @Override - public void onComplete(@NotNull SVGAVideoEntity videoItem) { - SVGADrawable drawable = new SVGADrawable(videoItem, requestDynamicItemWithSpannableText()); - iv_svga.setImageDrawable(drawable); - iv_svga.startAnimation(); - - new Handler().postDelayed(new Runnable() { - @Override - public void run() { - /** - *要执行的操作 - */ - iv_svga.stopAnimation(); - iv_svga.setVisibility(View.GONE); - } - }, 5000); - - } - - @Override - public void onError() { - - } - }); - } catch (Exception e) { - System.out.print(true); - } - } - - /** - * 你可以设置富文本到 ImageKey 相关的元素上 - * 富文本是会自动换行的,不要设置过长的文本 - * - * @return - */ - private SVGADynamicEntity requestDynamicItemWithSpannableText() { - SVGADynamicEntity dynamicEntity = new SVGADynamicEntity(); - SpannableStringBuilder spannableStringBuilder = new SpannableStringBuilder(getString(R.string.welcome_learn_android)); - spannableStringBuilder.setSpan(new ForegroundColorSpan(Color.YELLOW), 0, 4, Spannable.SPAN_INCLUSIVE_INCLUSIVE); - TextPaint textPaint = new TextPaint(); - textPaint.setColor(Color.WHITE); - textPaint.setTextSize(28); - dynamicEntity.setDynamicText(new StaticLayout( - spannableStringBuilder, - 0, - spannableStringBuilder.length(), - textPaint, - 0, - android.text.Layout.Alignment.ALIGN_CENTER, - 1.0f, - 0.0f, - false - ), "banner"); - dynamicEntity.setDynamicDrawer(new Function2() { - @Override - public Boolean invoke(Canvas canvas, Integer frameIndex) { - Paint aPaint = new Paint(); - aPaint.setColor(Color.WHITE); - canvas.drawCircle(50, 54, frameIndex % 5, aPaint); - return false; - } - }, "banner"); - return dynamicEntity; - } - - /** - * 设置下载器,这是一个可选的配置项。 - * - * @param parser - */ - private void resetDownloader(SVGAParser parser) { - parser.setFileDownloader(new SVGAParser.FileDownloader() { - @Override - public void resume(final URL url, final Function1 complete, final Function1 failure) { - new Thread(new Runnable() { - @Override - public void run() { - OkHttpClient client = new OkHttpClient(); - Request request = new Request.Builder().url(url).get().build(); - try { - Response response = client.newCall(request).execute(); - complete.invoke(response.body().byteStream()); - } catch (IOException e) { - e.printStackTrace(); - failure.invoke(e); - } - } - }).start(); - } - }); - } - - - @Subscribe(threadMode = ThreadMode.MAIN) - public void onEvent(RestartMainEvent event) { - Intent intent = getIntent(); - overridePendingTransition(0, 0); - intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION); - finish(); - overridePendingTransition(0, 0); - startActivity(intent); - event.activity.finish(); - SPUtils.setParam(MainActivity.this, "isRestartMain", new Boolean(true)); - - } - - @Subscribe(threadMode = ThreadMode.MAIN) - public void onEvent(ChangeNightEvent event) { - Boolean isNightMode = (Boolean) SPUtils.getParam(this, "nightMode", new Boolean(false)); - if (isNightMode) { - title_view_divider.setVisibility(View.VISIBLE); - } else { - title_view_divider.setVisibility(View.GONE); - } - setStatusBar(); - } - - public void onDestroy() { - super.onDestroy(); - EventBus.getDefault().unregister(this); - } - - @Override - public MainActivityPresenter initPresenter() { - return new MainActivityPresenter(); - } - - @Override - protected void loadData() { - mPresenter.getHotKey(); - } - - - @Override - public void showHotKey(List list) { - addFolowLayoutView(list); - - } - - private void addFolowLayoutView(List list) { - int length = list.size(); - for (int i = 0; i < list.size(); i++) { - final HotKeyData hotKeyData = list.get(i); - int ranHeight = ScreenUtils.dp2px(this, 30); - ViewGroup.MarginLayoutParams lp = new ViewGroup.MarginLayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ranHeight); - lp.setMargins(ScreenUtils.dp2px(this, 10), 0, ScreenUtils.dp2px(this, 10), 0); - final TextView tv = new TextView(this); - tv.setPadding(ScreenUtils.dp2px(this, 15), 0, ScreenUtils.dp2px(this, 15), 0); - tv.setTextColor(Color.parseColor("#FF3030")); - tv.setTextSize(TypedValue.COMPLEX_UNIT_SP, 15); - int index = (int) (Math.random() * length); - tv.setText(hotKeyData.getName()); - tv.setGravity(Gravity.CENTER_VERTICAL); - tv.setLines(1); - tv.setBackgroundResource(R.drawable.bg_tag); - flowlayout.addView(tv, lp); - tv.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - Bundle bundle = new Bundle(); - bundle.putString("key", tv.getText().toString()); - SearchResultActivity.startActivity(MainActivity.this, bundle); - DBManager dbManager = DBManager.getInstance(MainActivity.this); - SearchRecord searchRecord = new SearchRecord(); - searchRecord.setName(tv.getText().toString()); - dbManager.insertUser(searchRecord); - } - }); - } - flowlayout.relayoutToAlign(); - } - - public void requestRecordAudioPermission() { - requestPermission(this, new PermissionUtil.RequestPermissionCallBack() { - @Override - public void granted() { - // 使用SpeechRecognizer对象,可根据回调消息自定义界面;这种方式主要是考虑到了,没有听写Dialog的时候,进行的听写监听 - mIat = SpeechRecognizer.createRecognizer(MainActivity.this, mInitListener); - Log.i(TAG, "onCreate: mIat == null ?" + mIat); - //SpeechRecognizer对象 null 的原因:一、 so 文件放错了位置 二、so文件与自己的SDK不匹配 3、Application中没有配置好appid - // 初始化听写Dialog,如果只使用有UI听写功能,无需创建SpeechRecognizer - // 使用UI听写功能,请根据sdk文件目录下的notice.txt,放置显示RecognizerDialog需要的布局文件和图片资源 - mIatDialog = new RecognizerDialog(MainActivity.this, mInitListener); - // 移动数据分析,收集开始听写事件 - FlowerCollector.onEvent(MainActivity.this, "iat_recognize"); - - et_search.setText("");// 清空显示内容 - mIatResults.clear(); - // 设置参数 - setParam(); - - // 显示听写对话框 - mIatDialog.setListener(mRecognizerDialogListener); - mIatDialog.show(); - Utils.showToast(getString(R.string.begin_speech), true, Gravity.BOTTOM); - } - - @Override - public void denied() { - } - }, new String[]{Manifest.permission.RECORD_AUDIO}); - } - - public void setParam() { - // 清空参数 - mIat.setParameter(SpeechConstant.PARAMS, null); - - // 设置听写引擎 注意:这里我只设置云端的方式!后面再考虑本地和混合的类型 - mIat.setParameter(SpeechConstant.ENGINE_TYPE, mCLOUDType); - // 设置返回结果格式 - mIat.setParameter(SpeechConstant.RESULT_TYPE, "json"); - - // 设置语言 - mIat.setParameter(SpeechConstant.LANGUAGE, "cn"); - mIat.setParameter(SpeechConstant.ACCENT, "mandarin"); - - // 设置语音前端点:静音超时时间,即用户多长时间不说话则当做超时处理 - mIat.setParameter(SpeechConstant.VAD_BOS, "4000"); - - // 设置语音后端点:后端点静音检测时间,即用户停止说话多长时间内即认为不再输入, 自动停止录音 - mIat.setParameter(SpeechConstant.VAD_EOS, "1000"); - - // 设置标点符号,设置为"0"返回结果无标点,设置为"1"返回结果有标点 - mIat.setParameter(SpeechConstant.ASR_PTT, "0"); - - // 设置音频保存路径,保存音频格式支持pcm、wav,设置路径为sd卡请注意WRITE_EXTERNAL_STORAGE权限 - // 注:AUDIO_FORMAT参数语记需要更新版本才能生效 - mIat.setParameter(SpeechConstant.AUDIO_FORMAT, "wav"); - mIat.setParameter(SpeechConstant.ASR_AUDIO_PATH, Environment.getExternalStorageDirectory() + "/msc/iat.wav"); - } - - private InitListener mInitListener = new InitListener() { - @Override - public void onInit(int code) { - } - }; - /** - * 听写UI监听器 - */ - private RecognizerDialogListener mRecognizerDialogListener = new RecognizerDialogListener() { - /** - * 识别成功时回调数据 - */ - public void onResult(RecognizerResult results, boolean isLast) { - LogUtil.d(TAG, "printResult(results)------------"); - printResult(results); - } - - /** - * 识别回调错误. - */ - public void onError(SpeechError error) { - - } - }; - - /** - * 成功时显示说话的文字 - * - * @param results - */ - private void printResult(RecognizerResult results) { - String text = JsonParser.parseIatResult(results.getResultString()); - - String sn = null; - // 读取json结果中的sn字段 - try { - JSONObject resultJson = new JSONObject(results.getResultString()); - sn = resultJson.optString("sn"); - } catch (JSONException e) { - e.printStackTrace(); - } - - mIatResults.put(sn, text); - - StringBuffer resultBuffer = new StringBuffer(); - for (String key : mIatResults.keySet()) { - resultBuffer.append(mIatResults.get(key)); - } - - et_search.setText(resultBuffer.toString()); - //考虑到TextView只能显示文字 ,后面还要测试文字转语音,所以换EditText控件 - et_search.setSelection(et_search.length()); - KeyboardUtils.showKeyboard(et_search); - LogUtil.d(TAG, "printResult(results)------------resultBuffer.toString():" + resultBuffer.toString()); - if (et_search.getText().toString().length() > 0 && !"SearchResultActivity".equals(Utils.getTopActivity(this))) - beginSearch(); - } - @Override - public void onConfigurationChanged(Configuration newConfig) { - super.onConfigurationChanged(newConfig); - // 在这里添加屏幕切换后的操作 - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/activity/ArticleDetailActivity.java b/AndroidLearnProject/app/src/main/java/com/android/learn/activity/ArticleDetailActivity.java deleted file mode 100644 index ccad459..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/activity/ArticleDetailActivity.java +++ /dev/null @@ -1,84 +0,0 @@ -package com.android.learn.activity; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.view.View; -import android.widget.ImageView; -import android.widget.TextView; - -import com.android.learn.R; -import com.android.learn.base.activity.BaseActivity; -import com.android.learn.base.activity.BaseMvpActivity; -import com.android.learn.base.mpresenter.BasePresenter; -import com.android.learn.base.utils.LanguageUtil; -import com.android.learn.base.view.Html5Webview; - -import butterknife.BindView; -import butterknife.OnClick; - -public class ArticleDetailActivity extends BaseMvpActivity { - - @BindView(R.id.webview_article) - Html5Webview webview_article; - @BindView(R.id.iv_back) - ImageView iv_back; - @BindView(R.id.title) - TextView title; - @BindView(R.id.iv_search) - ImageView iv_search; - String url; - public static void startActivity(Context context, Bundle bundle) { - Intent intent = new Intent(context, ArticleDetailActivity.class); - - if (bundle != null) - intent.putExtras(bundle); - context.startActivity(intent); - } - @Override - protected int getLayoutId() { - return R.layout.activity_article_detail; - } - - @Override - protected void initData(Bundle bundle) { - title.setText(getString(R.string.article_detail)); - iv_back.setVisibility(View.VISIBLE); - url = bundle.getString("url"); - webview_article.loadUrl(url); - iv_search.setVisibility(View.VISIBLE); - iv_search.setImageResource(R.drawable.icon_share); - } - - - - @OnClick({R.id.iv_search}) - public void click(View view) { - switch (view.getId()) { - case R.id.iv_search: - share("分享地址", url); - } - } - - private void share(String title, String content) { - Intent share_intent = new Intent(); - share_intent.setAction(Intent.ACTION_SEND);//设置分享行为 - share_intent.setType("text/plain");//设置分享内容的类型 - share_intent.putExtra(Intent.EXTRA_SUBJECT, title);//添加分享内容标题 - share_intent.putExtra(Intent.EXTRA_TEXT, content);//添加分享内容 - //创建分享的Dialog - share_intent = Intent.createChooser(share_intent, "分享"); - startActivity(share_intent); - } - - @Override - public BasePresenter initPresenter() { - return null; - } - - @Override - protected void loadData() { - - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/activity/FeedbackActivity.java b/AndroidLearnProject/app/src/main/java/com/android/learn/activity/FeedbackActivity.java deleted file mode 100644 index 0e6ebdb..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/activity/FeedbackActivity.java +++ /dev/null @@ -1,297 +0,0 @@ -package com.android.learn.activity; - -import android.annotation.SuppressLint; -import android.app.Activity; -import android.content.ContentUris; -import android.content.Context; -import android.content.Intent; -import android.database.Cursor; -import android.net.Uri; -import android.os.Build; -import android.os.Bundle; -import android.os.Environment; -import android.provider.DocumentsContract; -import android.provider.MediaStore; -import android.util.Log; -import android.view.View; -import android.widget.EditText; -import android.widget.ImageView; -import android.widget.TextView; - - -import com.android.learn.R; -import com.android.learn.base.activity.BaseMvpActivity; -import com.android.learn.base.email.MailSender; -import com.android.learn.base.mpresenter.BasePresenter; -import com.android.learn.base.utils.LanguageUtil; -import com.android.learn.base.utils.Utils; - -import butterknife.BindView; -import butterknife.OnClick; - - -public class FeedbackActivity extends BaseMvpActivity { - - @BindView(R.id.iv_back) - ImageView iv_back; - @BindView(R.id.title) - TextView title; - @BindView(R.id.send_btn) - TextView send_btn; - @BindView(R.id.add_attachment) - TextView add_attachment; - @BindView(R.id.file_dir) - TextView file_dir; - - @BindView(R.id.et_email_title) - EditText et_email_title; - @BindView(R.id.et_email_content) - EditText et_email_content; - private final int FILECHOOSER_RESULTCODE = 1; - private String sendEmail = "gaoleiemail@163.com";//发送方邮件 - private String sendEmaiPassword = "gl1201";//发送方邮箱密码(或授权码) - private String receiveEmail = "gaoleiandroid@163.com";//接收方邮件 - private String file_path = null; - - - public static void startActivity(Context context) { - Intent intent = new Intent(context, FeedbackActivity.class); - context.startActivity(intent); - } - - @Override - protected int getLayoutId() { - return R.layout.activity_help_feedback; - } - - @Override - protected void initData(Bundle bundle) { - title.setText(getString(R.string.help_feedback)); - iv_back.setVisibility(View.VISIBLE); - } - - @Override - public BasePresenter initPresenter() { - return null; - } - - @Override - protected void loadData() { - - } - - @OnClick({R.id.send_btn, R.id.add_attachment}) - public void click(View view) { - switch (view.getId()) { - case R.id.send_btn: - SenderRunnable senderRunnable = new SenderRunnable(sendEmail, sendEmaiPassword); - String sendTitle = et_email_title.getText().toString(); - String sendContent = et_email_content.getText().toString(); - if ("".equals(sendTitle.trim())) { - Utils.showToast(getString(R.string.please_input_contact), true); - return; - } - if ("".equals(sendContent.trim())) { - Utils.showToast(getString(R.string.please_input_content), true); - return; - } - senderRunnable.setMail(sendTitle, sendContent, - receiveEmail, file_path); - new Thread(senderRunnable).start(); -// sendEmail(); - break; - case R.id.add_attachment: - showFileChooser(); - break; - } - } - - - private void showFileChooser() { - Intent i = new Intent(Intent.ACTION_GET_CONTENT); - i.addCategory(Intent.CATEGORY_OPENABLE); - i.setType("image/*"); - startActivityForResult(Intent.createChooser(i, "File Chooser"), - FILECHOOSER_RESULTCODE); - } - - - @Override - public void onActivityResult(int requestCode, int resultCode, Intent data) { - if (resultCode == Activity.RESULT_OK) { - Uri uri = data.getData(); - - file_path = getPathByUri4kitkat(this, uri); - Log.d("gaolei", "file_path---------------" + file_path); - file_dir.setText(file_path); - - } - super.onActivityResult(requestCode, resultCode, data); - } - - class SenderRunnable implements Runnable { - - private String user; - private String password; - private String subject; - private String body; - private String receiver; - private MailSender sender; - private String attachment; - - public SenderRunnable(String user, String password) { - this.user = user; - this.password = password; - sender = new MailSender(user, password); - String mailhost = user.substring(user.lastIndexOf("@") + 1, - user.lastIndexOf(".")); - if (!mailhost.equals("gmail")) { - mailhost = "smtp." + mailhost + ".com"; - Log.i("hello", mailhost); - sender.setMailhost(mailhost); - } - } - - public void setMail(String subject, String body, String receiver, - String attachment) { - this.subject = subject; - this.body = body; - this.receiver = receiver; - this.attachment = attachment; - } - - public void run() { - // TODO Auto-generated method stub - try { - sender.sendMail(subject, body, user, receiver, attachment); - Utils.showToast(getString(R.string.feedback_send_success), false); - runOnUiThread(new Runnable() { - @Override - public void run() { - finish(); - } - }); - } catch (Exception e) { - // TODO Auto-generated catch block - if (e.getMessage() != null) - Utils.showToast(getString(R.string.feedback_send_fail), false); - e.printStackTrace(); - } finally { - finish(); - } - } - } - - // 专为Android4.4设计的从Uri获取文件绝对路径,以前的方法已不好使了。targetSdkVersion 22;如果targetSdkVersion>=23怎需要动态获取WRITE_EXTERNAL_STORAGE权限;如果targetSdkVersion>=24 则可能需要用到FileProvider - @SuppressLint("NewApi") - public static String getPathByUri4kitkat(final Context context, final Uri uri) { - final boolean isKitKat = Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT; - // DocumentProvider - if (isKitKat && DocumentsContract.isDocumentUri(context, uri)) { - if (isExternalStorageDocument(uri)) {// ExternalStorageProvider - final String docId = DocumentsContract.getDocumentId(uri); - final String[] split = docId.split(":"); - final String type = split[0]; - if ("primary".equalsIgnoreCase(type)) { - return Environment.getExternalStorageDirectory() + "/" + split[1]; - } - } else if (isDownloadsDocument(uri)) {// DownloadsProvider - final String id = DocumentsContract.getDocumentId(uri); - final Uri contentUri = ContentUris.withAppendedId(Uri.parse("content://downloads/public_downloads"), - Long.valueOf(id)); - return getDataColumn(context, contentUri, null, null); - } else if (isMediaDocument(uri)) {// MediaProvider - final String docId = DocumentsContract.getDocumentId(uri); - final String[] split = docId.split(":"); - final String type = split[0]; - Uri contentUri = null; - if ("image".equals(type)) { - contentUri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI; - } else if ("video".equals(type)) { - contentUri = MediaStore.Video.Media.EXTERNAL_CONTENT_URI; - } else if ("audio".equals(type)) { - contentUri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI; - } - final String selection = "_id=?"; - final String[] selectionArgs = new String[]{split[1]}; - return getDataColumn(context, contentUri, selection, selectionArgs); - } - } else if ("content".equalsIgnoreCase(uri.getScheme())) {// MediaStore - return getDataColumn(context, uri, null, null); - } else if ("file".equalsIgnoreCase(uri.getScheme())) {// File - return uri.getPath(); - } - return null; - } - - /** - * Get the value of the data column for this Uri. This is useful for - * MediaStore Uris, and other file-based ContentProviders. - * - * @param context The context. - * @param uri The Uri to query. - * @param selection (Optional) Filter used in the query. - * @param selectionArgs (Optional) Selection arguments used in the query. - * @return The value of the _data column, which is typically a file path. - */ - public static String getDataColumn(Context context, Uri uri, String selection, String[] selectionArgs) { - Cursor cursor = null; - final String column = "_data"; - final String[] projection = {column}; - try { - cursor = context.getContentResolver().query(uri, projection, selection, selectionArgs, null); - if (cursor != null && cursor.moveToFirst()) { - final int column_index = cursor.getColumnIndexOrThrow(column); - return cursor.getString(column_index); - } - } finally { - if (cursor != null) - cursor.close(); - } - return null; - } - - /** - * @param uri The Uri to check. - * @return Whether the Uri authority is ExternalStorageProvider. - */ - public static boolean isExternalStorageDocument(Uri uri) { - return "com.android.externalstorage.documents".equals(uri.getAuthority()); - } - - /** - * @param uri The Uri to check. - * @return Whether the Uri authority is DownloadsProvider. - */ - public static boolean isDownloadsDocument(Uri uri) { - return "com.android.providers.downloads.documents".equals(uri.getAuthority()); - } - - /** - * @param uri The Uri to check. - * @return Whether the Uri authority is MediaProvider. - */ - public static boolean isMediaDocument(Uri uri) { - return "com.android.providers.media.documents".equals(uri.getAuthority()); - } - - private void sendEmail() { - Intent email = new Intent(Intent.ACTION_SENDTO); - /*不带附件发送邮件*/ -// email.setType("plain/text"); - email.setData(Uri.parse(receiveEmail)); - - /*设置邮件默认地址,多个收件人,String数组*/ - // email.putExtra(android.content.Intent.EXTRA_EMAIL, (String[])mMailReceivers.toArray(new String[mMailReceivers.size()])); - /*多个抄送人,String数组*/ -// email.putExtra(android.content.Intent.EXTRA_CC, (String[])mMailCopyTos.toArray(new String[mMailCopyTos.size()])); - /*邮件标题*/ - email.putExtra(Intent.EXTRA_SUBJECT, et_email_title.getText().toString()); - /*邮件正文*/ - email.putExtra(Intent.EXTRA_TEXT, et_email_content.getText().toString()); -//调用系统的邮件系统 - startActivity(Intent.createChooser(email, "请选择邮件发送软件")); - - } - -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/activity/FontSizeActivity.java b/AndroidLearnProject/app/src/main/java/com/android/learn/activity/FontSizeActivity.java deleted file mode 100644 index f792e69..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/activity/FontSizeActivity.java +++ /dev/null @@ -1,156 +0,0 @@ -package com.android.learn.activity; - -import android.content.Context; -import android.content.Intent; -import android.graphics.Color; -import android.os.Bundle; -import android.os.Handler; -import android.view.KeyEvent; -import android.view.View; -import android.widget.ImageView; -import android.widget.TextView; - -import com.android.learn.R; -import com.android.learn.base.activity.BaseActivity; -import com.android.learn.base.activity.BaseMvpActivity; -import com.android.learn.base.event.RestartMainEvent; -import com.android.learn.base.mpresenter.BasePresenter; -import com.android.learn.base.utils.LanguageUtil; -import com.android.learn.base.utils.LogUtil; -import com.android.learn.base.utils.SPUtils; -import com.android.learn.base.utils.ScreenUtils; -import com.android.learn.view.fontsliderbar.FontSliderBar; - -import org.greenrobot.eventbus.EventBus; - -import butterknife.BindView; -import butterknife.OnClick; - - - -public class FontSizeActivity extends BaseMvpActivity { - @BindView(R.id.iv_back) - ImageView iv_back; - @BindView(R.id.title) - TextView title; - @BindView(R.id.fontSliderBar) - FontSliderBar fontSliderBar; - @BindView(R.id.tv_chatcontent1) - TextView tvContent1; - @BindView(R.id.tv_chatcontent) - TextView tvContent2; - @BindView(R.id.iv_userhead) - ImageView ivUserhead; - private float textsize1, textsize2, textsize3; - private float textSizef;//缩放比例 - private boolean isClickable = true; - int currentIndex; - String TAG="FontSizeActivity"; - - public static void startActivity(Context context) { - Intent intent = new Intent(context, FontSizeActivity.class); - context.startActivity(intent); - } - - @Override - protected int getLayoutId() { - return R.layout.activity_fontsizes; - } - - @Override - protected void initData(Bundle bundle) { - title.setText(getString(R.string.font_size)); - iv_back.setVisibility(View.VISIBLE); - initData(); - } - - private void initData() { - currentIndex = (Integer) SPUtils.getParam(this, "currentIndex", 1); - textSizef = 1 + currentIndex * 0.1f; - float size1 = tvContent1.getTextSize(); - float size2 = tvContent2.getTextSize(); - textsize1 = size1 / textSizef; - textsize2 = size2 / textSizef; - fontSliderBar.setTickCount(6).setTickHeight(ScreenUtils.dp2px(FontSizeActivity.this, 15)).setBarColor(Color.GRAY) - .setTextColor(Color.BLACK).setTextPadding(ScreenUtils.dp2px(FontSizeActivity.this, 10)).setTextSize(ScreenUtils.dp2px(FontSizeActivity.this, 14)) - .setThumbRadius(ScreenUtils.dp2px(FontSizeActivity.this, 10)).setThumbColorNormal(Color.GRAY).setThumbColorPressed(Color.GRAY) - .setOnSliderBarChangeListener(new FontSliderBar.OnSliderBarChangeListener() { - @Override - public void onIndexChanged(FontSliderBar rangeBar, int index) { - if (index > 5) { - return; - } - index = index - 1; - float textSizef = 1 + index * 0.1f; - setTextSize(textSizef); - } - }).setThumbIndex(currentIndex).withAnimation(false).applay(this); - - } - - @OnClick({R.id.iv_back}) - public void click(View view) { - - switch (view.getId()) { - case R.id.iv_back: - if (fontSliderBar.getCurrentIndex() != currentIndex) { - if (isClickable) { - isClickable = false; - refresh(); - } - } else { - finish(); - } - break; - - } - } - - private void setTextSize(float textSize) { - //改变当前页面的字体大小 - float size1 = textsize1 * textSize; - float size2 = textsize2 * textSize; - float size3 = textsize3 * textSize; - tvContent1.setTextSize(ScreenUtils.px2sp(FontSizeActivity.this, size1)); - tvContent2.setTextSize(ScreenUtils.px2sp(FontSizeActivity.this, size2)); - } - - @Override - public boolean onKeyDown(int keyCode, KeyEvent event) { - if (keyCode == KeyEvent.KEYCODE_BACK) { - if (currentIndex != fontSliderBar.getCurrentIndex()) { - if (isClickable) { - isClickable = false; - refresh(); - } - } else { - finish(); - } - return true; - } - return super.onKeyDown(keyCode, event); - } - - private void refresh() { - //存储标尺的下标 - SPUtils.setParam(this, "currentIndex", fontSliderBar.getCurrentIndex()); - //通知主页面重启 - EventBus.getDefault().post(new RestartMainEvent(this)); - - } - - public void onDestroy(){ - super.onDestroy(); - LogUtil.d(TAG,TAG+" onDestroy--------"); - } - - @Override - public BasePresenter initPresenter() { - return null; - } - - @Override - protected void loadData() { - - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/activity/KnowledgeChildActivity.java b/AndroidLearnProject/app/src/main/java/com/android/learn/activity/KnowledgeChildActivity.java deleted file mode 100644 index 92714fb..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/activity/KnowledgeChildActivity.java +++ /dev/null @@ -1,165 +0,0 @@ -package com.android.learn.activity; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.v7.widget.LinearLayoutManager; -import android.support.v7.widget.RecyclerView; -import android.view.View; -import android.widget.ImageView; -import android.widget.TextView; - -import com.android.learn.R; -import com.android.learn.adapter.ArticleQuickAdapter; -import com.android.learn.adapter.DividerItemDecoration; -import com.android.learn.base.activity.BaseMvpActivity; -import com.android.learn.base.mmodel.FeedArticleListData; -import com.android.learn.base.mmodel.FeedArticleListData.FeedArticleData; -import com.android.learn.base.utils.LanguageUtil; -import com.android.learn.base.utils.LogUtil; -import com.android.learn.base.utils.Utils; -import com.android.learn.base.view.CustomProgressDialog; -import com.android.learn.mcontract.KnowledgeChildContract; -import com.android.learn.mpresenter.KnowledgeChildPresenter; -import com.chad.library.adapter.base.BaseQuickAdapter; -import com.scwang.smartrefresh.layout.SmartRefreshLayout; -import com.scwang.smartrefresh.layout.api.RefreshLayout; -import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener; - -import java.util.ArrayList; -import java.util.List; - -import butterknife.BindView; - -public class KnowledgeChildActivity extends BaseMvpActivity implements KnowledgeChildContract.View { - @BindView(R.id.iv_back) - ImageView iv_back; - @BindView(R.id.title) - TextView title; - @BindView(R.id.tv_empty_knowledge) - TextView tv_empty_knowledge; - @BindView(R.id.article_recyclerview) - RecyclerView article_recyclerview; - @BindView(R.id.smartRefreshLayout) - SmartRefreshLayout smartRefreshLayout; - private List articleDataList; - private ArticleQuickAdapter feedArticleAdapter; - int cid; - String titleStr; - String TAG = "KnowledgeChildActivity"; - public static final String ID = "page"; - public static final String TITLE = "TITLE"; - - public static void startTreeChildrenActivity(Context context, int id, String name) { - Intent intent = new Intent(context, KnowledgeChildActivity.class); - intent.putExtra(ID, id); - intent.putExtra(TITLE, name); - context.startActivity(intent); - } - - @Override - protected int getLayoutId() { - return R.layout.activity_knowledge_article; - } - - @Override - protected void initData(Bundle bundle) { - cid = bundle.getInt(ID); - titleStr = bundle.getString(TITLE); - LogUtil.d(TAG, "id--------------" + cid); - LogUtil.d(TAG, "titleStr--------------" + titleStr); - title.setText(titleStr); - iv_back.setVisibility(View.VISIBLE); - initSmartRefreshLayout(); - initRecyclerView(); - } - - - @Override - public KnowledgeChildPresenter initPresenter() { - return new KnowledgeChildPresenter(); - } - - @Override - protected void loadData() { - CustomProgressDialog.show(this); - mPresenter.getKnowledgeArticleList(0, cid); - } - - @Override - public void showArticleList(FeedArticleListData listData, boolean isRefresh) { - final List newDataList = listData.getDatas(); - if (newDataList == null || newDataList.size() == 0) { - smartRefreshLayout.finishLoadMoreWithNoMoreData(); - return; - } - smartRefreshLayout.finishLoadMore(); - - feedArticleAdapter.addData(newDataList); - - } - - @Override - public void showCollectArticleData(int position, FeedArticleData feedArticleData) { - feedArticleAdapter.setData(position, feedArticleData); - } - - @Override - public void showCancelCollectArticleData(int position, FeedArticleData feedArticleData) { - feedArticleAdapter.setData(position, feedArticleData); - } - - private void initRecyclerView() { - articleDataList = new ArrayList<>(); - feedArticleAdapter = new ArticleQuickAdapter(this, articleDataList, "KnowledgeChildActivity"); - article_recyclerview.addItemDecoration(new DividerItemDecoration(this, - DividerItemDecoration.VERTICAL_LIST)); - article_recyclerview.setLayoutManager(new LinearLayoutManager(this)); - - //解决数据加载完成后, 没有停留在顶部的问题 - article_recyclerview.setFocusable(false); - article_recyclerview.setAdapter(feedArticleAdapter); - - feedArticleAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() { - @Override - public void onItemClick(BaseQuickAdapter adapter, View view, int position) { - Intent intent = new Intent(KnowledgeChildActivity.this, ArticleDetailActivity.class); - Bundle bundle = new Bundle(); - bundle.putString("url", feedArticleAdapter.getData().get(position).getLink()); - intent.putExtras(bundle); - startActivity(intent); - } - - }); - feedArticleAdapter.setOnItemChildClickListener(new BaseQuickAdapter.OnItemChildClickListener() { - @Override - public void onItemChildClick(BaseQuickAdapter adapter, View view, int position) { - if (feedArticleAdapter.getData().get(position).isCollect()) { - mPresenter.cancelCollectArticle(position, feedArticleAdapter.getData().get(position)); - } else { - mPresenter.addCollectArticle(position, feedArticleAdapter.getData().get(position)); - } - } - }); - } - - //初始化下拉刷新控件 - private void initSmartRefreshLayout() { - smartRefreshLayout.setEnableLoadMore(true); - smartRefreshLayout.setEnableRefresh(false); - smartRefreshLayout.setEnableScrollContentWhenLoaded(true);//是否在加载完成时滚动列表显示新的内容 - smartRefreshLayout.setEnableFooterFollowWhenLoadFinished(true); - smartRefreshLayout.setOnRefreshLoadMoreListener(new OnRefreshLoadMoreListener() { - @Override - public void onLoadMore(RefreshLayout refreshLayout) { - mPresenter.onLoadMore(cid); - } - - @Override - public void onRefresh(RefreshLayout refreshLayout) { - mPresenter.onRefreshMore(cid); - } - }); - } - -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/activity/LanguageActivity.java b/AndroidLearnProject/app/src/main/java/com/android/learn/activity/LanguageActivity.java deleted file mode 100644 index 94aade0..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/activity/LanguageActivity.java +++ /dev/null @@ -1,113 +0,0 @@ -package com.android.learn.activity; - -import android.app.LauncherActivity; -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.os.Handler; -import android.support.v7.widget.AppCompatCheckBox; -import android.view.View; -import android.widget.CompoundButton; -import android.widget.ImageView; -import android.widget.TextView; - -import com.android.learn.R; -import com.android.learn.base.activity.BaseActivity; -import com.android.learn.base.activity.BaseMvpActivity; -import com.android.learn.base.event.LogoutEvent; -import com.android.learn.base.event.RestartMainEvent; -import com.android.learn.base.mpresenter.BasePresenter; -import com.android.learn.base.utils.LanguageUtil; -import com.android.learn.base.utils.LogUtil; -import com.android.learn.base.utils.SPUtils; -import com.android.learn.base.utils.account.UserUtil; - -import org.greenrobot.eventbus.EventBus; - -import butterknife.BindView; -import butterknife.OnClick; - - -public class LanguageActivity extends BaseMvpActivity { - @BindView(R.id.iv_back) - ImageView iv_back; - @BindView(R.id.title) - TextView title; - @BindView(R.id.cb_system) - AppCompatCheckBox cb_system; - @BindView(R.id.cb_chinese) - AppCompatCheckBox cb_chinese; - @BindView(R.id.cb_english) - AppCompatCheckBox cb_english; - String TAG = "LanguageActivity"; - - public static void startActivity(Context context) { - Intent intent = new Intent(context, LanguageActivity.class); - context.startActivity(intent); - } - - @Override - protected int getLayoutId() { - return R.layout.activity_language; - } - - @Override - protected void initData(Bundle bundle) { - title.setText(getString(R.string.language_set)); - iv_back.setVisibility(View.VISIBLE); - - int language = (Integer) SPUtils.getParam(this, "language", 0); - if (language == 0) { - cb_system.setChecked(true); - } else if (language == 1) { - cb_chinese.setChecked(true); - } else if (language == 2) { - cb_english.setChecked(true); - } - - } - - - private void selectLanguage(int select) { - LanguageUtil.saveSelectLanguage(this, select); - EventBus.getDefault().post(new RestartMainEvent(this)); - } - - - @OnClick({R.id.cb_system, R.id.cb_chinese, R.id.cb_english}) - public void click(View view) { - cb_system.setChecked(false); - cb_chinese.setChecked(false); - cb_english.setChecked(false); - - - switch (view.getId()) { - case R.id.cb_system: - selectLanguage(0); - break; - case R.id.cb_chinese: - selectLanguage(1); - break; - case R.id.cb_english: - selectLanguage(2); - break; - - } - } - - - public void onDestroy() { - super.onDestroy(); - LogUtil.d(TAG, TAG + " onDestroy--------"); - } - - @Override - public BasePresenter initPresenter() { - return null; - } - - @Override - protected void loadData() { - - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/activity/MyCollectActivity.java b/AndroidLearnProject/app/src/main/java/com/android/learn/activity/MyCollectActivity.java deleted file mode 100644 index 87b4d93..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/activity/MyCollectActivity.java +++ /dev/null @@ -1,151 +0,0 @@ -package com.android.learn.activity; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.v7.widget.LinearLayoutManager; -import android.support.v7.widget.RecyclerView; -import android.view.View; -import android.widget.ImageView; -import android.widget.TextView; - -import com.android.learn.R; -import com.android.learn.adapter.ArticleQuickAdapter; -import com.android.learn.adapter.DividerItemDecoration; -import com.android.learn.base.activity.BaseMvpActivity; -import com.android.learn.base.event.CancelCollectEvent; -import com.android.learn.base.mmodel.FeedArticleListData; -import com.android.learn.base.mmodel.FeedArticleListData.FeedArticleData; -import com.android.learn.base.utils.LanguageUtil; -import com.android.learn.base.view.CustomProgressDialog; -import com.android.learn.mcontract.CollectContract; -import com.android.learn.mpresenter.CollectPresenter; -import com.chad.library.adapter.base.BaseQuickAdapter; -import com.scwang.smartrefresh.layout.SmartRefreshLayout; -import com.scwang.smartrefresh.layout.api.RefreshLayout; -import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; - -import org.greenrobot.eventbus.EventBus; - -import java.util.ArrayList; -import java.util.List; - -import butterknife.BindView; - - -public class MyCollectActivity extends BaseMvpActivity implements CollectContract.View { - - - @BindView(R.id.iv_back) - ImageView iv_back; - @BindView(R.id.title) - TextView title; - @BindView(R.id.article_collect_recyclerview) - RecyclerView article_collect_recyclerview; - @BindView(R.id.smartRefreshLayout) - SmartRefreshLayout smartRefreshLayout; - @BindView(R.id.tv_empty_collect) - TextView tv_empty_collect; - private List articleDataList; - private ArticleQuickAdapter feedArticleAdapter; - - public static void startActivity(Context context) { - Intent intent = new Intent(context, MyCollectActivity.class); - context.startActivity(intent); - } - - @Override - protected int getLayoutId() { - return R.layout.activity_collect; - } - - @Override - protected void initData(Bundle bundle) { - title.setText(getString(R.string.collect)); - iv_back.setVisibility(View.VISIBLE); - initRecyclerView(); - initSmartRefreshLayout(); - - } - - - @Override - public CollectPresenter initPresenter() { - return new CollectPresenter(); - } - - @Override - protected void loadData() { - CustomProgressDialog.show(this); - mPresenter.getCollectList(); - } - - - @Override - public void showCollectList(FeedArticleListData feedArticleListData) { - final List newDataList = feedArticleListData.getDatas(); - if (newDataList == null || newDataList.size() == 0) { - smartRefreshLayout.finishLoadMoreWithNoMoreData(); - } - smartRefreshLayout.finishLoadMore(); - - feedArticleAdapter.addData(newDataList); - - if (feedArticleAdapter.getData().size() == 0) { - tv_empty_collect.setVisibility(View.VISIBLE); - } else tv_empty_collect.setVisibility(View.GONE); - - } - - @Override - public void showCancelCollectArticle(int position, int id) { - feedArticleAdapter.remove(position); - EventBus.getDefault().post(new CancelCollectEvent(id)); - } - - private void initRecyclerView() { - articleDataList = new ArrayList<>(); - feedArticleAdapter = new ArticleQuickAdapter(this, articleDataList, "MyCollectActivity"); - article_collect_recyclerview.addItemDecoration(new DividerItemDecoration(this, - DividerItemDecoration.VERTICAL_LIST)); - article_collect_recyclerview.setLayoutManager(new LinearLayoutManager(this)); - - article_collect_recyclerview.setFocusable(false); - article_collect_recyclerview.setAdapter(feedArticleAdapter); - feedArticleAdapter.setOnItemChildClickListener(new BaseQuickAdapter.OnItemChildClickListener() { - @Override - public void onItemChildClick(BaseQuickAdapter adapter, View view, int position) { - mPresenter.cancelCollectArticle(position, feedArticleAdapter.getData().get(position).originId); - } - }); - feedArticleAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() { - @Override - public void onItemClick(BaseQuickAdapter adapter, View view, int position) { - Intent intent = new Intent(MyCollectActivity.this, ArticleDetailActivity.class); - Bundle bundle = new Bundle(); - bundle.putString("url", articleDataList.get(position).getLink()); - intent.putExtras(bundle); - startActivity(intent); - } - - }); - } - - private void initSmartRefreshLayout() { - smartRefreshLayout.setEnableLoadMore(true); - smartRefreshLayout.setEnableRefresh(false); - smartRefreshLayout.setEnableScrollContentWhenLoaded(true);//是否在加载完成时滚动列表显示新的内容 - smartRefreshLayout.setEnableFooterFollowWhenLoadFinished(true); - smartRefreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { - @Override - public void onLoadMore(RefreshLayout refreshLayout) { - mPresenter.getCollectList(); - - } - - - }); - } - - -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/activity/MyTodoActivity.java b/AndroidLearnProject/app/src/main/java/com/android/learn/activity/MyTodoActivity.java deleted file mode 100644 index d6b64ff..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/activity/MyTodoActivity.java +++ /dev/null @@ -1,153 +0,0 @@ -package com.android.learn.activity; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.design.widget.TabLayout; -import android.support.v4.app.Fragment; -import android.support.v4.app.FragmentManager; -import android.support.v4.app.FragmentPagerAdapter; -import android.view.View; -import android.widget.ImageView; -import android.widget.TextView; - - -import com.android.learn.R; -import com.android.learn.base.activity.BaseMvpActivity; -import com.android.learn.base.mpresenter.BasePresenter; -import com.android.learn.fragment.TodoFragment; -import com.android.learn.view.CustomViewPager; - -import java.util.ArrayList; -import java.util.List; - -import butterknife.BindView; -import butterknife.OnClick; - -public class MyTodoActivity extends BaseMvpActivity { - @BindView(R.id.iv_back) - ImageView iv_back; - @BindView(R.id.iv_search) - ImageView iv_search; - @BindView(R.id.title) - TextView tv_title; - @BindView(R.id.tabLayout) - TabLayout tabLayout; - @BindView(R.id.viewPager) - CustomViewPager viewPager; - TodoFragment todoFragment, doneFragment; - - private List mFragments = new ArrayList<>(); - - public static void startActivity(Context context) { - Intent intent = new Intent(context, MyTodoActivity.class); - context.startActivity(intent); - } - - private void initTab() { - - tabLayout.getTabAt(0).setCustomView(R.layout.tab_todo); - tabLayout.getTabAt(1).setCustomView(R.layout.tab_done); - - - tabLayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() { - //标签选中之后执行的方法 - @Override - public void onTabSelected(TabLayout.Tab tab) { -// title.setText(titles.get(tab.getPosition())); - if (tab.getPosition() == 0) - iv_search.setVisibility(View.VISIBLE); - if (tab.getPosition() == 1) - iv_search.setVisibility(View.GONE); - - } - - //标签没选中 - @Override - public void onTabUnselected(TabLayout.Tab tab) { - - } - - @Override - public void onTabReselected(TabLayout.Tab tab) { - - } - }); - //默认选中的Tab - tabLayout.getTabAt(0).getCustomView().setSelected(true); - } - - @Override - protected int getLayoutId() { - return R.layout.activity_my_todo; - } - - @Override - protected void initData(Bundle bundle) { - tv_title.setText(getString(R.string.todo)); - iv_back.setVisibility(View.VISIBLE); - iv_search.setVisibility(View.VISIBLE); - iv_search.setImageResource(R.drawable.add_todo); - Bundle bundle1 = new Bundle(); - bundle1.putInt("position", 0); - todoFragment = TodoFragment.newInstance(bundle1); - Bundle bundle2 = new Bundle(); - bundle2.putInt("position", 1); - doneFragment = TodoFragment.newInstance(bundle2); - mFragments.add(todoFragment); - mFragments.add(doneFragment); - CourseDiscussAdapter adapter = new CourseDiscussAdapter(getSupportFragmentManager(), mFragments); - viewPager.setOffscreenPageLimit(mFragments.size()); - viewPager.setAdapter(adapter); - viewPager.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(tabLayout)); - tabLayout.addOnTabSelectedListener(new TabLayout.ViewPagerOnTabSelectedListener(viewPager)); - //将TabLayout和ViewPager关联起来 - tabLayout.setupWithViewPager(viewPager); - initTab(); - } - - @OnClick({R.id.iv_search}) - public void click(View view) { - switch (view.getId()) { - case R.id.iv_search: - TodoAddActivity.startActivity(MyTodoActivity.this, null); - break; - - } - - } - - @Override - public BasePresenter initPresenter() { - return null; - } - - @Override - protected void loadData() { - - } - - public class CourseDiscussAdapter extends FragmentPagerAdapter { - - List fragments; - - public CourseDiscussAdapter(FragmentManager fm, List fragments) { - super(fm); - this.fragments = fragments; - - - } - - @Override - public Fragment getItem(int position) { - Fragment fragment = fragments.get(position); - - return fragment; - } - - @Override - public int getCount() { - return fragments.size(); - } - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/activity/RegisterLoginActivity.java b/AndroidLearnProject/app/src/main/java/com/android/learn/activity/RegisterLoginActivity.java deleted file mode 100644 index b68ee1d..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/activity/RegisterLoginActivity.java +++ /dev/null @@ -1,175 +0,0 @@ -package com.android.learn.activity; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.view.KeyEvent; -import android.view.View; -import android.widget.EditText; -import android.widget.ImageView; -import android.widget.LinearLayout; -import android.widget.TextView; - -import com.android.learn.R; -import com.android.learn.base.activity.BaseMvpActivity; -import com.android.learn.base.mmodel.RegisterLoginData; -import com.android.learn.base.utils.LanguageUtil; -import com.android.learn.base.utils.SPUtils; -import com.android.learn.base.utils.Utils; -import com.android.learn.base.utils.account.UserUtil; -import com.android.learn.mcontract.RegisterLoginContract; -import com.android.learn.mpresenter.RegisterLoginPresenter; - -import butterknife.BindView; -import butterknife.OnClick; - - -public class RegisterLoginActivity extends BaseMvpActivity implements RegisterLoginContract.View { - @BindView(R.id.iv_back) - ImageView iv_back; - @BindView(R.id.title) - TextView title; - @BindView(R.id.tv_login) - TextView tv_login; - @BindView(R.id.tv_register_free) - TextView tv_register_free; - - @BindView(R.id.tv_register) - TextView tv_register; - - @BindView(R.id.layout_login) - LinearLayout layout_login; - @BindView(R.id.layout_register) - LinearLayout layout_register; - - - @BindView(R.id.et_register_phone_num) - EditText et_register_phone_num; - - @BindView(R.id.et_register_password) - EditText et_register_password; - @BindView(R.id.et_register_confirm_password) - EditText et_register_confirm_password; - - - @BindView(R.id.et_login_phone_num) - EditText et_login_phone_num; - @BindView(R.id.et_login_password) - EditText et_login_password; - - TextView tv_register_contract_content; - boolean isInContract; - - boolean isInRegister = false, isInForgetPwd = false; - String registerFlag; - - public static void startActivity(Context context) { - Intent intent = new Intent(context, RegisterLoginActivity.class); - context.startActivity(intent); - } - - @Override - protected int getLayoutId() { - return R.layout.activity_login_register; - } - - @Override - protected void initData(Bundle bundle) { - title.setText(getString(R.string.login)); - iv_back.setVisibility(View.VISIBLE); - } - - @OnClick({R.id.iv_back, R.id.tv_login, R.id.tv_register_free, R.id.tv_register}) - public void click(View view) { - switch (view.getId()) { - case R.id.iv_back: - back(); - break; - case R.id.tv_login: - String username = et_login_phone_num.getText().toString(); - String password = et_login_password.getText().toString(); - mPresenter.login(username, password); - break; - case R.id.tv_register_free: - layout_register.setVisibility(View.VISIBLE); - title.setText(getString(R.string.register)); - isInRegister = true; - break; - - case R.id.tv_register: - registerFlag = "tv_register"; - - username = et_register_phone_num.getText().toString().trim(); - password = et_register_password.getText().toString().trim(); - String confirmPassword = et_register_confirm_password.getText().toString().trim(); - - if ("".equals(username)) { - Utils.showToast(getString(R.string.please_input_account), true); - return; - } - if (password.length() < 6) { - Utils.showToast(getString(R.string.register_password_too_short), true); - return; - } - if (!password.equals(confirmPassword)) { - Utils.showToast(getString(R.string.password_dismatch), true); - return; - } - - mPresenter.register(username, password, confirmPassword); - break; - } - - } - - @Override - public boolean onKeyDown(int keyCode, KeyEvent event) { - if (keyCode == KeyEvent.KEYCODE_BACK - && event.getAction() == KeyEvent.ACTION_DOWN) { - back(); - return true; - } - - return super.onKeyDown(keyCode, event); - } - - - private void back() { - if (isInRegister) { - layout_register.setVisibility(View.GONE); - title.setText(getString(R.string.login)); - isInRegister = false; - } else { - finish(); - - } - } - - - public void onDestroy() { - super.onDestroy(); - } - - @Override - public RegisterLoginPresenter initPresenter() { - return new RegisterLoginPresenter(); - } - - @Override - protected void loadData() { - - } - - @Override - public void showRegisterResData(RegisterLoginData registerResData) { - back(); - } - - @Override - public void showLoginResData(RegisterLoginData data) { - UserUtil.setUserInfo(data); - SPUtils.setParam(RegisterLoginActivity.this, "username", et_login_phone_num.getText().toString()); - SPUtils.setParam(RegisterLoginActivity.this, "password", et_login_password.getText().toString()); - finish(); - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/activity/SearchResultActivity.java b/AndroidLearnProject/app/src/main/java/com/android/learn/activity/SearchResultActivity.java deleted file mode 100644 index 62bfb0a..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/activity/SearchResultActivity.java +++ /dev/null @@ -1,156 +0,0 @@ -package com.android.learn.activity; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.v7.widget.LinearLayoutManager; -import android.support.v7.widget.RecyclerView; -import android.view.View; -import android.widget.ImageView; -import android.widget.TextView; - -import com.android.learn.R; -import com.android.learn.adapter.ArticleQuickAdapter; -import com.android.learn.adapter.DividerItemDecoration; -import com.android.learn.base.activity.BaseMvpActivity; -import com.android.learn.base.mmodel.FeedArticleListData; -import com.android.learn.base.mmodel.FeedArticleListData.FeedArticleData; -import com.android.learn.base.mmodel.TodoData; -import com.android.learn.base.utils.LanguageUtil; -import com.android.learn.base.utils.LogUtil; -import com.android.learn.base.utils.Utils; -import com.android.learn.mcontract.SearchContract; -import com.android.learn.mpresenter.SearchPresenter; -import com.chad.library.adapter.base.BaseQuickAdapter; -import com.scwang.smartrefresh.layout.SmartRefreshLayout; -import com.scwang.smartrefresh.layout.api.RefreshLayout; -import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; - -import java.util.ArrayList; -import java.util.List; - -import butterknife.BindView; - -public class SearchResultActivity extends BaseMvpActivity implements SearchContract.View { - @BindView(R.id.iv_back) - ImageView iv_back; - @BindView(R.id.title) - TextView title; - @BindView(R.id.tv_empty_knowledge) - TextView tv_empty_knowledge; - @BindView(R.id.article_recyclerview) - RecyclerView article_recyclerview; - @BindView(R.id.smartRefreshLayout) - SmartRefreshLayout smartRefreshLayout; - private ArticleQuickAdapter feedArticleAdapter; - String keyword; - String TAG = "KnowledgeChildActivity"; - - - public static void startActivity(Context context, Bundle bundle) { - Intent intent = new Intent(context, SearchResultActivity.class); - intent.putExtras(bundle); - context.startActivity(intent); - } - - @Override - protected int getLayoutId() { - return R.layout.activity_knowledge_article; - } - - @Override - protected void initData(Bundle bundle) { - keyword = bundle.getString("key"); - title.setText(keyword); - iv_back.setVisibility(View.VISIBLE); - initSmartRefreshLayout(); - initRecyclerView(); - } - - - @Override - public SearchPresenter initPresenter() { - return new SearchPresenter(); - } - - @Override - protected void loadData() { - mPresenter.getFeedArticleList(keyword); - } - - @Override - public void showArticleList(FeedArticleListData listData) { - final List newDataList = listData.getDatas(); - if (newDataList == null || newDataList.size() == 0) { - smartRefreshLayout.finishLoadMoreWithNoMoreData(); - } - smartRefreshLayout.finishLoadMore(); - - feedArticleAdapter.addData(newDataList); - - if (feedArticleAdapter.getData().size() == 0) { - tv_empty_knowledge.setVisibility(View.VISIBLE); - } else tv_empty_knowledge.setVisibility(View.GONE); - } - - @Override - public void showCollectArticleData(int position, FeedArticleData feedArticleData) { - feedArticleAdapter.setData(position, feedArticleData); - } - - @Override - public void showCancelCollectArticleData(int position, FeedArticleData feedArticleData) { - feedArticleAdapter.setData(position, feedArticleData); - } - - private void initRecyclerView() { - List articleDataList = new ArrayList<>(); - feedArticleAdapter = new ArticleQuickAdapter(this, articleDataList, "KnowledgeChildActivity"); - article_recyclerview.addItemDecoration(new DividerItemDecoration(this, - DividerItemDecoration.VERTICAL_LIST)); - article_recyclerview.setLayoutManager(new LinearLayoutManager(this)); - - //解决数据加载完成后, 没有停留在顶部的问题 - article_recyclerview.setFocusable(false); - article_recyclerview.setAdapter(feedArticleAdapter); - feedArticleAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() { - @Override - public void onItemClick(BaseQuickAdapter adapter, View view, int position) { - Intent intent = new Intent(SearchResultActivity.this, ArticleDetailActivity.class); - Bundle bundle = new Bundle(); - bundle.putString("url", feedArticleAdapter.getData().get(position).getLink()); - intent.putExtras(bundle); - startActivity(intent); - } - - }); - feedArticleAdapter.setOnItemChildClickListener(new BaseQuickAdapter.OnItemChildClickListener() { - @Override - public void onItemChildClick(BaseQuickAdapter adapter, View view, int position) { - if (feedArticleAdapter.getData().get(position).isCollect()) { - mPresenter.cancelCollectArticle(position, feedArticleAdapter.getData().get(position)); - } else { - mPresenter.addCollectArticle(position, feedArticleAdapter.getData().get(position)); - } - } - }); - } - - //初始化下拉刷新控件 - private void initSmartRefreshLayout() { - smartRefreshLayout.setEnableLoadMore(true); - smartRefreshLayout.setEnableRefresh(false); - smartRefreshLayout.setEnableScrollContentWhenLoaded(true);//是否在加载完成时滚动列表显示新的内容 - smartRefreshLayout.setEnableFooterFollowWhenLoadFinished(true); - smartRefreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { - @Override - public void onLoadMore(RefreshLayout refreshLayout) { - mPresenter.onLoadMore(keyword); - } - - - }); - } - - -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/activity/SettingActivity.java b/AndroidLearnProject/app/src/main/java/com/android/learn/activity/SettingActivity.java deleted file mode 100644 index 8963ba9..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/activity/SettingActivity.java +++ /dev/null @@ -1,205 +0,0 @@ -package com.android.learn.activity; - -import android.app.AlertDialog; -import android.content.Context; -import android.content.DialogInterface; -import android.content.Intent; -import android.os.Bundle; -import android.support.v7.widget.AppCompatCheckBox; -import android.view.View; -import android.widget.CompoundButton; -import android.widget.ImageView; -import android.widget.LinearLayout; -import android.widget.TextView; - -import com.android.learn.R; -import com.android.learn.base.activity.BaseActivity; -import com.android.learn.base.activity.BaseMvpActivity; -import com.android.learn.base.event.ChangeNightEvent; -import com.android.learn.base.event.LogoutEvent; -import com.android.learn.base.event.RestartMainEvent; -import com.android.learn.base.mpresenter.BasePresenter; -import com.android.learn.base.thirdframe.retrofit.RetrofitProvider; -import com.android.learn.base.utils.LanguageUtil; -import com.android.learn.base.utils.SPUtils; -import com.android.learn.base.utils.Utils; -import com.android.learn.base.utils.account.UserUtil; - -import org.greenrobot.eventbus.EventBus; -import org.greenrobot.eventbus.Subscribe; -import org.greenrobot.eventbus.ThreadMode; - -import butterknife.BindView; -import butterknife.OnClick; - - -public class SettingActivity extends BaseMvpActivity { - @BindView(R.id.iv_back) - ImageView iv_back; - @BindView(R.id.title) - TextView title; - @BindView(R.id.tv_versionName) - TextView tv_versionName; - @BindView(R.id.help_feedback_layout) - LinearLayout help_feedback_layout; - @BindView(R.id.version_update_layout) - LinearLayout version_update_layout; - @BindView(R.id.language_switch_layout) - LinearLayout language_switch_layout; - @BindView(R.id.font_size_layout) - LinearLayout font_size_layout; - @BindView(R.id.my_logout_layout) - LinearLayout my_logout_layout; - @BindView(R.id.cb_setting_night) - AppCompatCheckBox cb_setting_night; - - - public static void startActivity(Context context) { - Intent intent = new Intent(context, SettingActivity.class); - context.startActivity(intent); - } - - @Override - protected int getLayoutId() { - return R.layout.activity_setting; - } - - - - @Override - protected void initData(Bundle bundle) { - title.setText(getString(R.string.my_setting)); - iv_back.setVisibility(View.VISIBLE); - tv_versionName.setText(Utils.getVersionName(this)); - Boolean isNightMode = (Boolean) SPUtils.getParam(this, "nightMode", new Boolean(false)); - if (isNightMode) { - cb_setting_night.setChecked(true); - } else { - cb_setting_night.setChecked(false); - } - cb_setting_night.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { - - @Override - public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { - - if (isChecked) - SPUtils.setParam(SettingActivity.this, "nightMode", new Boolean(true)); - else SPUtils.setParam(SettingActivity.this, "nightMode", new Boolean(false)); - useNightMode(isChecked); - EventBus.getDefault().post(new ChangeNightEvent()); - setStatusBar(); - - } - }); - EventBus.getDefault().register(this); - } - - - @OnClick({R.id.help_feedback_layout, R.id.version_update_layout, R.id.language_switch_layout, R.id.font_size_layout, R.id.my_logout_layout}) - public void click(View view) { - - switch (view.getId()) { - case R.id.help_feedback_layout: - FeedbackActivity.startActivity(SettingActivity.this); - break; - case R.id.language_switch_layout: - LanguageActivity.startActivity(SettingActivity.this); - break; - case R.id.font_size_layout: - FontSizeActivity.startActivity(SettingActivity.this); - break; - case R.id.my_logout_layout: - if (!UserUtil.isLogined()) { - RegisterLoginActivity.startActivity(this); - return; - } - UserUtil.setLogined(false); - EventBus.getDefault().post(new LogoutEvent()); - RetrofitProvider.getInstance().sharedPrefsCookiePersistor.clear(); - finish(); - break; - } - } - - @Override - public BasePresenter initPresenter() { - return null; - } - - @Override - protected void loadData() { - - } - - // private void checkUpdate() { -// -// if (OnlineParamUtil.getParamResData() != null && OnlineParamUtil.getParamResData().rspBody != null) { -// String android_versionCode = OnlineParamUtil.getParamResData().rspBody.android_versionCode.content.trim(); -// -// String android_update_content = OnlineParamUtil.getParamResData().rspBody.android_update_content.content.trim(); -// String android_must_update = OnlineParamUtil.getParamResData().rspBody.android_must_update.content.trim(); -// final String android_app_download_url = OnlineParamUtil.getParamResData().rspBody.android_app_download_url.content.trim(); -// if (Utils.stringToInt(android_versionCode) <= Utils.getVersionCode(this)) { -// Utils.showToast("当前是最新版本", true); -// return; -// } -// AlertDialog.Builder builder; -// builder = new AlertDialog.Builder(SettingActivity.this); -// builder.setTitle("升级提醒"); -// builder.setIcon(R.drawable.update); -// builder.setMessage(android_update_content); -// builder.setCancelable(false); -// if ("false".equals(android_must_update)) { -// builder.setNegativeButton("取消", new DialogInterface.OnClickListener() { -// @Override -// public void onClick(DialogInterface dialog, int which) { -// dialog.cancel(); -// -// } -// }); -// } -// builder.setPositiveButton("升级", new DialogInterface.OnClickListener() { -// @Override -// public void onClick(DialogInterface dialog, int which) { -// dialog.cancel(); -// UpdateApk.downFile(android_app_download_url, SettingActivity.this); -// } -// }); -// builder.show(); -// } -// } - int yourChoice; - - private void showSingleChoiceDialog() { - final String[] items = {"跟随系统", "简体中文", "English"}; - yourChoice = -1; - AlertDialog.Builder singleChoiceDialog = - new AlertDialog.Builder(SettingActivity.this); - singleChoiceDialog.setTitle("选择语言"); - // 第二个参数是默认选项,此处设置为0 - singleChoiceDialog.setSingleChoiceItems(items, 0, - new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - yourChoice = which; - } - }); - singleChoiceDialog.setPositiveButton("确定", - new DialogInterface.OnClickListener() { - @Override - public void onClick(DialogInterface dialog, int which) { - SPUtils.setParam(SettingActivity.this, "languageIndex", which); - } - }); - singleChoiceDialog.show(); - } - - @Subscribe(threadMode = ThreadMode.MAIN) - public void onEvent(RestartMainEvent event) { - finish(); - } - public void onDestroy(){ - super.onDestroy(); - EventBus.getDefault().unregister(this); - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/activity/SplashActivity.java b/AndroidLearnProject/app/src/main/java/com/android/learn/activity/SplashActivity.java deleted file mode 100644 index 859bde0..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/activity/SplashActivity.java +++ /dev/null @@ -1,76 +0,0 @@ -package com.android.learn.activity; - -import android.content.Intent; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.support.annotation.Nullable; -import android.view.View; - -import com.android.learn.MainActivity; -import com.android.learn.R; -import com.android.learn.base.activity.BaseMvpActivity; -import com.android.learn.base.mmodel.RegisterLoginData; -import com.android.learn.base.utils.SPUtils; -import com.android.learn.base.utils.account.UserUtil; -import com.android.learn.mcontract.SplashLoginContract; -import com.android.learn.mpresenter.SplashLoginPresenter; -import com.jaeger.library.StatusBarUtil; - -public class SplashActivity extends BaseMvpActivity implements SplashLoginContract.View { - - - Handler handler = new Handler() { - public void handleMessage(Message msg) { - Intent intent = new Intent(SplashActivity.this, MainActivity.class); - startActivity(intent); - finish(); - } - }; - - @Override - protected int getLayoutId() { - return R.layout.activity_splash; - } - - @Override - protected void initData(Bundle bundle) { - } - - @Override - public SplashLoginPresenter initPresenter() { - return new SplashLoginPresenter(); - } - - @Override - protected void loadData() { - String phone_num = (String) SPUtils.getParam(this, "username", ""); - String password = (String) SPUtils.getParam(this, "password", ""); - if (phone_num.length() > 0 && password.length() > 0) { - mPresenter.login(phone_num, password); - } else handler.sendEmptyMessageDelayed(0, 2000); - } - - public void jumpToMainActivity(View view) { - Intent intent = new Intent(SplashActivity.this, MainActivity.class); - startActivity(intent); - handler.removeCallbacksAndMessages(null); - finish(); - } - - - @Override - public void showLoginResData(RegisterLoginData loginResData) { - UserUtil.setUserInfo(loginResData); - handler.sendEmptyMessageDelayed(0, 1500); - } - - @Override - protected void setStatusBar() { - StatusBarUtil.setTransparent(this); - } - - public void onDestroy() { - super.onDestroy(); - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/activity/TodoAddActivity.java b/AndroidLearnProject/app/src/main/java/com/android/learn/activity/TodoAddActivity.java deleted file mode 100755 index face32a..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/activity/TodoAddActivity.java +++ /dev/null @@ -1,119 +0,0 @@ -package com.android.learn.activity; - -import android.app.DatePickerDialog; -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.design.widget.TextInputEditText; -import android.view.View; -import android.widget.Button; -import android.widget.DatePicker; -import android.widget.ImageView; -import android.widget.TextView; - -import com.android.learn.R; -import com.android.learn.base.activity.BaseMvpActivity; -import com.android.learn.base.event.UpdateTodoEvent; -import com.android.learn.base.mmodel.BaseData; -import com.android.learn.base.mmodel.TodoData.DatasBean; -import com.android.learn.base.utils.LanguageUtil; -import com.android.learn.base.utils.Utils; -import com.android.learn.mcontract.TodoAddContract; -import com.android.learn.mcontract.TodoEditContract; -import com.android.learn.mpresenter.TodoAddPresenter; -import com.android.learn.mpresenter.TodoEditPresenter; - -import org.greenrobot.eventbus.EventBus; - -import java.util.Calendar; -import java.util.Date; -import java.util.HashMap; -import java.util.Map; - -import butterknife.BindView; -import butterknife.OnClick; - - -public class TodoAddActivity extends BaseMvpActivity implements TodoAddContract.View { - @BindView(R.id.title) - TextView mTitle; - @BindView(R.id.iv_back) - ImageView iv_back; - @BindView(R.id.todo_name) - TextInputEditText et_title; - @BindView(R.id.todo_des) - TextInputEditText et_content; - @BindView(R.id.todo_date) - TextView mTodoDate; - - public static void startActivity(Context context, Bundle bundle) { - Intent intent = new Intent(context, TodoAddActivity.class); - if(bundle!=null) - intent.putExtras(bundle); - context.startActivity(intent); - } - - @Override - protected int getLayoutId() { - return R.layout.activity_edit_todo; - } - - @Override - protected void initData(Bundle bundle) { - mTitle.setText(getString(R.string.add)); - iv_back.setVisibility(View.VISIBLE); - } - - @OnClick({R.id.save_todo,R.id.todo_date}) - public void click(View view) { - switch (view.getId()) { - case R.id.save_todo: - Map map=new HashMap<>(); - map.put("title",et_title.getText().toString()); - map.put("content",et_content.getText().toString()); - String date=mTodoDate.getText().toString(); - if(!date.contains("-")){ - Utils.showToast(getString(R.string.select_time),true); - return; - } - map.put("date",date); -// map.put("status",0); - map.put("type",0); - - mPresenter.addTodo(map); - break; - case R.id.todo_date: - Calendar calendar = Calendar.getInstance(); - - DatePickerDialog datePickerDialog = new DatePickerDialog(this, new DatePickerDialog.OnDateSetListener() { - @Override - public void onDateSet(DatePicker datePicker, int year, int month, int dayOfMonth) { - mTodoDate.setText(String.format("%d-%d-%d", year, month + 1, dayOfMonth)); - } - }, calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH)); - datePickerDialog.getDatePicker().setMinDate(new Date().getTime()); - datePickerDialog.show(); - break; - - } - - } - - - @Override - public TodoAddPresenter initPresenter() { - return new TodoAddPresenter(); - } - - @Override - protected void loadData() { - - } - - @Override - public void showAddTodo(BaseData todoData) { - Utils.showToast(getString(R.string.operate_success),true); - EventBus.getDefault().post(new UpdateTodoEvent()); - finish(); - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/activity/TodoEditActivity.java b/AndroidLearnProject/app/src/main/java/com/android/learn/activity/TodoEditActivity.java deleted file mode 100755 index f9ae065..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/activity/TodoEditActivity.java +++ /dev/null @@ -1,124 +0,0 @@ -package com.android.learn.activity; - -import android.app.DatePickerDialog; -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.design.widget.TextInputEditText; -import android.view.View; -import android.widget.Button; -import android.widget.DatePicker; -import android.widget.ImageView; -import android.widget.TextView; - -import com.android.learn.R; -import com.android.learn.base.activity.BaseMvpActivity; -import com.android.learn.base.event.UpdateTodoEvent; -import com.android.learn.base.mmodel.BaseData; -import com.android.learn.base.mmodel.TodoData; -import com.android.learn.base.mmodel.TodoData.DatasBean; -import com.android.learn.base.utils.LanguageUtil; -import com.android.learn.base.utils.Utils; -import com.android.learn.mcontract.TodoEditContract; -import com.android.learn.mpresenter.TodoEditPresenter; -import com.android.learn.mpresenter.TodoPresenter; - -import org.greenrobot.eventbus.EventBus; - -import java.util.Calendar; -import java.util.Date; -import java.util.HashMap; -import java.util.Map; - -import butterknife.BindView; -import butterknife.OnClick; - - -public class TodoEditActivity extends BaseMvpActivity implements TodoEditContract.View { - @BindView(R.id.title) - TextView mTitle; - @BindView(R.id.iv_back) - ImageView iv_back; - @BindView(R.id.todo_name) - TextInputEditText et_title; - @BindView(R.id.todo_des) - TextInputEditText et_content; - @BindView(R.id.todo_date) - TextView mTodoDate; - - DatasBean datasBean; - - public static void startActivity(Context context, Bundle bundle) { - Intent intent = new Intent(context, TodoEditActivity.class); - intent.putExtras(bundle); - context.startActivity(intent); - } - - @Override - protected int getLayoutId() { - return R.layout.activity_edit_todo; - } - - @Override - protected void initData(Bundle bundle) { - mTitle.setText(getString(R.string.detail)); - iv_back.setVisibility(View.VISIBLE); - datasBean = (DatasBean) bundle.getSerializable("todo_item"); - et_title.setText(datasBean.getTitle()); - et_content.setText(datasBean.getContent()); - mTodoDate.setText(datasBean.getDateStr()); - } - - @OnClick({R.id.save_todo,R.id.todo_date}) - public void click(View view) { - switch (view.getId()) { - case R.id.save_todo: - Map map=new HashMap<>(); - map.put("title",et_title.getText().toString()); - map.put("content",et_content.getText().toString()); - String date=mTodoDate.getText().toString(); - if(!date.contains("-")){ - Utils.showToast(getString(R.string.select_time),true); - return; - } - map.put("date",date); - map.put("status",0); - map.put("type",0); - - mPresenter.updateTodo(datasBean.getId(),map); - break; - case R.id.todo_date: - Calendar calendar = Calendar.getInstance(); - - DatePickerDialog datePickerDialog = new DatePickerDialog(this, new DatePickerDialog.OnDateSetListener() { - @Override - public void onDateSet(DatePicker datePicker, int year, int month, int dayOfMonth) { - mTodoDate.setText(String.format("%d-%d-%d", year, month + 1, dayOfMonth)); - } - }, calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH)); - datePickerDialog.getDatePicker().setMinDate(new Date().getTime()); - datePickerDialog.show(); - break; - - } - - } - - - @Override - public TodoEditPresenter initPresenter() { - return new TodoEditPresenter(); - } - - @Override - protected void loadData() { - - } - - @Override - public void showUpdateTodo(BaseData todoData) { - Utils.showToast(getString(R.string.operate_success),true); - EventBus.getDefault().post(new UpdateTodoEvent()); - finish(); - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/adapter/ArticleQuickAdapter.java b/AndroidLearnProject/app/src/main/java/com/android/learn/adapter/ArticleQuickAdapter.java deleted file mode 100644 index 01708fc..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/adapter/ArticleQuickAdapter.java +++ /dev/null @@ -1,55 +0,0 @@ -package com.android.learn.adapter; - -import android.content.Context; -import android.view.View; -import android.widget.ImageView; - -import com.android.learn.R; -import com.android.learn.base.mmodel.FeedArticleListData.FeedArticleData; -import com.android.learn.base.thirdframe.glide.ImageLoader; -import com.chad.library.adapter.base.BaseQuickAdapter; -import com.chad.library.adapter.base.BaseViewHolder; - -import java.util.List; - -public class ArticleQuickAdapter extends BaseQuickAdapter { - - Context context; - List list; - String fromWhere; - - public ArticleQuickAdapter(Context context, List list, String fromWhere) { - super(R.layout.item_article_list, list); - this.context = context; - this.list = list; - this.fromWhere = fromWhere; - } - - public int getPosById(int id) { - int size = list.size(); - for (int i = 0; i < size; i++) { - if (id == list.get(i).id) - return i; - } - return -1; - } - - @Override - protected void convert(BaseViewHolder helper, FeedArticleData articleData) { - helper.setText(R.id.tv_item_title, articleData.getTitle()) - .setText(R.id.tv_item_time, articleData.getNiceDate()) - .setText(R.id.tv_item_author, articleData.getAuthor()); - helper.addOnClickListener(R.id.iv_item_collect); - if ("HomeFragment".equals(fromWhere)||"KnowledgeChildActivity".equals(fromWhere)||"WechatSubFragment".equals(fromWhere)) { - if (articleData.isCollect()) { - helper.setImageResource(R.id.iv_item_collect, R.drawable.icon_collect_select); - } else { - helper.setImageResource(R.id.iv_item_collect, R.drawable.icon_collect_unselect); - } - } - if ("MyCollectActivity".equals(fromWhere)) { - helper.setImageResource(R.id.iv_item_collect, R.drawable.icon_collect_select); - } - - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/adapter/DividerItemDecoration.java b/AndroidLearnProject/app/src/main/java/com/android/learn/adapter/DividerItemDecoration.java deleted file mode 100644 index b68e51b..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/adapter/DividerItemDecoration.java +++ /dev/null @@ -1,94 +0,0 @@ -package com.android.learn.adapter; - -import android.content.Context; -import android.content.res.TypedArray; -import android.graphics.Canvas; -import android.graphics.Rect; -import android.graphics.drawable.Drawable; -import android.support.v7.widget.LinearLayoutManager; -import android.support.v7.widget.RecyclerView; -import android.util.Log; -import android.view.View; - -public class DividerItemDecoration extends RecyclerView.ItemDecoration { - - private static final int[] ATTRS = new int[]{ - android.R.attr.listDivider - }; - - public static final int HORIZONTAL_LIST = LinearLayoutManager.HORIZONTAL; - - public static final int VERTICAL_LIST = LinearLayoutManager.VERTICAL; - - private Drawable mDivider; - - private int mOrientation; - - public DividerItemDecoration(Context context, int orientation) { - final TypedArray a = context.obtainStyledAttributes(ATTRS); - mDivider = a.getDrawable(0); - a.recycle(); - setOrientation(orientation); - } - - public void setOrientation(int orientation) { - if (orientation != HORIZONTAL_LIST && orientation != VERTICAL_LIST) { - throw new IllegalArgumentException("invalid orientation"); - } - mOrientation = orientation; - } - - @Override - public void onDraw(Canvas c, RecyclerView parent) { - - if (mOrientation == VERTICAL_LIST) { - drawVertical(c, parent); - } else { - drawHorizontal(c, parent); - } - - } - - - public void drawVertical(Canvas c, RecyclerView parent) { - final int left = parent.getPaddingLeft(); - final int right = parent.getWidth() - parent.getPaddingRight(); - - final int childCount = parent.getChildCount(); - for (int i = 0; i < childCount; i++) { - final View child = parent.getChildAt(i); - android.support.v7.widget.RecyclerView v = new android.support.v7.widget.RecyclerView(parent.getContext()); - final RecyclerView.LayoutParams params = (RecyclerView.LayoutParams) child - .getLayoutParams(); - final int top = child.getBottom() + params.bottomMargin; - final int bottom = top + mDivider.getIntrinsicHeight(); - mDivider.setBounds(left, top, right, bottom); - mDivider.draw(c); - } - } - - public void drawHorizontal(Canvas c, RecyclerView parent) { - final int top = parent.getPaddingTop(); - final int bottom = parent.getHeight() - parent.getPaddingBottom(); - - final int childCount = parent.getChildCount(); - for (int i = 0; i < childCount; i++) { - final View child = parent.getChildAt(i); - final RecyclerView.LayoutParams params = (RecyclerView.LayoutParams) child - .getLayoutParams(); - final int left = child.getRight() + params.rightMargin; - final int right = left + mDivider.getIntrinsicHeight(); - mDivider.setBounds(left, top, right, bottom); - mDivider.draw(c); - } - } - - @Override - public void getItemOffsets(Rect outRect, int itemPosition, RecyclerView parent) { - if (mOrientation == VERTICAL_LIST) { - outRect.set(0, 0, 0, mDivider.getIntrinsicHeight()); - } else { - outRect.set(0, 0, mDivider.getIntrinsicWidth(), 0); - } - } -} \ No newline at end of file diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/adapter/HorizontalPagerAdapter.java b/AndroidLearnProject/app/src/main/java/com/android/learn/adapter/HorizontalPagerAdapter.java deleted file mode 100644 index bb258c8..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/adapter/HorizontalPagerAdapter.java +++ /dev/null @@ -1,95 +0,0 @@ -package com.android.learn.adapter; - -import android.content.Context; -import android.support.annotation.Nullable; -import android.support.v4.view.PagerAdapter; -import android.support.v7.widget.LinearLayoutManager; -import android.support.v7.widget.RecyclerView; -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; -import android.widget.TextView; - -import com.android.learn.R; -import com.android.learn.activity.KnowledgeChildActivity; -import com.android.learn.base.mmodel.TreeBean; -import com.chad.library.adapter.base.BaseQuickAdapter; -import com.chad.library.adapter.base.BaseViewHolder; - -import java.util.ArrayList; -import java.util.List; - - - -public class HorizontalPagerAdapter extends PagerAdapter { - - private Context mContext; - private LayoutInflater mLayoutInflater; - private List mList = new ArrayList<>(); - - public HorizontalPagerAdapter(final Context context,List mList) { - mContext = context; - this.mList=mList; - mLayoutInflater = LayoutInflater.from(context); - } - - public void setList(List list) { - mList = list; - } - - @Override - public int getCount() { - return mList.size(); - } - - @Override - public Object instantiateItem(final ViewGroup container, final int position) { - final View view; - int page; - view = mLayoutInflater.inflate(R.layout.item_tree, container, false); - final TextView txt = (TextView) view.findViewById(R.id.txt_item); - final TreeBean treeBean = mList.get(position); - txt.setText(treeBean.getName()); - RecyclerView recyclerView = view.findViewById(R.id.recyclerView); - recyclerView.setLayoutManager(new LinearLayoutManager(mContext)); - ChildrenAdapter adapter = new ChildrenAdapter(treeBean.getChildren()); - recyclerView.setAdapter(adapter); - adapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() { - @Override - public void onItemClick(BaseQuickAdapter adapter, View view, int position) { - KnowledgeChildActivity.startTreeChildrenActivity(mContext, - treeBean.getChildren().get(position).getId(), - treeBean.getChildren().get(position).getName()); - } - }); - container.addView(view); - return view; - } - - @Override - public void destroyItem(final ViewGroup container, final int position, final Object object) { - container.removeView((View) object); - } - - @Override - public boolean isViewFromObject(final View view, final Object object) { - return view.equals(object); - } - - @Override - public int getItemPosition(final Object object) { - return POSITION_NONE; - } - - private class ChildrenAdapter extends BaseQuickAdapter { - - public ChildrenAdapter(@Nullable List data) { - super(R.layout.item_tree_children, data); - } - - @Override - protected void convert(BaseViewHolder helper, TreeBean.ChildrenBean item) { - helper.setText(R.id.tv, item.getName()); - } - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/adapter/MainTabAdapter.java b/AndroidLearnProject/app/src/main/java/com/android/learn/adapter/MainTabAdapter.java deleted file mode 100644 index 9186c6b..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/adapter/MainTabAdapter.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.android.learn.adapter; - -import android.app.Activity; -import android.content.Context; -import android.os.Bundle; -import android.support.v4.app.Fragment; -import android.support.v4.app.FragmentManager; -import android.support.v4.app.FragmentPagerAdapter; - - -import com.android.learn.fragment.HomeFragment; - -import java.util.List; - - -public class MainTabAdapter extends FragmentPagerAdapter { - - List fragments; - - public MainTabAdapter(FragmentManager fm, List fragments) { - super(fm); - this.fragments = fragments; - - - } - - @Override - public Fragment getItem(int position) { - Fragment fragment = fragments.get(position); -// Bundle bundle=new Bundle(); -// bundle.putString("title",titles[position]); -// fragment.setArguments(bundle); - return fragment; - } - - @Override - public int getCount() { - return fragments.size(); - } -} - diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/adapter/ProjectQuickAdapter.java b/AndroidLearnProject/app/src/main/java/com/android/learn/adapter/ProjectQuickAdapter.java deleted file mode 100644 index e52b340..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/adapter/ProjectQuickAdapter.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.android.learn.adapter; - -import android.content.Context; -import android.widget.ImageView; - -import com.android.learn.R; -import com.android.learn.base.mmodel.ProjectListData; -import com.android.learn.base.mmodel.ProjectListData.ProjectData; -import com.android.learn.base.thirdframe.glide.ImageLoader; -import com.bumptech.glide.Glide; -import com.chad.library.adapter.base.BaseQuickAdapter; -import com.chad.library.adapter.base.BaseViewHolder; - -import java.util.List; - -public class ProjectQuickAdapter extends BaseQuickAdapter { - Context context; - public ProjectQuickAdapter(Context context, List list) { - super(R.layout.item_project_list, list); - this.context=context; - } - - @Override - protected void convert(BaseViewHolder helper, ProjectData projectInfo) { - helper.setText(R.id.item_project_list_title_tv, projectInfo.getTitle()) - .setText(R.id.item_project_list_content_tv, projectInfo.getDesc()) - .setText(R.id.item_project_list_time_tv, projectInfo.getNiceDate()) - .setText(R.id.item_project_list_author_tv, projectInfo.getAuthor()); - - ImageLoader.getInstance().load(context,projectInfo.getEnvelopePic(),(ImageView) helper.getView(R.id.item_project_list_iv)); - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/adapter/SearchRecordAdapter.java b/AndroidLearnProject/app/src/main/java/com/android/learn/adapter/SearchRecordAdapter.java deleted file mode 100644 index 7a0f023..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/adapter/SearchRecordAdapter.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.android.learn.adapter; - -import android.content.Context; - -import com.android.learn.R; -import com.android.learn.base.db.SearchRecord; -import com.chad.library.adapter.base.BaseQuickAdapter; -import com.chad.library.adapter.base.BaseViewHolder; - -import java.util.List; - -/** - * Created by yuepeng on 2017/6/9. - */ - -public class SearchRecordAdapter extends BaseQuickAdapter { - Context context; - List list; - - public SearchRecordAdapter(Context context, List list) { - super(R.layout.item_search_record, list); - this.context = context; - this.list = list; - } - - @Override - protected void convert(BaseViewHolder helper, SearchRecord searchRecord) { - helper.setText(R.id.tv_history_item, searchRecord.getName()); - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/adapter/TodoQuickAdapter.java b/AndroidLearnProject/app/src/main/java/com/android/learn/adapter/TodoQuickAdapter.java deleted file mode 100644 index dfb8be2..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/adapter/TodoQuickAdapter.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.android.learn.adapter; - -import android.content.Context; -import android.graphics.Color; -import android.view.View; -import android.widget.ImageView; -import android.widget.TextView; - -import com.android.learn.R; -import com.android.learn.base.mmodel.TodoData.DatasBean; -import com.chad.library.adapter.base.BaseQuickAdapter; -import com.chad.library.adapter.base.BaseViewHolder; - -import java.util.List; - -public class TodoQuickAdapter extends BaseQuickAdapter { - - Context context; - List list; - int position; - - public TodoQuickAdapter(Context context, List list, int position) { - super(R.layout.todo_item_view, list); - this.context = context; - this.list = list; - this.position = position; - } - - - @Override - protected void convert(BaseViewHolder helper, DatasBean bean) { - helper.setText(R.id.item_name, bean.getTitle()); - helper.setText(R.id.item_des, bean.getContent()); - helper.setText(R.id.tv_todo_time, bean.getDateStr()); - if (position == 1) { - TextView tv_todo_time = helper.getView(R.id.tv_todo_time); - ImageView iv_item_todo = helper.getView(R.id.iv_item_todo); - tv_todo_time.setTextColor(Color.parseColor("#E4A340")); - tv_todo_time.setBackgroundColor(Color.parseColor("#FFFAF1")); - iv_item_todo.setImageResource(R.drawable.icon_done); - TextView tv_item_done_time = helper.getView(R.id.tv_item_done_time); - tv_item_done_time.setVisibility(View.VISIBLE); - tv_item_done_time.setText(context.getString(R.string.todo_finish_time)+bean.getCompleteDateStr()); - } - helper.addOnClickListener(R.id.iv_item_todo); - helper.addOnClickListener(R.id.iv_item_delete); - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/fragment/HomeFragment.java b/AndroidLearnProject/app/src/main/java/com/android/learn/fragment/HomeFragment.java deleted file mode 100644 index 02f218d..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/fragment/HomeFragment.java +++ /dev/null @@ -1,268 +0,0 @@ -package com.android.learn.fragment; - -import android.content.Context; -import android.content.Intent; -import android.os.Bundle; -import android.support.v4.widget.NestedScrollView; -import android.support.v7.widget.LinearLayoutManager; -import android.support.v7.widget.RecyclerView; -import android.view.View; -import android.widget.ImageView; - -import com.android.learn.R; -import com.android.learn.activity.ArticleDetailActivity; -import com.android.learn.adapter.ArticleQuickAdapter; -import com.android.learn.adapter.DividerItemDecoration; -import com.android.learn.base.event.CancelCollectEvent; -import com.android.learn.base.event.LoginEvent; -import com.android.learn.base.fragment.BaseMvpFragment; -import com.android.learn.base.mmodel.BannerListData; -import com.android.learn.base.mmodel.FeedArticleListData; -import com.android.learn.base.mmodel.FeedArticleListData.FeedArticleData; -import com.android.learn.base.view.CustomProgressDialog; -import com.android.learn.mcontract.HomeContract; -import com.android.learn.mpresenter.HomePresenter; -import com.bumptech.glide.Glide; -import com.chad.library.adapter.base.BaseQuickAdapter; -import com.scwang.smartrefresh.layout.SmartRefreshLayout; -import com.scwang.smartrefresh.layout.api.RefreshLayout; -import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener; -import com.youth.banner.Banner; -import com.youth.banner.BannerConfig; -import com.youth.banner.listener.OnBannerListener; - -import org.greenrobot.eventbus.EventBus; -import org.greenrobot.eventbus.Subscribe; -import org.greenrobot.eventbus.ThreadMode; - -import java.util.ArrayList; -import java.util.List; - -import butterknife.BindView; - - -public class HomeFragment extends BaseMvpFragment implements HomeContract.View { - - @BindView(R.id.article_recyclerview) - RecyclerView article_recyclerview; - @BindView(R.id.scrollview_nested) - NestedScrollView scrollview_nested; - @BindView(R.id.banner) - Banner banner; - @BindView(R.id.smartRefreshLayout_home) - SmartRefreshLayout smartRefreshLayout; - - private List articleDataList; - private ArticleQuickAdapter feedArticleAdapter; - - @Override - public void initData(Bundle bundle) { - - EventBus.getDefault().register(this); - } - - @Override - public void initView(View view) { - initSmartRefreshLayout(); - initRecyclerView(); - } - - @Override - public int setContentLayout() { - return R.layout.fragment_home; - } - - @Override - public void reload() { - mPresenter.getFeedArticleList(0); - mPresenter.getBannerInfo(); - } - - @Override - public HomePresenter initPresenter() { - return new HomePresenter(); - } - - @Override - protected void loadData() { - CustomProgressDialog.show(getActivity()); - mPresenter.getFeedArticleList(0); - mPresenter.getBannerInfo(); - - } - - - @Override - public void showArticleList(FeedArticleListData listData, boolean isRefresh) { - final List newDataList = listData.getDatas(); - if (newDataList == null || newDataList.size() == 0) { - smartRefreshLayout.finishLoadMoreWithNoMoreData(); - return; - } - smartRefreshLayout.finishLoadMore(); - - feedArticleAdapter.addData(newDataList); - - } - - @Override - public void showBannerList(BannerListData itemBeans) { - - final List linkList = new ArrayList(); - List imageList = new ArrayList(); - List titleList = new ArrayList(); - int size = itemBeans.data.size(); - - for (int i = 0; i < size; i++) { - imageList.add(itemBeans.data.get(i).imagePath); - titleList.add(itemBeans.data.get(i).title); - linkList.add(itemBeans.data.get(i).url); - } - banner.setImageLoader(new com.youth.banner.loader.ImageLoader() { - @Override - public void displayImage(Context context, Object path, ImageView imageView) { - Glide.with(getActivity()).load(path).into(imageView); - } - }); - - //设置样式,默认为:Banner.NOT_INDICATOR(不显示指示器和标题) - //可选样式如下: - //1. Banner.CIRCLE_INDICATOR 显示圆形指示器 - //2. Banner.NUM_INDICATOR 显示数字指示器 - //3. Banner.NUM_INDICATOR_TITLE 显示数字指示器和标题 - //4. Banner.CIRCLE_INDICATOR_TITLE 显示圆形指示器和标题 - banner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR);//设置圆形指示器与标题 - //设置banner动画效果 -// Tansformer.CubeIn -// Transformer.CubeOut -// Transformer.DepthPage -// Transformer.FlipHorizontal -// Transformer.FlipVertical -// banner.setBannerAnimation(Transformer.FlipHorizontal); - banner.setIndicatorGravity(BannerConfig.CENTER);//设置指示器位置 - banner.setDelayTime(4000);//设置轮播时间 - banner.setImages(imageList);//设置图片源 - banner.setBannerTitles(titleList);//设置标题源 - - banner.start(); - - - banner.setOnBannerListener(new OnBannerListener() { - @Override - public void OnBannerClick(int position) { - Intent intent = new Intent(getActivity(), ArticleDetailActivity.class); - Bundle bundle = new Bundle(); - bundle.putString("url", linkList.get(position)); - intent.putExtras(bundle); - startActivity(intent); - } - }); - } - - private void initRecyclerView() { - articleDataList = new ArrayList<>(); - feedArticleAdapter = new ArticleQuickAdapter(getActivity(), articleDataList, "HomeFragment"); - article_recyclerview.addItemDecoration(new DividerItemDecoration(getActivity(), - DividerItemDecoration.VERTICAL_LIST)); - article_recyclerview.setLayoutManager(new LinearLayoutManager(getActivity())); - article_recyclerview.setLayoutManager(new LinearLayoutManager(getActivity()) { - public boolean canScrollVertically() { - //解决ScrollView里存在多个RecyclerView时滑动卡顿的问题 - //如果你的RecyclerView是水平滑动的话可以重写canScrollHorizontally方法 - return false; - } - }); - //解决数据加载不完的问题 -// project_recyclerview.setNestedScrollingEnabled(false); -// project_recyclerview.setHasFixedSize(true); -// //解决数据加载完成后, 没有停留在顶部的问题 - article_recyclerview.setFocusable(false); - article_recyclerview.setAdapter(feedArticleAdapter); - feedArticleAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() { - @Override - public void onItemClick(BaseQuickAdapter adapter, View view, int position) { - Intent intent = new Intent(getActivity(), ArticleDetailActivity.class); - Bundle bundle = new Bundle(); - bundle.putString("url", articleDataList.get(position).getLink()); - intent.putExtras(bundle); - startActivity(intent); - } - - }); - feedArticleAdapter.setOnItemChildClickListener(new BaseQuickAdapter.OnItemChildClickListener() { - @Override - public void onItemChildClick(BaseQuickAdapter adapter, View view, int position) { - if (feedArticleAdapter.getData().get(position).isCollect()) { - mPresenter.cancelCollectArticle(position, feedArticleAdapter.getData().get(position)); - } else { - mPresenter.addCollectArticle(position, feedArticleAdapter.getData().get(position)); - } - } - }); - } - - //初始化下拉刷新控件 - private void initSmartRefreshLayout() { - smartRefreshLayout.setEnableLoadMore(true); - smartRefreshLayout.setEnableRefresh(false); - smartRefreshLayout.setEnableScrollContentWhenLoaded(true);//是否在加载完成时滚动列表显示新的内容 - smartRefreshLayout.setEnableFooterFollowWhenLoadFinished(true); - smartRefreshLayout.setOnRefreshLoadMoreListener(new OnRefreshLoadMoreListener() { - @Override - public void onLoadMore(RefreshLayout refreshLayout) { - mPresenter.onLoadMore(); - } - - @Override - public void onRefresh(RefreshLayout refreshLayout) { - mPresenter.onRefreshMore(); - } - }); - } - - public void scrollToTop() { - scrollview_nested.scrollTo(0, 0); - } - - public void onResume() { - super.onResume(); - - } - - @Override - public void showCollectArticleData(int position, FeedArticleData feedArticleData) { - feedArticleAdapter.setData(position, feedArticleData); - } - - @Override - public void showCancelCollectArticleData(int position, FeedArticleData feedArticleData) { - feedArticleAdapter.setData(position, feedArticleData); - } - - @Override - public void showCancelCollectArticleData(int id) { - int position = feedArticleAdapter.getPosById(id); - if (position == -1) return; - FeedArticleData feedArticleData = articleDataList.get(position); - feedArticleData.setCollect(false); - feedArticleAdapter.setData(position, feedArticleData); - } - - @Subscribe(threadMode = ThreadMode.MAIN) - public void onEvent(CancelCollectEvent event) { - mPresenter.cancelCollectArticle(event.id); - } - - @Subscribe(threadMode = ThreadMode.MAIN) - public void onEvent(LoginEvent accountEvent) { - feedArticleAdapter.getData().clear(); - feedArticleAdapter.notifyDataSetChanged(); - mPresenter.getFeedArticleList(0); - mPresenter.mCurrentPage = 0; - } - - public void onDestroy() { - super.onDestroy(); - EventBus.getDefault().unregister(this); - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/fragment/KnowledgeFragment.java b/AndroidLearnProject/app/src/main/java/com/android/learn/fragment/KnowledgeFragment.java deleted file mode 100644 index 53fd427..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/fragment/KnowledgeFragment.java +++ /dev/null @@ -1,79 +0,0 @@ -package com.android.learn.fragment; - -import android.app.Dialog; -import android.os.Bundle; -import android.os.Handler; -import android.os.Message; -import android.view.View; - -import com.android.learn.R; -import com.android.learn.adapter.HorizontalPagerAdapter; -import com.android.learn.base.activity.BaseActivity; -import com.android.learn.base.fragment.BaseMvpFragment; -import com.android.learn.base.mmodel.TreeBean; -import com.android.learn.base.thirdframe.rxjava.BaseObserver; -import com.android.learn.base.view.CustomProgressDialog; -import com.android.learn.mcontract.KnowledgeContract; -import com.android.learn.mpresenter.KnowledgePresenter; -import com.gigamole.infinitecycleviewpager.HorizontalInfiniteCycleViewPager; - -import java.util.List; - -import butterknife.BindView; - - -public class KnowledgeFragment extends BaseMvpFragment implements KnowledgeContract.View { - @BindView(R.id.hicvp) - HorizontalInfiniteCycleViewPager horizontalInfiniteCycleViewPager; - private HorizontalPagerAdapter mPagerAdapter; - - Handler handler = new Handler() { - public void handleMessage(Message message) { - CustomProgressDialog.show(getActivity()); - } - }; - - @Override - public void initData(Bundle bundle) { - } - - @Override - public void initView(View view) { - } - - @Override - public int setContentLayout() { - return R.layout.fragment_knowledge; - } - - @Override - public void reload() { - } - - @Override - public KnowledgePresenter initPresenter() { - return new KnowledgePresenter(); - } - - @Override - protected void loadData() { - - CustomProgressDialog.show(getActivity()); - mPresenter.getKnowledge(); - } - - @Override - public void showKnowledge(List datas) { - mPagerAdapter = new HorizontalPagerAdapter(getContext(), datas); - horizontalInfiniteCycleViewPager.setAdapter(mPagerAdapter); - if (horizontalInfiniteCycleViewPager != null && datas.size() > 1) - horizontalInfiniteCycleViewPager.setCurrentItem(1); - horizontalInfiniteCycleViewPager.post(new Runnable() { - @Override - public void run() { - CustomProgressDialog.cancel(); - } - }); - - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/fragment/ProjectFragment.java b/AndroidLearnProject/app/src/main/java/com/android/learn/fragment/ProjectFragment.java deleted file mode 100644 index da668a5..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/fragment/ProjectFragment.java +++ /dev/null @@ -1,126 +0,0 @@ -package com.android.learn.fragment; - -import android.content.Intent; -import android.os.Bundle; -import android.support.v7.widget.LinearLayoutManager; -import android.support.v7.widget.RecyclerView; -import android.view.View; - -import com.android.learn.R; -import com.android.learn.activity.ArticleDetailActivity; -import com.android.learn.adapter.DividerItemDecoration; -import com.android.learn.adapter.ProjectQuickAdapter; -import com.android.learn.base.fragment.BaseMvpFragment; -import com.android.learn.base.mmodel.ProjectListData; -import com.android.learn.base.view.CustomProgressDialog; -import com.android.learn.mcontract.ProjectContract; -import com.android.learn.mpresenter.ProjectPresenter; -import com.chad.library.adapter.base.BaseQuickAdapter; -import com.scwang.smartrefresh.layout.SmartRefreshLayout; -import com.scwang.smartrefresh.layout.api.RefreshLayout; -import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener; - -import java.util.ArrayList; -import java.util.List; - -import butterknife.BindView; - - -public class ProjectFragment extends BaseMvpFragment implements ProjectContract.View { - - @BindView(R.id.project_recyclerview) - RecyclerView project_recyclerview; - @BindView(R.id.smartRefreshLayout_home) - SmartRefreshLayout smartRefreshLayout; - ProjectQuickAdapter projectAdapter; - private List projectDataList; - - @Override - public void initData(Bundle bundle) { - - } - - @Override - public void initView(View view) { - initSmartRefreshLayout(); - initRecyclerView(); - } - - @Override - public int setContentLayout() { - return R.layout.fragment_project; - } - - @Override - public void reload() { - mPresenter.getProjectInfo(1, 294); - } - - @Override - public ProjectPresenter initPresenter() { - return new ProjectPresenter(); - } - - @Override - protected void loadData() { - CustomProgressDialog.show(getActivity()); - mPresenter.getProjectInfo(1, 294); - } - - - @Override - public void showProjectList(ProjectListData listData, boolean isRefresh) { - final List newDataList = listData.data.getDatas(); - if (newDataList == null || newDataList.size() == 0) { - smartRefreshLayout.finishLoadMoreWithNoMoreData(); - return; - } - smartRefreshLayout.finishLoadMore(); - projectAdapter.addData(newDataList); - - } - - private void initRecyclerView() { - projectDataList = new ArrayList<>(); - projectAdapter = new ProjectQuickAdapter(getActivity(), projectDataList); - project_recyclerview.addItemDecoration(new DividerItemDecoration(getActivity(), - DividerItemDecoration.VERTICAL_LIST)); - project_recyclerview.setLayoutManager(new LinearLayoutManager(getActivity())); - project_recyclerview.setAdapter(projectAdapter); - - projectAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() { - @Override - public void onItemClick(BaseQuickAdapter adapter, View view, int position) { - Intent intent = new Intent(getActivity(), ArticleDetailActivity.class); - Bundle bundle = new Bundle(); - bundle.putString("url", projectDataList.get(position).getLink()); - intent.putExtras(bundle); - startActivity(intent); - } - - }); - } - - //初始化下拉刷新控件 - private void initSmartRefreshLayout() { - smartRefreshLayout.setEnableLoadMore(true); - smartRefreshLayout.setEnableRefresh(false); - smartRefreshLayout.setEnableScrollContentWhenLoaded(true);//是否在加载完成时滚动列表显示新的内容 - smartRefreshLayout.setEnableFooterFollowWhenLoadFinished(true); - smartRefreshLayout.setOnRefreshLoadMoreListener(new OnRefreshLoadMoreListener() { - @Override - public void onLoadMore(RefreshLayout refreshLayout) { - mPresenter.onLoadMore(294); - } - - @Override - public void onRefresh(RefreshLayout refreshLayout) { - mPresenter.onRefreshMore(294); - } - }); - } - - public void scrollToTop() { - project_recyclerview.scrollToPosition(0); - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/fragment/TodoFragment.java b/AndroidLearnProject/app/src/main/java/com/android/learn/fragment/TodoFragment.java deleted file mode 100644 index 79e4f3a..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/fragment/TodoFragment.java +++ /dev/null @@ -1,229 +0,0 @@ -package com.android.learn.fragment; - -import android.os.Bundle; -import android.support.v7.widget.LinearLayoutManager; -import android.support.v7.widget.RecyclerView; -import android.view.View; -import android.widget.TextView; - -import com.android.learn.R; -import com.android.learn.activity.TodoEditActivity; -import com.android.learn.adapter.DividerItemDecoration; -import com.android.learn.adapter.TodoQuickAdapter; -import com.android.learn.base.event.UpdateDoneEvent; -import com.android.learn.base.event.UpdateTodoEvent; -import com.android.learn.base.fragment.BaseMvpFragment; -import com.android.learn.base.mmodel.BaseData; -import com.android.learn.base.mmodel.TodoData; -import com.android.learn.base.mmodel.TodoData.DatasBean; -import com.android.learn.base.view.CustomProgressDialog; -import com.android.learn.mcontract.TodoContract; -import com.android.learn.mpresenter.TodoPresenter; -import com.chad.library.adapter.base.BaseQuickAdapter; -import com.scwang.smartrefresh.layout.SmartRefreshLayout; -import com.scwang.smartrefresh.layout.api.RefreshLayout; -import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; - -import org.greenrobot.eventbus.EventBus; -import org.greenrobot.eventbus.Subscribe; -import org.greenrobot.eventbus.ThreadMode; - -import java.util.ArrayList; -import java.util.List; - -import butterknife.BindView; - - -public class TodoFragment extends BaseMvpFragment implements TodoContract.View { - @BindView(R.id.article_recyclerview) - RecyclerView article_recyclerview; - @BindView(R.id.smartRefreshLayout) - SmartRefreshLayout smartRefreshLayout; - @BindView(R.id.tv_empty_todo) - TextView tv_empty_todo; - private List todoList; - private TodoQuickAdapter todoAdapter; - - int fragmentPosition, clickId; - - public static TodoFragment newInstance(Bundle bundle) { - TodoFragment testFragment = new TodoFragment(); - testFragment.setArguments(bundle); - return testFragment; - } - - - @Override - public void initData(Bundle bundle) { - fragmentPosition = bundle.getInt("position", 0); - initSmartRefreshLayout(); - initRecyclerView(); - } - - @Override - public void initView(View view) { - EventBus.getDefault().register(this); - } - - @Override - public int setContentLayout() { - return R.layout.fragment_todo; - } - - @Override - public void reload() { - - } - - @Override - public TodoPresenter initPresenter() { - return new TodoPresenter(); - } - - @Override - protected void loadData() { - CustomProgressDialog.show(getActivity()); - if (fragmentPosition == 0) - mPresenter.getListNotDone(0); - if (fragmentPosition == 1) - mPresenter.getListDone(0); - } - - - private void initRecyclerView() { - todoList = new ArrayList<>(); - todoAdapter = new TodoQuickAdapter(getActivity(), todoList, fragmentPosition); - article_recyclerview.addItemDecoration(new DividerItemDecoration(getActivity(), - DividerItemDecoration.VERTICAL_LIST)); - article_recyclerview.setLayoutManager(new LinearLayoutManager(getActivity())); - - //解决数据加载完成后, 没有停留在顶部的问题 - article_recyclerview.setFocusable(false); - article_recyclerview.setAdapter(todoAdapter); - - todoAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() { - @Override - public void onItemClick(BaseQuickAdapter adapter, View view, int position) { - DatasBean datasBean = null; - if (fragmentPosition == 0) { - datasBean = todoAdapter.getData().get(position); - Bundle bundle = new Bundle(); - bundle.putSerializable("todo_item", datasBean); - TodoEditActivity.startActivity(getActivity(), bundle); - } - } - - }); - todoAdapter.setOnItemChildClickListener(new BaseQuickAdapter.OnItemChildClickListener() { - @Override - public void onItemChildClick(BaseQuickAdapter adapter, View view, int position) { - - DatasBean datasBean = todoAdapter.getData().get(position); - switch (view.getId()) { - case R.id.iv_item_todo: - if (fragmentPosition == 0) { - clickId = datasBean.getId(); - mPresenter.updateTodoStatus(clickId, 1); - todoAdapter.remove(position); - } - if (fragmentPosition == 1) { - clickId = datasBean.getId(); - mPresenter.updateTodoStatus(clickId, 0); - todoAdapter.remove(position); - } - - break; - case R.id.iv_item_delete: - mPresenter.deleteTodo(datasBean.getId()); - todoAdapter.remove(position); - break; - } - } - }); - } - - //初始化下拉刷新控件 - private void initSmartRefreshLayout() { - smartRefreshLayout.setEnableLoadMore(true); - smartRefreshLayout.setEnableRefresh(false); - smartRefreshLayout.setEnableScrollContentWhenLoaded(true);//是否在加载完成时滚动列表显示新的内容 - smartRefreshLayout.setEnableFooterFollowWhenLoadFinished(true); - smartRefreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { - @Override - public void onLoadMore(RefreshLayout refreshLayout) { - if (fragmentPosition == 0) - mPresenter.getListNotDone(0); - if (fragmentPosition == 1) - mPresenter.getListDone(0); - } - - - }); - } - - public void onDestroy() { - super.onDestroy(); - EventBus.getDefault().unregister(this); - } - - @Override - public void showListNotDone(TodoData todoData) { - final List newDataList = todoData.getDatas(); - if (newDataList == null || newDataList.size() == 0) { - smartRefreshLayout.finishLoadMoreWithNoMoreData(); - } - smartRefreshLayout.finishLoadMore(); - todoAdapter.addData(newDataList); - - if (todoAdapter.getData().size() == 0) { - tv_empty_todo.setVisibility(View.VISIBLE); - - } else tv_empty_todo.setVisibility(View.GONE); - } - - @Override - public void showListDone(TodoData todoData) { - final List newDataList = todoData.getDatas(); - if (newDataList == null || newDataList.size() == 0) { - smartRefreshLayout.finishLoadMoreWithNoMoreData(); - } - smartRefreshLayout.finishLoadMore(); - - todoAdapter.addData(newDataList); - - if (todoAdapter.getData().size() == 0) { - tv_empty_todo.setVisibility(View.VISIBLE); - tv_empty_todo.setText(getString(R.string.empty_done)); - } else tv_empty_todo.setVisibility(View.GONE); - - - } - - @Subscribe(threadMode = ThreadMode.MAIN) - public void onEvent(UpdateDoneEvent event) { - if (fragmentPosition == 1) { - todoAdapter.getData().clear(); - mPresenter.donePage = 1; - mPresenter.getListDone(0); - } - } - - @Subscribe(threadMode = ThreadMode.MAIN) - public void onEvent(UpdateTodoEvent event) { - if (fragmentPosition == 0) { - todoAdapter.getData().clear(); - mPresenter.notDonePage = 1; - mPresenter.getListNotDone(0); - } - } - - @Override - public void showUpdateTodoStatus(BaseData baseData) { - if (fragmentPosition == 0) { - EventBus.getDefault().post(new UpdateDoneEvent()); - } - if (fragmentPosition == 1) { - EventBus.getDefault().post(new UpdateTodoEvent()); - } - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/fragment/UserFragment.java b/AndroidLearnProject/app/src/main/java/com/android/learn/fragment/UserFragment.java deleted file mode 100644 index b8b5f62..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/fragment/UserFragment.java +++ /dev/null @@ -1,139 +0,0 @@ -package com.android.learn.fragment; - -import android.os.Bundle; -import android.view.View; -import android.widget.ImageView; -import android.widget.TextView; - -import com.android.learn.R; -import com.android.learn.activity.MyCollectActivity; -import com.android.learn.activity.MyTodoActivity; -import com.android.learn.activity.RegisterLoginActivity; -import com.android.learn.activity.SettingActivity; -import com.android.learn.base.event.LoginEvent; -import com.android.learn.base.event.LogoutEvent; -import com.android.learn.base.fragment.BaseMvpFragment; -import com.android.learn.base.utils.SPUtils; -import com.android.learn.base.utils.Utils; -import com.android.learn.base.utils.account.UserUtil; -import com.android.learn.mcontract.UserInfoContract; -import com.android.learn.mpresenter.UserInfoPresenter; -import com.bumptech.glide.Glide; -import com.bumptech.glide.request.RequestOptions; - -import org.greenrobot.eventbus.EventBus; -import org.greenrobot.eventbus.Subscribe; -import org.greenrobot.eventbus.ThreadMode; - -import butterknife.BindView; -import butterknife.OnClick; - - -public class UserFragment extends BaseMvpFragment implements UserInfoContract.View { - - @BindView(R.id.iv_user_photo) - public ImageView iv_user_photo; - @BindView(R.id.tv_user_profile_not_login) - TextView tv_user_profile_not_login; - - @Override - public void initData(Bundle bundle) { - EventBus.getDefault().register(this); - } - - @Override - public void initView(View view) { - refreshUserInfo(); - } - - @OnClick({R.id.iv_user_photo, R.id.my_setting_layout, R.id.my_collect_layout, R.id.my_todo_layout}) - public void click(View view) { - switch (view.getId()) { - case R.id.my_collect_layout: - if (!UserUtil.isLogined()) { - RegisterLoginActivity.startActivity(getActivity()); - Utils.showToast(getString(R.string.user_not_login), true); - return; - } - MyCollectActivity.startActivity(getActivity()); - break; - case R.id.my_todo_layout: - MyTodoActivity.startActivity(getActivity()); - break; - case R.id.my_setting_layout: - SettingActivity.startActivity(getActivity()); - break; - - case R.id.iv_user_photo: - if (!UserUtil.isLogined()) { - RegisterLoginActivity.startActivity(getActivity()); - } - } - } - - @Override - public int setContentLayout() { - return R.layout.fragment_user; - } - - @Override - public void reload() { - } - - @Override - public UserInfoPresenter initPresenter() { - return new UserInfoPresenter(); - } - - @Override - protected void loadData() { - - } - - @Subscribe(threadMode = ThreadMode.MAIN) - public void onEvent(LoginEvent accountEvent) { - refreshUserInfo(); - } - - @Subscribe(threadMode = ThreadMode.MAIN) - public void onEvent(LogoutEvent logoutEvent) { - logout(); - } - - - public void refreshUserInfo() { - if (UserUtil.getUserInfo() == null) return; - if (UserUtil.isLogined()) { - String username = UserUtil.getUserInfo().data.username; - if (tv_user_profile_not_login != null) - tv_user_profile_not_login.setText(username); - String photoUrl = UserUtil.getUserInfo().data.icon; - if (photoUrl != null) { - RequestOptions options = new RequestOptions().placeholder(R.drawable.user_default_photo); - if(iv_user_photo!=null) - Glide.with(getActivity()).load(photoUrl).apply(options).into(iv_user_photo); - } - - } else { - - } - - } - - private void logout() { - - tv_user_profile_not_login.setText(getString(R.string.login_register)); - iv_user_photo.setImageResource(R.drawable.user_default_photo); - SPUtils.clear(getActivity(), "phone_num"); - SPUtils.clear(getActivity(), "password"); - mPresenter.getLogoutData(); - RegisterLoginActivity.startActivity(getActivity()); - UserUtil.setUserInfo(null); - } - - @Override - public void onDestroy() { - super.onDestroy(); - EventBus.getDefault().unregister(getActivity()); - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/fragment/WechatFragment.java b/AndroidLearnProject/app/src/main/java/com/android/learn/fragment/WechatFragment.java deleted file mode 100644 index 89e403d..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/fragment/WechatFragment.java +++ /dev/null @@ -1,117 +0,0 @@ -package com.android.learn.fragment; - -import android.os.Bundle; -import android.support.v4.app.Fragment; -import android.support.v4.app.FragmentManager; -import android.support.v4.app.FragmentPagerAdapter; -import android.support.v4.view.ViewPager; -import android.view.View; - -import com.android.learn.R; -import com.android.learn.base.fragment.BaseMvpFragment; -import com.android.learn.base.mmodel.FeedArticleListData; -import com.android.learn.base.mmodel.WxArticle; -import com.android.learn.base.view.colorfultab.ColorClipTabLayout; -import com.android.learn.mcontract.WechatContract; -import com.android.learn.mpresenter.WechatPresenter; - -import java.util.ArrayList; -import java.util.List; - -import butterknife.BindView; - - -public class WechatFragment extends BaseMvpFragment implements WechatContract.View { - - @BindView(R.id.tab_layout) - ColorClipTabLayout tab_layout; - @BindView(R.id.view_pager) - ViewPager view_pager; - - List fragmentList = new ArrayList(); - List titleList = new ArrayList(); - - @Override - protected void loadData() { - mPresenter.getWxArticle(); - } - - @Override - public void initData(Bundle bundle) { - - } - - @Override - public void initView(View view) { - - } - - @Override - public int setContentLayout() { - return R.layout.fragment_wechat; - } - - @Override - public void reload() { - } - - @Override - public WechatPresenter initPresenter() { - return new WechatPresenter(); - } - - @Override - public void showWxArticle(List list) { - WechatSubFragment firstSubFragment = null; - int firstId = 0; - int size = list.size(); - for (int i = 0; i < size; i++) { - WxArticle wxArticle = list.get(i); - titleList.add(wxArticle.getName()); - WechatSubFragment wechatSubFragment = WechatSubFragment.newInstance(wxArticle.getId(), wxArticle.getName()); - fragmentList.add(wechatSubFragment); - if (i == 0) { - firstId = wxArticle.getId(); - firstSubFragment = wechatSubFragment; - } - } - CustomPagerAdapter adapter = new CustomPagerAdapter(getFragmentManager(), fragmentList); - view_pager.setAdapter(adapter); - view_pager.setOffscreenPageLimit(list.size()); - tab_layout.setupWithViewPager(view_pager); - firstSubFragment.userId = firstId; - firstSubFragment.loadData(); - } - - - public class CustomPagerAdapter extends FragmentPagerAdapter { - - private List mFragments; - - public CustomPagerAdapter(FragmentManager fm, List fragments) { - super(fm); - this.mFragments = fragments; - fm.beginTransaction().commitAllowingStateLoss(); - } - - @Override - public Fragment getItem(int position) { - return this.mFragments.get(position); - } - - @Override - public int getCount() { - return this.mFragments.size(); - } - - @Override - public long getItemId(int position) { - return position; - } - - @Override - public CharSequence getPageTitle(int position) { - return titleList.get(position); - } - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/fragment/WechatSubFragment.java b/AndroidLearnProject/app/src/main/java/com/android/learn/fragment/WechatSubFragment.java deleted file mode 100644 index 3804790..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/fragment/WechatSubFragment.java +++ /dev/null @@ -1,191 +0,0 @@ -package com.android.learn.fragment; - -import android.content.Intent; -import android.os.Bundle; -import android.support.v7.widget.LinearLayoutManager; -import android.support.v7.widget.RecyclerView; -import android.view.View; - -import com.android.learn.R; -import com.android.learn.activity.ArticleDetailActivity; -import com.android.learn.adapter.ArticleQuickAdapter; -import com.android.learn.adapter.DividerItemDecoration; -import com.android.learn.base.event.CancelCollectEvent; -import com.android.learn.base.event.LoginEvent; -import com.android.learn.base.fragment.BaseMvpFragment; -import com.android.learn.base.mmodel.FeedArticleListData; -import com.android.learn.base.mmodel.FeedArticleListData.FeedArticleData; -import com.android.learn.base.view.CustomProgressDialog; -import com.android.learn.mcontract.WechatSubContract; -import com.android.learn.mpresenter.WechatSubPresenter; -import com.chad.library.adapter.base.BaseQuickAdapter; -import com.scwang.smartrefresh.layout.SmartRefreshLayout; -import com.scwang.smartrefresh.layout.api.RefreshLayout; -import com.scwang.smartrefresh.layout.listener.OnLoadMoreListener; - -import org.greenrobot.eventbus.EventBus; -import org.greenrobot.eventbus.Subscribe; -import org.greenrobot.eventbus.ThreadMode; - -import java.util.ArrayList; -import java.util.List; - -import butterknife.BindView; - - -public class WechatSubFragment extends BaseMvpFragment implements WechatSubContract.View { - @BindView(R.id.article_recyclerview) - RecyclerView article_recyclerview; - @BindView(R.id.smartRefreshLayout) - SmartRefreshLayout smartRefreshLayout; - private List articleDataList; - private ArticleQuickAdapter feedArticleAdapter; - - int userId; - String userName; - - public static WechatSubFragment newInstance(int id, String name) { - WechatSubFragment testFragment = new WechatSubFragment(); - Bundle bundle = new Bundle(); - bundle.putInt("id", id); - bundle.putString("name", name); - testFragment.setArguments(bundle); - return testFragment; - } - - - @Override - public void initData(Bundle bundle) { - userId = bundle.getInt("id", 408); - userName = bundle.getString("name"); - initSmartRefreshLayout(); - initRecyclerView(); - } - - @Override - public void initView(View view) { - EventBus.getDefault().register(this); - } - - @Override - public int setContentLayout() { - return R.layout.fragment_wechat_sub; - } - - @Override - public void reload() { - - } - - @Override - public WechatSubPresenter initPresenter() { - return new WechatSubPresenter(); - } - - @Override - protected void loadData() { - CustomProgressDialog.show(getActivity()); - if (userId != 0) - mPresenter.getWxArtileById(userId); - } - - @Override - public void showWxArticleById(FeedArticleListData datas) { - final List newDataList = datas.getDatas(); - if (newDataList == null || newDataList.size() == 0) { - smartRefreshLayout.finishLoadMoreWithNoMoreData(); - return; - } - smartRefreshLayout.finishLoadMore(); - feedArticleAdapter.addData(newDataList); - - } - - @Override - public void showCollectArticleData(int position, FeedArticleListData.FeedArticleData feedArticleData) { - feedArticleAdapter.setData(position, feedArticleData); - } - - @Override - public void showCancelCollectArticleData(int position, FeedArticleListData.FeedArticleData feedArticleData) { - feedArticleAdapter.setData(position, feedArticleData); - } - - @Override - public void showCancelCollectArticleData(int id) { - int position = feedArticleAdapter.getPosById(id); - if (position == -1) return; - FeedArticleData feedArticleData = articleDataList.get(position); - feedArticleData.setCollect(false); - feedArticleAdapter.setData(position, feedArticleData); - } - - - private void initRecyclerView() { - articleDataList = new ArrayList<>(); - feedArticleAdapter = new ArticleQuickAdapter(getActivity(), articleDataList, "WechatSubFragment"); - article_recyclerview.addItemDecoration(new DividerItemDecoration(getActivity(), - DividerItemDecoration.VERTICAL_LIST)); - article_recyclerview.setLayoutManager(new LinearLayoutManager(getActivity())); - - //解决数据加载完成后, 没有停留在顶部的问题 - article_recyclerview.setFocusable(false); - article_recyclerview.setAdapter(feedArticleAdapter); - - feedArticleAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() { - @Override - public void onItemClick(BaseQuickAdapter adapter, View view, int position) { - Intent intent = new Intent(getActivity(), ArticleDetailActivity.class); - Bundle bundle = new Bundle(); - bundle.putString("url", feedArticleAdapter.getData().get(position).getLink()); - intent.putExtras(bundle); - startActivity(intent); - } - - }); - feedArticleAdapter.setOnItemChildClickListener(new BaseQuickAdapter.OnItemChildClickListener() { - @Override - public void onItemChildClick(BaseQuickAdapter adapter, View view, int position) { - if (feedArticleAdapter.getData().get(position).isCollect()) { - mPresenter.cancelCollectArticle(position, feedArticleAdapter.getData().get(position)); - } else { - mPresenter.addCollectArticle(position, feedArticleAdapter.getData().get(position)); - } - } - }); - } - - //初始化下拉刷新控件 - private void initSmartRefreshLayout() { - smartRefreshLayout.setEnableLoadMore(true); - smartRefreshLayout.setEnableRefresh(false); - smartRefreshLayout.setEnableScrollContentWhenLoaded(true);//是否在加载完成时滚动列表显示新的内容 - smartRefreshLayout.setEnableFooterFollowWhenLoadFinished(true); - smartRefreshLayout.setOnLoadMoreListener(new OnLoadMoreListener() { - @Override - public void onLoadMore(RefreshLayout refreshLayout) { - mPresenter.getWxArtileById(userId); - } - - - }); - } - - @Subscribe(threadMode = ThreadMode.MAIN) - public void onEvent(CancelCollectEvent event) { - mPresenter.cancelCollectArticle(event.id); - } - - @Subscribe(threadMode = ThreadMode.MAIN) - public void onEvent(LoginEvent accountEvent) { - feedArticleAdapter.getData().clear(); - feedArticleAdapter.notifyDataSetChanged(); - mPresenter.getWxArtileById(userId); - mPresenter.num = 0; - } - - public void onDestroy() { - super.onDestroy(); - EventBus.getDefault().unregister(this); - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/CollectContract.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/CollectContract.java deleted file mode 100644 index 08fb77e..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/CollectContract.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.android.learn.mcontract; - -import com.android.learn.base.mmodel.FeedArticleListData; -import com.android.learn.base.mmodel.FeedArticleListData.FeedArticleData; - -/** - * Created by gaolei on 2018/6/18. - */ - -public class CollectContract { - - public interface Presenter { - - - void getCollectList(); - - void cancelCollectArticle(int position, int id); - } - - public interface View { - - void showCollectList(FeedArticleListData feedArticleListData); - - void showCancelCollectArticle(int position, int id); - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/HomeContract.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/HomeContract.java deleted file mode 100644 index 971711d..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/HomeContract.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.android.learn.mcontract; - -import com.android.learn.base.mmodel.BannerListData; -import com.android.learn.base.mmodel.FeedArticleListData.FeedArticleData; -import com.android.learn.base.mmodel.FeedArticleListData; - -/** - * Created by gaolei on 2018/6/18. - */ - -public class HomeContract { - - public interface Presenter { - - void getBannerInfo(); - - void getFeedArticleList(int num); - - void onLoadMore(); - - void onRefreshMore(); - - void addCollectArticle(int position, FeedArticleData feedArticleData); - - void cancelCollectArticle(int position, FeedArticleData feedArticleData); - } - - public interface View { - - void showArticleList(FeedArticleListData itemBeans, boolean isRefresh); - - void showBannerList(BannerListData itemBeans); - - void showCollectArticleData(int position, FeedArticleData feedArticleData); - - void showCancelCollectArticleData(int position, FeedArticleData feedArticleData); - void showCancelCollectArticleData(int id); - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/KnowledgeChildContract.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/KnowledgeChildContract.java deleted file mode 100644 index 164a337..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/KnowledgeChildContract.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.android.learn.mcontract; - - -import com.android.learn.base.mmodel.FeedArticleListData; -import com.android.learn.base.mmodel.FeedArticleListData.FeedArticleData; -import com.android.learn.base.mmodel.TreeBean; - -import java.util.List; - - -public class KnowledgeChildContract { - - public interface Presenter { - void getKnowledgeArticleList(int num,int cid); - - void onRefreshMore(int cid); - - void onLoadMore(int cid); - - void addCollectArticle(int position, FeedArticleData feedArticleData); - - void cancelCollectArticle(int position, FeedArticleData feedArticleData); - } - - public interface View { - void showArticleList(FeedArticleListData itemBeans, boolean isRefresh); - void showCollectArticleData(int position, FeedArticleData feedArticleData); - - void showCancelCollectArticleData(int id, FeedArticleData feedArticleData); - } - -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/KnowledgeContract.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/KnowledgeContract.java deleted file mode 100644 index ad4efd3..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/KnowledgeContract.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.android.learn.mcontract; - - - -import com.android.learn.base.mmodel.TreeBean; - -import java.util.List; - - -public class KnowledgeContract { - - public interface View { - void showKnowledge(List data); - - } - - public interface Presenter { - void getKnowledge(); - - } - -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/MainActivityContract.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/MainActivityContract.java deleted file mode 100644 index 5942515..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/MainActivityContract.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.android.learn.mcontract; - -import com.android.learn.base.mmodel.FeedArticleListData; -import com.android.learn.base.mmodel.FeedArticleListData.FeedArticleData; -import com.android.learn.base.mmodel.HotKeyData; - -import java.util.List; - -/** - * Created by gaolei on 2018/6/18. - */ - -public class MainActivityContract { - - public interface Presenter { - - void getHotKey(); - - } - - public interface View { - - void showHotKey(List list); - - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/ProjectContract.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/ProjectContract.java deleted file mode 100644 index d3222df..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/ProjectContract.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.android.learn.mcontract; - -import com.android.learn.base.mmodel.ProjectListData; - -/** - * Created by gaolei on 2018/6/18. - */ - -public class ProjectContract { - - public interface Presenter { - - void getProjectInfo(int page, int cid); - - void onRefreshMore(int cid); - - void onLoadMore(int cid); - } - - public interface View { - - void showProjectList(ProjectListData itemBeans, boolean isRefresh); - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/RegisterLoginContract.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/RegisterLoginContract.java deleted file mode 100644 index e58d6d2..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/RegisterLoginContract.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.android.learn.mcontract; - -import com.android.learn.base.mmodel.RegisterLoginData; - -/** - * Created by gaolei on 2018/6/18. - */ - -public class RegisterLoginContract { - - public interface Presenter { - - void login(String account, String password); - - void register(String account, String password, String rePassword); - - } - - public interface View { - - void showRegisterResData(RegisterLoginData registerResData); - - void showLoginResData(RegisterLoginData loginData); - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/SearchContract.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/SearchContract.java deleted file mode 100644 index 01fe7bb..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/SearchContract.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.android.learn.mcontract; - -import com.android.learn.base.mmodel.FeedArticleListData; -import com.android.learn.base.mmodel.HotKeyData; - -import java.util.List; - -/** - * Created by gaolei on 2018/6/18. - */ - -public class SearchContract { - - public interface Presenter { - - - void getFeedArticleList(String key); - - void onLoadMore(String key); - - void addCollectArticle(int position, FeedArticleListData.FeedArticleData feedArticleData); - - void cancelCollectArticle(int position, FeedArticleListData.FeedArticleData feedArticleData); - } - - public interface View { - - - void showArticleList(FeedArticleListData itemBeans); - - void showCollectArticleData(int position, FeedArticleListData.FeedArticleData feedArticleData); - - void showCancelCollectArticleData(int id, FeedArticleListData.FeedArticleData feedArticleData); - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/SplashLoginContract.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/SplashLoginContract.java deleted file mode 100644 index 9f6e46e..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/SplashLoginContract.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.android.learn.mcontract; - -import com.android.learn.base.mmodel.RegisterLoginData; - -/** - * Created by gaolei on 2018/6/18. - */ - -public class SplashLoginContract { - - public interface Presenter { - - - void login(String username, String password); - - - } - - public interface View { - - void showLoginResData(RegisterLoginData loginResData); - - } - -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/TodoAddContract.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/TodoAddContract.java deleted file mode 100644 index 61282f4..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/TodoAddContract.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.android.learn.mcontract; - -import com.android.learn.base.mmodel.BaseData; - -import java.util.Map; - -/** - * Created by gaolei on 2018/6/18. - */ - -public class TodoAddContract { - - public interface Presenter { - - void addTodo( Map map); - - } - - public interface View { - - - void showAddTodo(BaseData todoData); - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/TodoContract.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/TodoContract.java deleted file mode 100644 index d75b750..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/TodoContract.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.android.learn.mcontract; - -import com.android.learn.base.mmodel.BaseData; -import com.android.learn.base.mmodel.TodoData; - -import java.util.Map; - -/** - * Created by gaolei on 2018/6/18. - */ - -public class TodoContract { - - public interface Presenter { - - - void getListNotDone(int type); - - void getListDone(int type); - - void deleteTodo(int id); - - void updateTodoStatus(int id, int status); - - } - - public interface View { - - void showListNotDone(TodoData todoData); - - void showListDone(TodoData todoData); - void showUpdateTodoStatus(BaseData todoData); - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/TodoEditContract.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/TodoEditContract.java deleted file mode 100644 index 689516a..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/TodoEditContract.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.android.learn.mcontract; - -import com.android.learn.base.mmodel.BaseData; -import com.android.learn.base.mmodel.TodoData; - -import java.util.Map; - -/** - * Created by gaolei on 2018/6/18. - */ - -public class TodoEditContract { - - public interface Presenter { - - void updateTodo(int id, Map map); - - } - - public interface View { - - - void showUpdateTodo(BaseData todoData); - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/UserInfoContract.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/UserInfoContract.java deleted file mode 100644 index 890d489..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/UserInfoContract.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.android.learn.mcontract; - -/** - * Created by gaolei on 2018/6/18. - */ - -public class UserInfoContract { - - public interface Presenter { - - - void getLogoutData(); - - } - public interface View { - - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/WechatContract.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/WechatContract.java deleted file mode 100644 index 4ecf429..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/WechatContract.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.android.learn.mcontract; - -import com.android.learn.base.mmodel.BannerListData; -import com.android.learn.base.mmodel.FeedArticleListData; -import com.android.learn.base.mmodel.FeedArticleListData.FeedArticleData; -import com.android.learn.base.mmodel.WxArticle; - -import java.util.List; - -/** - * Created by gaolei on 2018/6/18. - */ - -public class WechatContract { - - public interface Presenter { - - void getWxArticle(); - - } - - public interface View { - - void showWxArticle(List list); - - - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/WechatSubContract.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/WechatSubContract.java deleted file mode 100644 index d9dc417..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mcontract/WechatSubContract.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.android.learn.mcontract; - -import com.android.learn.base.mmodel.FeedArticleListData; -import com.android.learn.base.mmodel.FeedArticleListData.FeedArticleData; -import com.android.learn.base.mmodel.WxArticle; - -import java.util.List; - -/** - * Created by gaolei on 2018/6/18. - */ - -public class WechatSubContract { - - public interface Presenter { - - - void getWxArtileById(int id); - - - void addCollectArticle(int position, FeedArticleData feedArticleData); - - void cancelCollectArticle(int position, FeedArticleData feedArticleData); - } - - public interface View { - - - void showWxArticleById(FeedArticleListData datas); - - void showCollectArticleData(int position, FeedArticleData feedArticleData); - - void showCancelCollectArticleData(int position, FeedArticleData feedArticleData); - - void showCancelCollectArticleData(int id); - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/CollectPresenter.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/CollectPresenter.java deleted file mode 100644 index f7250f5..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/CollectPresenter.java +++ /dev/null @@ -1,52 +0,0 @@ -package com.android.learn.mpresenter; - - -import com.android.learn.base.mmodel.BaseData; -import com.android.learn.base.mmodel.BaseResponse; -import com.android.learn.base.mmodel.FeedArticleListData; -import com.android.learn.base.mmodel.FeedArticleListData.FeedArticleData; -import com.android.learn.base.mpresenter.BasePresenter; -import com.android.learn.base.thirdframe.rxjava.BaseObserver; -import com.android.learn.base.utils.ResponseStatusUtil; -import com.android.learn.mcontract.CollectContract; - -import io.reactivex.Observable; - - -public class CollectPresenter extends BasePresenter implements CollectContract.Presenter { - - int page = 0; - - @Override - public void getCollectList() { - - Observable observable = mRestService.getCollectList(page); - addSubscribe(observable, new BaseObserver>(true) { - - @Override - public void onNext(BaseResponse data) { - if (data.errorCode == BaseData.SUCCESS) { - mView.showCollectList(data.getData()); - } else ResponseStatusUtil.handleResponseStatus(data); - } - - }); - page++; - } - - @Override - public void cancelCollectArticle(final int position, final int id) { -// int id = feedArticleData.getId(); - Observable observable = mRestService.cancelCollectArticle(id, -1); - addSubscribe(observable, new BaseObserver(true) { - - @Override - public void onNext(BaseData data) { - if (data.errorCode == BaseData.SUCCESS) { - mView.showCancelCollectArticle(position, id); - } else ResponseStatusUtil.handleResponseStatus(data); - } - - }); - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/HomePresenter.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/HomePresenter.java deleted file mode 100644 index 70fc3a2..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/HomePresenter.java +++ /dev/null @@ -1,120 +0,0 @@ -package com.android.learn.mpresenter; - - -import com.android.learn.base.mmodel.BannerListData; -import com.android.learn.base.mmodel.BaseData; -import com.android.learn.base.mmodel.BaseResponse; -import com.android.learn.base.mmodel.FeedArticleListData.FeedArticleData; -import com.android.learn.base.mmodel.FeedArticleListData; -import com.android.learn.base.mpresenter.BasePresenter; -import com.android.learn.base.thirdframe.rxjava.BaseObserver; -import com.android.learn.base.utils.ResponseStatusUtil; -import com.android.learn.mcontract.HomeContract; - -import io.reactivex.Observable; - - -public class HomePresenter extends BasePresenter implements HomeContract.Presenter { - private boolean isRefresh = true; - public int mCurrentPage = 0; - - @Override - public void onRefreshMore() { - Observable observable = mRestService.getFeedArticleList(-1); - addSubscribe(observable, new BaseObserver>(false) { - @Override - public void onNext(BaseResponse feedArticleListData) { - mView.showArticleList(feedArticleListData.getData(), true); - } - }); - - - } - - @Override - public void onLoadMore() { - ++mCurrentPage; - Observable observable = mRestService.getFeedArticleList(mCurrentPage); - addSubscribe(observable, new BaseObserver>(false) { - @Override - public void onNext(BaseResponse feedArticleListData) { - mView.showArticleList(feedArticleListData.getData(), false); - } - }); - } - - @Override - public void getFeedArticleList(int num) { - Observable observable = mRestService.getFeedArticleList(num); - addSubscribe(observable, new BaseObserver>(true) { - @Override - public void onNext(BaseResponse feedArticleListData) { - mView.showArticleList(feedArticleListData.getData(), false); - } - }); - } - - @Override - public void getBannerInfo() { - Observable observable = mRestService.getBannerListData(); - addSubscribe(observable, new BaseObserver(true) { - - @Override - public void onNext(BannerListData bannerListData) { - mView.showBannerList(bannerListData); - } - - }); - - - } - - - @Override - public void addCollectArticle(final int position, final FeedArticleData feedArticleData) { - Observable observable = mRestService.addCollectArticle(feedArticleData.getId()); - addSubscribe(observable, new BaseObserver(true) { - - @Override - public void onNext(BaseData data) { - if (data.errorCode == BaseData.SUCCESS) { - feedArticleData.setCollect(true); - mView.showCollectArticleData(position, feedArticleData); - } else ResponseStatusUtil.handleResponseStatus(data); - } - - }); - - } - - @Override - public void cancelCollectArticle(final int position, final FeedArticleData feedArticleData) { - Observable observable = mRestService.cancelCollectArticle(feedArticleData.getId(), -1); - addSubscribe(observable, new BaseObserver(true) { - - @Override - public void onNext(BaseData data) { - if (data.errorCode == BaseData.SUCCESS) { - feedArticleData.setCollect(false); - mView.showCancelCollectArticleData(position, feedArticleData); - } else ResponseStatusUtil.handleResponseStatus(data); - } - - }); - } - - public void cancelCollectArticle(final int id) { - Observable observable = mRestService.cancelCollectArticle(id, -1); - addSubscribe(observable, new BaseObserver(true) { - - @Override - public void onNext(BaseData data) { - if (data.errorCode == BaseData.SUCCESS) { - mView.showCancelCollectArticleData(id); - } else ResponseStatusUtil.handleResponseStatus(data); - } - - }); - } - -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/KnowledgeChildPresenter.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/KnowledgeChildPresenter.java deleted file mode 100644 index 183a72d..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/KnowledgeChildPresenter.java +++ /dev/null @@ -1,88 +0,0 @@ -package com.android.learn.mpresenter; - -import com.android.learn.base.mmodel.BaseData; -import com.android.learn.base.mmodel.BaseResponse; -import com.android.learn.base.mmodel.FeedArticleListData; -import com.android.learn.base.mmodel.FeedArticleListData.FeedArticleData; -import com.android.learn.base.mpresenter.BasePresenter; -import com.android.learn.base.thirdframe.rxjava.BaseObserver; -import com.android.learn.base.utils.ResponseStatusUtil; -import com.android.learn.mcontract.KnowledgeChildContract; - -import io.reactivex.Observable; - - -public class KnowledgeChildPresenter extends BasePresenter implements KnowledgeChildContract.Presenter { - private int mCurrentPage = 0; - - @Override - public void getKnowledgeArticleList(int num, int cid) { - Observable observable = mRestService.getKnowledgeArticleList(num, cid); - addSubscribe(observable, new BaseObserver>(true) { - @Override - public void onNext(BaseResponse feedArticleListData) { - mView.showArticleList(feedArticleListData.getData(), false); - } - }); - } - - @Override - public void onRefreshMore(int cid) { - Observable observable = mRestService.getKnowledgeArticleList(-1, cid); - addSubscribe(observable, new BaseObserver>(false) { - @Override - public void onNext(BaseResponse feedArticleListData) { - mView.showArticleList(feedArticleListData.getData(), true); - } - }); - - - } - - @Override - public void onLoadMore(int cid) { - ++mCurrentPage; - Observable observable = mRestService.getKnowledgeArticleList(mCurrentPage, cid); - addSubscribe(observable, new BaseObserver>(false) { - @Override - public void onNext(BaseResponse feedArticleListData) { - mView.showArticleList(feedArticleListData.getData(), false); - } - }); - } - - @Override - public void addCollectArticle(final int position, final FeedArticleData feedArticleData) { - Observable observable = mRestService.addCollectArticle(feedArticleData.getId()); - addSubscribe(observable, new BaseObserver(true) { - - @Override - public void onNext(BaseData data) { - if (data.errorCode == BaseData.SUCCESS) { - feedArticleData.setCollect(true); - mView.showCollectArticleData(position, feedArticleData); - } else ResponseStatusUtil.handleResponseStatus(data); - } - - }); - - } - - @Override - public void cancelCollectArticle(final int position, final FeedArticleData feedArticleData) { - Observable observable = mRestService.cancelCollectArticle(feedArticleData.getId(), -1); - addSubscribe(observable, new BaseObserver(true) { - - @Override - public void onNext(BaseData data) { - if (data.errorCode == BaseData.SUCCESS) { - feedArticleData.setCollect(false); - mView.showCancelCollectArticleData(position, feedArticleData); - } else ResponseStatusUtil.handleResponseStatus(data); - } - - }); - } - - -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/KnowledgePresenter.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/KnowledgePresenter.java deleted file mode 100644 index b69f2c6..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/KnowledgePresenter.java +++ /dev/null @@ -1,45 +0,0 @@ -package com.android.learn.mpresenter; - -import com.android.learn.base.mmodel.BaseResponse; -import com.android.learn.base.mmodel.TreeBean; -import com.android.learn.base.mpresenter.BasePresenter; -import com.android.learn.base.thirdframe.rxjava.BaseObserver; -import com.android.learn.mcontract.KnowledgeContract; - -import java.util.List; - -import io.reactivex.Observable; -import io.reactivex.disposables.Disposable; - - -/** - *
- *     author : lex
- *     e-mail : ldlywt@163.com
- *     time   : 2018/09/05
- *     desc   :
- *     version: 1.0
- * 
- */ -public class KnowledgePresenter extends BasePresenter implements KnowledgeContract.Presenter { - - @Override - public void getKnowledge() { - - Observable observable = mRestService.getKnowledgeTree(); - BaseObserver baseObserver=new BaseObserver>>(false) { - @Override - public void onNext(BaseResponse> datas) { - mView.showKnowledge(datas.data); - } - }; - baseObserver.setCancelDialog(false); - addSubscribe(observable, baseObserver); - - - } - - - - -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/MainActivityPresenter.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/MainActivityPresenter.java deleted file mode 100644 index d368d8d..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/MainActivityPresenter.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.android.learn.mpresenter; - - -import com.android.learn.base.mmodel.BaseData; -import com.android.learn.base.mmodel.BaseResponse; -import com.android.learn.base.mmodel.FeedArticleListData; -import com.android.learn.base.mmodel.FeedArticleListData.FeedArticleData; -import com.android.learn.base.mmodel.HotKeyData; -import com.android.learn.base.mmodel.TreeBean; -import com.android.learn.base.mpresenter.BasePresenter; -import com.android.learn.base.thirdframe.rxjava.BaseObserver; -import com.android.learn.base.utils.ResponseStatusUtil; -import com.android.learn.mcontract.CollectContract; -import com.android.learn.mcontract.MainActivityContract; - -import java.util.List; - -import io.reactivex.Observable; - - -public class MainActivityPresenter extends BasePresenter implements MainActivityContract.Presenter { - - private int mCurrentPage = 0; - - @Override - public void getHotKey() { - Observable observable = mRestService.getHotKey(); - addSubscribe(observable, new BaseObserver>>(true) { - - @Override - public void onNext(BaseResponse> datas) { - if (datas.errorCode == BaseData.SUCCESS) { - mView.showHotKey(datas.data); - } else ResponseStatusUtil.handleResponseStatus(datas); - } - - }); - - } - -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/ProjectPresenter.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/ProjectPresenter.java deleted file mode 100644 index d18e468..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/ProjectPresenter.java +++ /dev/null @@ -1,52 +0,0 @@ -package com.android.learn.mpresenter; - - -import com.android.learn.base.mmodel.ProjectListData; -import com.android.learn.base.mpresenter.BasePresenter; -import com.android.learn.base.thirdframe.rxjava.BaseObserver; -import com.android.learn.mcontract.ProjectContract; - -import io.reactivex.Observable; - - -public class ProjectPresenter extends BasePresenter implements ProjectContract.Presenter { - - private int mCurrentPage = 1; - - @Override - public void getProjectInfo(int page, int cid) { - Observable observable = mRestService.getProjectListData(page, cid); - addSubscribe(observable, new BaseObserver(true) { - @Override - public void onNext(ProjectListData projectListData) { - mView.showProjectList(projectListData, false); - } - }); - } - - @Override - public void onRefreshMore(int cid) { - Observable observable = mRestService.getProjectListData(-1, cid); - addSubscribe(observable, new BaseObserver(false) { - @Override - public void onNext(ProjectListData projectListData) { - mView.showProjectList(projectListData, true); - } - }); - } - - @Override - public void onLoadMore(int cid) { - ++mCurrentPage; - Observable observable = mRestService.getProjectListData(mCurrentPage, cid); - addSubscribe(observable, new BaseObserver(false) { - @Override - public void onNext(ProjectListData projectListData) { - mView.showProjectList(projectListData, false); - } - }); - } - - -} - diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/RegisterLoginPresenter.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/RegisterLoginPresenter.java deleted file mode 100644 index d0f394b..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/RegisterLoginPresenter.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.android.learn.mpresenter; - - -import com.android.learn.base.mmodel.BaseData; -import com.android.learn.base.mmodel.RegisterLoginData; -import com.android.learn.base.mpresenter.BasePresenter; -import com.android.learn.base.thirdframe.retrofit.ApiService; -import com.android.learn.base.thirdframe.retrofit.RetrofitProvider; -import com.android.learn.base.thirdframe.rxjava.BaseObserver; -import com.android.learn.base.utils.ResponseStatusUtil; -import com.android.learn.base.utils.Utils; -import com.android.learn.mcontract.RegisterLoginContract; - -import io.reactivex.Observable; - - -public class RegisterLoginPresenter extends BasePresenter implements RegisterLoginContract.Presenter { - @Override - public void login(String account, String password) { - Observable observable = RetrofitProvider.getInstance().createService(ApiService.class).login(account, password); - addSubscribe(observable, new BaseObserver(false) { - @Override - public void onNext(RegisterLoginData data) { - if (data.errorCode == BaseData.SUCCESS) { - mView.showLoginResData(data); - } else ResponseStatusUtil.handleResponseStatus(data); - - } - }); - } - - @Override - public void register(String account, String password, String repassword) { - Observable observable = RetrofitProvider.getInstance().createService(ApiService.class).register(account, password, repassword); - addSubscribe(observable, new BaseObserver(false) { - @Override - public void onNext(RegisterLoginData data) { - if (data.errorCode == BaseData.SUCCESS) { - Utils.showToast("注册成功", true); - mView.showRegisterResData(data); - } else ResponseStatusUtil.handleResponseStatus(data); - - } - }); - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/SearchPresenter.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/SearchPresenter.java deleted file mode 100644 index ba70ade..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/SearchPresenter.java +++ /dev/null @@ -1,75 +0,0 @@ -package com.android.learn.mpresenter; - - -import com.android.learn.base.mmodel.BaseData; -import com.android.learn.base.mmodel.BaseResponse; -import com.android.learn.base.mmodel.FeedArticleListData; -import com.android.learn.base.mpresenter.BasePresenter; -import com.android.learn.base.thirdframe.rxjava.BaseObserver; -import com.android.learn.base.utils.ResponseStatusUtil; -import com.android.learn.mcontract.SearchContract; - -import io.reactivex.Observable; - - -public class SearchPresenter extends BasePresenter implements SearchContract.Presenter { - - private int mCurrentPage = 0; - - @Override - public void getFeedArticleList( String key) { - Observable observable = mRestService.search(mCurrentPage, key); - addSubscribe(observable, new BaseObserver>(true) { - @Override - public void onNext(BaseResponse feedArticleListData) { - mView.showArticleList(feedArticleListData.getData()); - } - }); - } - - @Override - public void onLoadMore(String key) { - ++mCurrentPage; - Observable observable = mRestService.search(mCurrentPage, key); - addSubscribe(observable, new BaseObserver>(true) { - @Override - public void onNext(BaseResponse feedArticleListData) { - mView.showArticleList(feedArticleListData.getData()); - } - }); - } - @Override - public void addCollectArticle(final int position, final FeedArticleListData.FeedArticleData feedArticleData) { - Observable observable = mRestService.addCollectArticle(feedArticleData.getId()); - addSubscribe(observable, new BaseObserver(true) { - - @Override - public void onNext(BaseData data) { - if (data.errorCode == BaseData.SUCCESS) { - feedArticleData.setCollect(true); - mView.showCollectArticleData(position, feedArticleData); - } else ResponseStatusUtil.handleResponseStatus(data); - } - - }); - - } - - @Override - public void cancelCollectArticle(final int position, final FeedArticleListData.FeedArticleData feedArticleData) { - Observable observable = mRestService.cancelCollectArticle(feedArticleData.getId(), -1); - addSubscribe(observable, new BaseObserver(true) { - - @Override - public void onNext(BaseData data) { - if (data.errorCode == BaseData.SUCCESS) { - feedArticleData.setCollect(false); - mView.showCancelCollectArticleData(position, feedArticleData); - } else ResponseStatusUtil.handleResponseStatus(data); - } - - }); - } - - -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/SplashLoginPresenter.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/SplashLoginPresenter.java deleted file mode 100644 index 10cbecd..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/SplashLoginPresenter.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.android.learn.mpresenter; - -import com.android.learn.base.mmodel.BaseData; -import com.android.learn.base.mmodel.RegisterLoginData; -import com.android.learn.base.mpresenter.BasePresenter; -import com.android.learn.base.thirdframe.retrofit.ApiService; -import com.android.learn.base.thirdframe.retrofit.RetrofitProvider; -import com.android.learn.base.thirdframe.rxjava.BaseObserver; -import com.android.learn.base.utils.ResponseStatusUtil; -import com.android.learn.mcontract.SplashLoginContract; - -import io.reactivex.Observable; - - -public class SplashLoginPresenter extends BasePresenter implements SplashLoginContract.Presenter { - - @Override - public void login(String account, String password) { - Observable observable = RetrofitProvider.getInstance().createService(ApiService.class).login(account, password); - addSubscribe(observable, new BaseObserver(false) { - @Override - public void onNext(RegisterLoginData data) { - mView.showLoginResData(data); - - } - }); - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/TodoAddPresenter.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/TodoAddPresenter.java deleted file mode 100644 index 8aa7201..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/TodoAddPresenter.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.android.learn.mpresenter; - - -import com.android.learn.base.mmodel.BaseData; -import com.android.learn.base.mpresenter.BasePresenter; -import com.android.learn.base.thirdframe.rxjava.BaseObserver; -import com.android.learn.base.utils.ResponseStatusUtil; -import com.android.learn.mcontract.TodoAddContract; -import com.android.learn.mcontract.TodoEditContract; - -import java.util.Map; - -import io.reactivex.Observable; - - -public class TodoAddPresenter extends BasePresenter implements TodoAddContract.Presenter { - - @Override - public void addTodo( Map map) { - Observable observable = mRestService.addTodo(map); - - addSubscribe(observable, new BaseObserver(false) { - - @Override - public void onNext(BaseData data) { - if (data.errorCode == BaseData.SUCCESS) { - mView.showAddTodo(data); - } else ResponseStatusUtil.handleResponseStatus(data); - } - }); - } - -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/TodoEditPresenter.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/TodoEditPresenter.java deleted file mode 100644 index a55f3e1..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/TodoEditPresenter.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.android.learn.mpresenter; - - -import com.android.learn.base.mmodel.BaseData; -import com.android.learn.base.mmodel.BaseResponse; -import com.android.learn.base.mmodel.TodoData; -import com.android.learn.base.mpresenter.BasePresenter; -import com.android.learn.base.thirdframe.rxjava.BaseObserver; -import com.android.learn.base.utils.ResponseStatusUtil; -import com.android.learn.mcontract.TodoContract; -import com.android.learn.mcontract.TodoEditContract; - -import java.util.Map; - -import io.reactivex.Observable; - - -public class TodoEditPresenter extends BasePresenter implements TodoEditContract.Presenter { - - @Override - public void updateTodo(int id, Map map) { - Observable observable = mRestService.updateTodo(id, map); - - addSubscribe(observable, new BaseObserver(false) { - - @Override - public void onNext(BaseData data) { - if (data.errorCode == BaseData.SUCCESS) { - mView.showUpdateTodo(data); - } else ResponseStatusUtil.handleResponseStatus(data); - } - }); - } - -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/TodoPresenter.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/TodoPresenter.java deleted file mode 100644 index d48c4bb..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/TodoPresenter.java +++ /dev/null @@ -1,80 +0,0 @@ -package com.android.learn.mpresenter; - - -import com.android.learn.base.mmodel.BaseData; -import com.android.learn.base.mmodel.BaseResponse; -import com.android.learn.base.mmodel.TodoData; -import com.android.learn.base.mpresenter.BasePresenter; -import com.android.learn.base.thirdframe.rxjava.BaseObserver; -import com.android.learn.base.utils.ResponseStatusUtil; -import com.android.learn.mcontract.TodoContract; - -import java.util.Map; - -import io.reactivex.Observable; - - -public class TodoPresenter extends BasePresenter implements TodoContract.Presenter { - public int notDonePage = 1, donePage = 1; - - @Override - public void getListNotDone(int type) { - Observable observable = mRestService.getListNotDone(type, notDonePage); - addSubscribe(observable, new BaseObserver>(true) { - - @Override - public void onNext(BaseResponse data) { - if (data.errorCode == BaseData.SUCCESS) { - mView.showListNotDone(data.getData()); - } else ResponseStatusUtil.handleResponseStatus(data); - } - - }); - notDonePage++; - } - - @Override - public void getListDone(int type) { - Observable observable = mRestService.getListDone(type, donePage); - addSubscribe(observable, new BaseObserver>(true) { - - @Override - public void onNext(BaseResponse data) { - if (data.errorCode == BaseData.SUCCESS) { - mView.showListDone(data.getData()); - } else ResponseStatusUtil.handleResponseStatus(data); - } - - }); - donePage++; - } - - @Override - public void deleteTodo(int id) { - Observable observable = mRestService.deleteTodo(id); - - addSubscribe(observable, new BaseObserver(false) { - - @Override - public void onNext(BaseData data) { - if (data.errorCode == BaseData.SUCCESS) { - } else ResponseStatusUtil.handleResponseStatus(data); - } - }); - } - //status: 0或1,传1代表未完成到已完成 - @Override - public void updateTodoStatus(int id, int status) { - Observable observable = mRestService.updateTodoStatus(id, status); - - addSubscribe(observable, new BaseObserver(false) { - - @Override - public void onNext(BaseData data) { - if (data.errorCode == BaseData.SUCCESS) { - mView.showUpdateTodoStatus(data); - } else ResponseStatusUtil.handleResponseStatus(data); - } - }); - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/UserInfoPresenter.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/UserInfoPresenter.java deleted file mode 100644 index 468d861..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/UserInfoPresenter.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.android.learn.mpresenter; - -import com.android.learn.base.mmodel.BaseData; -import com.android.learn.base.mpresenter.BasePresenter; -import com.android.learn.base.thirdframe.retrofit.ApiService; -import com.android.learn.base.thirdframe.retrofit.RetrofitProvider; -import com.android.learn.base.thirdframe.rxjava.BaseObserver; -import com.android.learn.mcontract.UserInfoContract; - -import io.reactivex.Observable; - -public class UserInfoPresenter extends BasePresenter implements UserInfoContract.Presenter { - - @Override - public void getLogoutData() { - - Observable observable = RetrofitProvider.getInstance().createService(ApiService.class).logout(); - addSubscribe(observable, new BaseObserver(false) { - @Override - public void onNext(BaseData baseData) { - } - }); - } - - -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/WechatPresenter.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/WechatPresenter.java deleted file mode 100644 index ceb3ec4..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/WechatPresenter.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.android.learn.mpresenter; - - -import com.android.learn.base.mmodel.BannerListData; -import com.android.learn.base.mmodel.BaseData; -import com.android.learn.base.mmodel.BaseResponse; -import com.android.learn.base.mmodel.FeedArticleListData; -import com.android.learn.base.mmodel.FeedArticleListData.FeedArticleData; -import com.android.learn.base.mmodel.WxArticle; -import com.android.learn.base.mpresenter.BasePresenter; -import com.android.learn.base.thirdframe.rxjava.BaseObserver; -import com.android.learn.base.utils.ResponseStatusUtil; -import com.android.learn.mcontract.HomeContract; -import com.android.learn.mcontract.WechatContract; - -import java.util.List; - -import io.reactivex.Observable; - - -public class WechatPresenter extends BasePresenter implements WechatContract.Presenter { - - @Override - public void getWxArticle() { - Observable observable = mRestService.getWxArticle(); - addSubscribe(observable, new BaseObserver>>(false) { - @Override - public void onNext(BaseResponse> datas) { - mView.showWxArticle(datas.data); - } - }); - } - -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/WechatSubPresenter.java b/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/WechatSubPresenter.java deleted file mode 100644 index 5690f34..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/mpresenter/WechatSubPresenter.java +++ /dev/null @@ -1,80 +0,0 @@ -package com.android.learn.mpresenter; - - -import com.android.learn.base.mmodel.BaseData; -import com.android.learn.base.mmodel.BaseResponse; -import com.android.learn.base.mmodel.FeedArticleListData; -import com.android.learn.base.mmodel.FeedArticleListData.FeedArticleData; -import com.android.learn.base.mpresenter.BasePresenter; -import com.android.learn.base.thirdframe.rxjava.BaseObserver; -import com.android.learn.base.utils.ResponseStatusUtil; -import com.android.learn.mcontract.WechatSubContract; - -import io.reactivex.Observable; - - -public class WechatSubPresenter extends BasePresenter implements WechatSubContract.Presenter { - - public int num=0; - @Override - public void getWxArtileById(int id) { - Observable observable = mRestService.getWxArtileById(id, num); - addSubscribe(observable, new BaseObserver>(true) { - - @Override - public void onNext(BaseResponse listData) { - mView.showWxArticleById(listData.getData()); - } - - }); - num++; - } - - @Override - public void addCollectArticle(final int position, final FeedArticleData feedArticleData) { - Observable observable = mRestService.addCollectArticle(feedArticleData.getId()); - addSubscribe(observable, new BaseObserver(true) { - - @Override - public void onNext(BaseData data) { - if (data.errorCode == BaseData.SUCCESS) { - feedArticleData.setCollect(true); - mView.showCollectArticleData(position, feedArticleData); - } else ResponseStatusUtil.handleResponseStatus(data); - } - - }); - - } - - @Override - public void cancelCollectArticle(final int position, final FeedArticleData feedArticleData) { - Observable observable = mRestService.cancelCollectArticle(feedArticleData.getId(), -1); - addSubscribe(observable, new BaseObserver(true) { - - @Override - public void onNext(BaseData data) { - if (data.errorCode == BaseData.SUCCESS) { - feedArticleData.setCollect(false); - mView.showCancelCollectArticleData(position, feedArticleData); - } else ResponseStatusUtil.handleResponseStatus(data); - } - - }); - } - - public void cancelCollectArticle(final int id) { - Observable observable = mRestService.cancelCollectArticle(id, -1); - addSubscribe(observable, new BaseObserver(true) { - - @Override - public void onNext(BaseData data) { - if (data.errorCode == BaseData.SUCCESS) { - mView.showCancelCollectArticleData(id); - } else ResponseStatusUtil.handleResponseStatus(data); - } - - }); - } - -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/view/CustomViewPager.java b/AndroidLearnProject/app/src/main/java/com/android/learn/view/CustomViewPager.java deleted file mode 100644 index 3b9263d..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/view/CustomViewPager.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.android.learn.view; - -import android.content.Context; -import android.support.v4.view.ViewPager; -import android.util.AttributeSet; -import android.util.Log; -import android.view.MotionEvent; -import android.view.View; - - -public class CustomViewPager extends ViewPager { - - - public boolean canScroll = true; - - public CustomViewPager(Context context, AttributeSet attrs) { - super(context, attrs); - } - - public CustomViewPager(Context context) { - super(context); - } - - - public void setCanScroll(boolean canScroll) { - this.canScroll = canScroll; - } - - @Override - public boolean onTouchEvent(MotionEvent ev) { - return canScroll && super.onTouchEvent(ev); - } - - @Override - public boolean onInterceptTouchEvent(MotionEvent ev) { - return canScroll && super.onInterceptTouchEvent(ev); - } - - @Override - public boolean dispatchTouchEvent(MotionEvent ev) { - if(getCurrentItem()!=0) - getParent().requestDisallowInterceptTouchEvent(true);//如果不是viewpager的第一项让父控件不要拦截事件 - return super.dispatchTouchEvent(ev); - } - -// @Override -// protected boolean canScroll(View v, boolean checkV, int dx, int x, int y) { -// if (v != this && v instanceof ViewPager) { //判断当前的View是不是ViewPager -// int currentItem = ((ViewPager) v).getCurrentItem(); //当前的条目 -// int countItem = ((ViewPager) v).getAdapter().getCount(); //总的条目 -// if ((currentItem == (countItem - 1) && dx < 0) || (currentItem == 0 && dx > 0)) { //判断当前条目以及滑动方向 -// return false; -// } -// return true; -// } -// return super.canScroll(v, checkV, dx, x, y); -// } - - @Override - public void setCurrentItem(int item) { - setCurrentItem(item, false); - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/view/SearchViewUtils.java b/AndroidLearnProject/app/src/main/java/com/android/learn/view/SearchViewUtils.java deleted file mode 100644 index a1b7817..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/view/SearchViewUtils.java +++ /dev/null @@ -1,105 +0,0 @@ -package com.android.learn.view; - -import android.animation.Animator; -import android.content.Context; -import android.os.Build; -import android.support.v7.widget.CardView; -import android.view.View; -import android.view.ViewAnimationUtils; -import android.view.inputmethod.InputMethodManager; -import android.widget.EditText; - - -public class SearchViewUtils { - public static void handleToolBar(final Context context, final View search, final EditText editText) { - //隐藏 - if (search.getVisibility() == View.VISIBLE) { - - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { - final Animator animatorHide = ViewAnimationUtils.createCircularReveal(search, - search.getWidth() - dip2px(context, 56), - dip2px(context, 23), - //确定元的半径(算长宽的斜边长,这样半径不会太短也不会很长效果比较舒服) - (float) Math.hypot(search.getWidth(), search.getHeight()), - 0); - animatorHide.addListener(new Animator.AnimatorListener() { - @Override - public void onAnimationStart(Animator animation) { - - } - - @Override - public void onAnimationEnd(Animator animation) { - search.setVisibility(View.GONE); - ((InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE)).hideSoftInputFromWindow(search.getWindowToken(), 0); - } - - @Override - public void onAnimationCancel(Animator animation) { - - } - - @Override - public void onAnimationRepeat(Animator animation) { - - } - }); - animatorHide.setDuration(300); - animatorHide.start(); - } else { -// 关闭输入法 - ((InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE)).hideSoftInputFromWindow(search.getWindowToken(), 0); - search.setVisibility(View.GONE); - } - editText.setText(""); - search.setEnabled(false); - } - //显示 - else { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { - final Animator animator = ViewAnimationUtils.createCircularReveal(search, - search.getWidth() - dip2px(context, 56), - dip2px(context, 23), - 0, - (float) Math.hypot(search.getWidth(), search.getHeight())); - animator.addListener(new Animator.AnimatorListener() { - @Override - public void onAnimationStart(Animator animation) { - } - - @Override - public void onAnimationEnd(Animator animation) { - ((InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE)).toggleSoftInput(InputMethodManager.SHOW_FORCED, InputMethodManager.HIDE_IMPLICIT_ONLY); - } - - @Override - public void onAnimationCancel(Animator animation) { - - } - - @Override - public void onAnimationRepeat(Animator animation) { - - } - }); - search.setVisibility(View.VISIBLE); - if (search.getVisibility() == View.VISIBLE) { - animator.setDuration(300); - animator.start(); - search.setEnabled(true); - } - } else { - search.setVisibility(View.VISIBLE); - search.setEnabled(true); - // 关闭输入法 - ((InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE)).toggleSoftInput(InputMethodManager.SHOW_FORCED, InputMethodManager.HIDE_IMPLICIT_ONLY); - } - } - } - - - public static int dip2px(Context context, float dp) { - final float scale = context.getResources().getDisplayMetrics().density; - return (int) (dp * scale + 0.5); - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/view/fontsliderbar/Bar.java b/AndroidLearnProject/app/src/main/java/com/android/learn/view/fontsliderbar/Bar.java deleted file mode 100644 index 2a89f48..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/view/fontsliderbar/Bar.java +++ /dev/null @@ -1,134 +0,0 @@ -package com.android.learn.view.fontsliderbar; - -import android.content.Context; -import android.graphics.Canvas; -import android.graphics.Paint; -import android.text.TextUtils; - -import com.android.learn.R; - -/** - * Created by Administrator on 2017/9/6 0006. - */ -public class Bar { - - private Paint mBarPaint; - private Paint mTextPaint; - - private final float mLeftX; - private final float mRightX; - private final float mY; - private final float mPadding; - - private int mSegments; - private float mTickDistance; - private final float mTickHeight; - private final float mTickStartY; - private final float mTickEndY; - private int mtextSize; - Context context; - - public Bar(Context context, float x, float y, float width, int tickCount, float tickHeight, - float barWidth, int barColor, int textColor, int textSize, int padding) { - this.context = context; - mLeftX = x; - mRightX = x + width; - mY = y; - mPadding = padding; - mtextSize = textSize; - - mSegments = tickCount - 1; - mTickDistance = width / mSegments; - mTickHeight = tickHeight; - mTickStartY = mY - mTickHeight / 2f; - mTickEndY = mY + mTickHeight / 2f; - - mBarPaint = new Paint(); - mBarPaint.setColor(barColor); - mBarPaint.setStrokeWidth(barWidth); - mBarPaint.setAntiAlias(true); - - mTextPaint = new Paint(); - mTextPaint.setColor(textColor); - mTextPaint.setTextSize(textSize); - mTextPaint.setAntiAlias(true); - } - - public void draw(Canvas canvas) { - drawLine(canvas); - drawTicks(canvas,context); - } - - public float getLeftX() { - return mLeftX; - } - - public float getRightX() { - return mRightX; - } - - //获取标尺最近的刻度 通过圆所在的位置 - public float getNearestTickCoordinate(Thumb thumb) { - final int nearestTickIndex = getNearestTickIndex(thumb); - final float nearestTickCoordinate = mLeftX + (nearestTickIndex * mTickDistance); - return nearestTickCoordinate; - } - - //获取标尺最近的刻度 通过下标 - public float getNearestTickCoordinate(int index) { - final int nearestTickIndex = index; - final float nearestTickCoordinate = mLeftX + (nearestTickIndex * mTickDistance); - return nearestTickCoordinate; - } - - - public int getNearestTickIndex(Thumb thumb) { - return getNearestTickIndex(thumb.getX()); - } - - public int getNearestTickIndex(float x) { - return (int) ((x - mLeftX + mTickDistance / 2f) / mTickDistance); - } - - private void drawLine(Canvas canvas) { - canvas.drawLine(mLeftX, mY, mRightX, mY, mBarPaint); - } - - private void drawTicks(Canvas canvas,Context context) { - for (int i = 0; i <= mSegments; i++) { - final float x = i * mTickDistance + mLeftX; - canvas.drawLine(x, mTickStartY, x, mTickEndY, mBarPaint); - //绘制头尾 A 以及标准 - String text = ""; - if (i == 0) { - text = "A"; - mTextPaint.setTextSize(mtextSize * 0.9f); - } - if (i == 1) { - if (context != null) - text = context.getString(R.string.standrd); - mTextPaint.setTextSize(mtextSize); - } - if (i == mSegments) { - text = "A"; - mTextPaint.setTextSize(mtextSize * 1.4f); - } - if (!TextUtils.isEmpty(text)) { - canvas.drawText(text, x - getTextWidth(text) / 2, mTickStartY - mPadding, mTextPaint); - } - } - } - - float getTextWidth(String text) { - return mTextPaint.measureText(text); - } - - public void destroyResources() { - if (null != mBarPaint) { - mBarPaint = null; - } - if (null != mTextPaint) { - mTextPaint = null; - } - } -} \ No newline at end of file diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/view/fontsliderbar/FontSliderBar.java b/AndroidLearnProject/app/src/main/java/com/android/learn/view/fontsliderbar/FontSliderBar.java deleted file mode 100644 index 18e562c..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/view/fontsliderbar/FontSliderBar.java +++ /dev/null @@ -1,421 +0,0 @@ -package com.android.learn.view.fontsliderbar; - -import android.animation.ValueAnimator; -import android.content.Context; -import android.graphics.Canvas; -import android.graphics.Color; -import android.graphics.Paint; -import android.util.AttributeSet; -import android.util.Log; -import android.view.MotionEvent; -import android.view.View; - -/** - * Created by Administrator on 2017/9/6 0006. - */ - -public class FontSliderBar extends View { - - private static final String TAG = "SliderBar"; - - private static final int DEFAULT_TICK_COUNT = 3; - private static final float DEFAULT_TICK_HEIGHT = 24; - - private static final float DEFAULT_BAR_WIDTH = 3; - private static final int DEFAULT_BAR_COLOR = Color.LTGRAY; - - private static final int DEFAULT_TEXT_SIZE = 14; - private static final int DEFAULT_TEXT_COLOR = Color.LTGRAY; - private static final int DEFAULT_TEXT_PADDING = 20; - - private static final float DEFAULT_THUMB_RADIUS = 20; - private static final int DEFAULT_THUMB_COLOR_NORMAL = 0xff33b5e5; - private static final int DEFAULT_THUMB_COLOR_PRESSED = 0xff33b5e5; - - private int mTickCount = DEFAULT_TICK_COUNT; - private float mTickHeight = DEFAULT_TICK_HEIGHT; - - private float mBarWidth = DEFAULT_BAR_WIDTH; - private int mBarColor = DEFAULT_BAR_COLOR; - - private float mThumbRadius = DEFAULT_THUMB_RADIUS; - private int mThumbColorNormal = DEFAULT_THUMB_COLOR_NORMAL; - private int mThumbColorPressed = DEFAULT_THUMB_COLOR_PRESSED; - - private int mTextSize = DEFAULT_TEXT_SIZE; - private int mTextColor = DEFAULT_TEXT_COLOR; - private int mTextPadding = DEFAULT_TEXT_PADDING; - - private int mDefaultWidth = 500; - - private int mCurrentIndex = 1; - private boolean mAnimation = true; - - private Thumb mThumb; - private Bar mBar; - private float mWith; - - private ValueAnimator mAnimator; - private OnSliderBarChangeListener mListener; - Context context; - - public FontSliderBar(Context context) { - super(context); - } - - public FontSliderBar(Context context, AttributeSet attrs) { - super(context, attrs); - this.context=context; - } - - public FontSliderBar(Context context, AttributeSet attrs, int defStyle) { - super(context, attrs, defStyle); - - } - - @Override - protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { - super.onMeasure(widthMeasureSpec, heightMeasureSpec); - int width; - int height; - - final int measureWidthMode = MeasureSpec.getMode(widthMeasureSpec); - final int measureHeightMode = MeasureSpec.getMode(heightMeasureSpec); - final int measureWidth = MeasureSpec.getSize(widthMeasureSpec); - final int measureHeight = MeasureSpec.getSize(heightMeasureSpec); - - if (measureWidthMode == MeasureSpec.AT_MOST) { - width = measureWidth; - } else if (measureWidthMode == MeasureSpec.EXACTLY) { - width = measureWidth; - } else { - width = mDefaultWidth; - } - mWith=width; - if (measureHeightMode == MeasureSpec.AT_MOST) { - height = Math.min(getMinHeight(), measureHeight); - } else if (measureHeightMode == MeasureSpec.EXACTLY) { - height = measureHeight; - } else { - height = getMinHeight(); - } - setMeasuredDimension(width, height); - } - - private int getMinHeight() { - final float f = getFontHeight(); - return (int) (f + mTextPadding + mThumbRadius * 2); - } - - @Override - protected void onSizeChanged(int w, int h, int oldw, int oldh) { - super.onSizeChanged(w, h, oldw, oldh); - - createBar(context); - createThumbs(); - } - - @Override - protected void onDraw(Canvas canvas) { - super.onDraw(canvas); - mBar.draw(canvas); - mThumb.draw(canvas); - } - - @Override - protected void onVisibilityChanged(View changedView, int visibility) { - super.onVisibilityChanged(changedView, visibility); - if (VISIBLE != visibility) { - stopAnimation(); - } - } - - @Override - protected void onDetachedFromWindow() { - destroyResources(); - super.onDetachedFromWindow(); - } - - @Override - public boolean onTouchEvent(MotionEvent event) { - if (!isEnabled() || isAnimationRunning()) { - return false; - } - switch (event.getAction()) { - case MotionEvent.ACTION_DOWN: - return onActionDown(event.getX(), event.getY()); - case MotionEvent.ACTION_MOVE: - this.getParent().requestDisallowInterceptTouchEvent(true); - return onActionMove(event.getX()); - case MotionEvent.ACTION_UP: - case MotionEvent.ACTION_CANCEL: - this.getParent().requestDisallowInterceptTouchEvent(false); - return onActionUp(event.getX(), event.getY()); - default: - return true; - } - } - - public FontSliderBar setOnSliderBarChangeListener(OnSliderBarChangeListener listener) { - mListener = listener; - return FontSliderBar.this; - } - - public FontSliderBar setTickCount(int tickCount) { - if (isValidTickCount(tickCount)) { - mTickCount = tickCount; - } else { - Log.e(TAG, "tickCount less than 2; invalid tickCount."); - throw new IllegalArgumentException("tickCount less than 2; invalid tickCount."); - } - return FontSliderBar.this; - } - - public FontSliderBar setTickHeight(float tickHeight) { - mTickHeight = tickHeight; - return FontSliderBar.this; - } - - public FontSliderBar setBarWeight(float barWeight) { - mBarWidth = barWeight; - return FontSliderBar.this; - } - - public FontSliderBar setBarColor(int barColor) { - mBarColor = barColor; - return FontSliderBar.this; - } - - public FontSliderBar setTextSize(int textSize) { - mTextSize = textSize; - return FontSliderBar.this; - } - - public FontSliderBar setTextColor(int textColor) { - mTextColor = textColor; - return FontSliderBar.this; - } - - public FontSliderBar setTextPadding(int textPadding) { - mTextPadding = textPadding; - return FontSliderBar.this; - } - - public FontSliderBar setThumbRadius(float thumbRadius) { - mThumbRadius = thumbRadius; - return FontSliderBar.this; - } - - public FontSliderBar setThumbColorNormal(int thumbColorNormal) { - mThumbColorNormal = thumbColorNormal; - return FontSliderBar.this; - } - - public FontSliderBar setThumbColorPressed(int thumbColorPressed) { - mThumbColorPressed = thumbColorPressed; - return FontSliderBar.this; - } - - - public FontSliderBar setThumbIndex(int currentIndex) { - //处理越界 - if (indexOutOfRange(currentIndex)) { - if(currentIndex<0){ - mCurrentIndex = 0; - } - if(currentIndex>mTickCount-1){ - mCurrentIndex = mTickCount-1; - } -// throw new IllegalArgumentException( -// "A thumb index is out of bounds. Check that it is between 0 and mTickCount - 1"); - } else { - if (mCurrentIndex != currentIndex) { - mCurrentIndex = currentIndex; - } - } - if (mListener != null) { - mListener.onIndexChanged(this, mCurrentIndex); - } - return FontSliderBar.this; - } - - public FontSliderBar withAnimation(boolean animation) { - mAnimation = animation; - return FontSliderBar.this; - } - - public void applay(Context context) { - createThumbs(); - createBar(context); - requestLayout(); - invalidate(); - } - - public int getCurrentIndex() { - if(mCurrentIndex>mTickCount-1){ - mCurrentIndex=mTickCount-1; - } - return mCurrentIndex; - } - - private void createBar(Context context) { - mBar = new Bar(context,getXCoordinate(), getYCoordinate(), getBarLength(), mTickCount, mTickHeight, mBarWidth, - mBarColor, mTextColor, mTextSize, mTextPadding); - } - - private void createThumbs() { - if(mCurrentIndex==0){ - mThumb = new Thumb(getXCoordinate()+(mWith/mTickCount+getXCoordinate()/2)*mCurrentIndex, getYCoordinate(), mThumbColorNormal, mThumbColorPressed, mThumbRadius); - }else{ - mThumb = new Thumb(getXCoordinate()+(mWith/mTickCount+getXCoordinate()/2)*mCurrentIndex-4, getYCoordinate(), mThumbColorNormal, mThumbColorPressed, mThumbRadius); - } - //getWidth() - 2 * getXCoordinate() -// float xCoordinate = getBarLength() / (mTickCount - 1) * mCurrentIndex + getXCoordinate(); -// mThumb = new Thumb(xCoordinate, getYCoordinate(), mThumbColorNormal, mThumbColorPressed, mThumbRadius); - } - - private float getXCoordinate() { - return mThumbRadius; - } - - private float getYCoordinate() { - return getHeight() - mThumbRadius; - } - - private float getFontHeight() { - Paint paint = new Paint(); - paint.setTextSize(mTextSize); - paint.measureText("A"); - Paint.FontMetrics fontMetrics = paint.getFontMetrics(); - float f = fontMetrics.descent - fontMetrics.ascent; - return f; - } - - private float getBarLength() { - return getWidth() - 2 * getXCoordinate(); - } - - private boolean indexOutOfRange(int thumbIndex) { - return (thumbIndex < 0 || thumbIndex >= mTickCount); - } - - private boolean isValidTickCount(int tickCount) { - return tickCount > 1; - } - - private boolean onActionDown(float x, float y) { - if (!mThumb.isPressed() && mThumb.isInTargetZone(x, y)) { - pressThumb(mThumb); - } - return true; - } - - private boolean onActionMove(float x) { - if (mThumb.isPressed()) { - moveThumb(mThumb, x); - } - return true; - } - - private boolean onActionUp(float x, float y) { - if (mThumb.isPressed()) { - releaseThumb(mThumb); - }else{ - //点击事件 - final int tempIndex = mBar.getNearestTickIndex(x); - if (tempIndex != mCurrentIndex) { - mCurrentIndex = tempIndex; - if (null != mListener) { - mListener.onIndexChanged(this, mCurrentIndex); - } - float end = mBar.getNearestTickCoordinate(mCurrentIndex); - if(end>mBar.getRightX()){ - end= mBar.getRightX(); - } - mThumb.setX(end); - invalidate(); - } - mThumb.release();//回收 - } - return true; - } - - private void pressThumb(Thumb thumb) { - thumb.press(); - invalidate(); - } - - private void releaseThumb(final Thumb thumb) { - final int tempIndex = mBar.getNearestTickIndex(thumb); - if (tempIndex != mCurrentIndex) { - mCurrentIndex = tempIndex; - if (null != mListener) { - mListener.onIndexChanged(this, mCurrentIndex); - } - } - - float start = thumb.getX(); - float end = mBar.getNearestTickCoordinate(thumb); - if (mAnimation) { - startAnimation(thumb, start, end); - } else { - thumb.setX(end); - invalidate(); - } - thumb.release(); - } - - private void startAnimation(final Thumb thumb, float start, float end) { - stopAnimation(); - mAnimator = ValueAnimator.ofFloat(start, end); - mAnimator.setDuration(80); - mAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() { - @Override - public void onAnimationUpdate(ValueAnimator animation) { - final float x = (Float) animation.getAnimatedValue(); - thumb.setX(x); - invalidate(); - } - }); - mAnimator.start(); - } - - private boolean isAnimationRunning() { - if (null != mAnimator && mAnimator.isRunning()) { - return true; - } - return false; - } - - private void destroyResources() { - stopAnimation(); - if (null != mBar) { - mBar.destroyResources(); - mBar = null; - } - if (null != mThumb) { - mThumb.destroyResources(); - mThumb = null; - } - } - - private void stopAnimation() { - if (null != mAnimator) { - mAnimator.cancel(); - mAnimator = null; - } - } - - private void moveThumb(Thumb thumb, float x) { - if (x < mBar.getLeftX() || x > mBar.getRightX()) { - // Do nothing. - } else { - thumb.setX(x); - invalidate(); - } - } - - public interface OnSliderBarChangeListener { - void onIndexChanged(FontSliderBar rangeBar, int index); - } -} diff --git a/AndroidLearnProject/app/src/main/java/com/android/learn/view/fontsliderbar/Thumb.java b/AndroidLearnProject/app/src/main/java/com/android/learn/view/fontsliderbar/Thumb.java deleted file mode 100644 index 544c36f..0000000 --- a/AndroidLearnProject/app/src/main/java/com/android/learn/view/fontsliderbar/Thumb.java +++ /dev/null @@ -1,101 +0,0 @@ -package com.android.learn.view.fontsliderbar; - -import android.graphics.Canvas; -import android.graphics.Color; -import android.graphics.Paint; - -/** - * Created by Administrator on 2017/9/6 0006. - */ - -public class Thumb { - - private static final float MINIMUM_TARGET_RADIUS = 50; - - private final float mTouchZone; - private boolean mIsPressed; - - private final float mY; - private float mX; - - private Paint mPaintNormal; - private Paint mPaintPressed; - - private float mRadius; - private int mColorNormal; - private int mColorPressed; - - public Thumb(float x, float y, int colorNormal, int colorPressed, float radius) { - - mRadius = radius; - mColorNormal = colorNormal; - mColorPressed = colorPressed; - - mPaintNormal = new Paint(); - mPaintNormal.setColor(mColorNormal); - mPaintNormal.setAntiAlias(true); - - mPaintPressed = new Paint(); - mPaintPressed.setColor(mColorPressed); - mPaintPressed.setAntiAlias(true); - - mTouchZone = (int) Math.max(MINIMUM_TARGET_RADIUS, radius); - - mX = x; - mY = y; - } - - public void setX(float x) { - mX = x; - } - - public float getX() { - return mX; - } - - public boolean isPressed() { - return mIsPressed; - } - - public void press() { - mIsPressed = true; - } - - public void release() { - mIsPressed = false; - } - - public boolean isInTargetZone(float x, float y) { - if (Math.abs(x - mX) <= mTouchZone && Math.abs(y - mY) <= mTouchZone) { - return true; - } - return false; - } - - public void draw(Canvas canvas) { - if (mIsPressed) { - mPaintPressed.setColor(Color.WHITE); - mPaintPressed.setStyle(Paint.Style.FILL); - canvas.drawCircle(mX, mY, mRadius, mPaintPressed); - mPaintPressed.setColor(mColorPressed); - mPaintPressed.setStyle(Paint.Style.STROKE); - canvas.drawCircle(mX, mY, mRadius-1, mPaintPressed); - } else { - mPaintNormal.setColor(Color.WHITE); - mPaintNormal.setStyle(Paint.Style.FILL); - canvas.drawCircle(mX, mY, mRadius, mPaintNormal); - mPaintNormal.setColor(mColorPressed); - mPaintNormal.setStyle(Paint.Style.STROKE); - canvas.drawCircle(mX, mY, mRadius-1, mPaintNormal); - } - } - - public void destroyResources() { - if(null != mPaintNormal) { - mPaintNormal = null; - } - if(null != mPaintPressed) { - mPaintPressed = null; - } - } -} diff --git a/AndroidLearnProject/app/src/main/res/mipmap-xhdpi/app_icon.png b/AndroidLearnProject/app/src/main/res/mipmap-xhdpi/app_icon.png deleted file mode 100644 index 6c8f753..0000000 Binary files a/AndroidLearnProject/app/src/main/res/mipmap-xhdpi/app_icon.png and /dev/null differ diff --git a/AndroidLearnProject/app/src/main/res/mipmap-xhdpi/app_icon2.png b/AndroidLearnProject/app/src/main/res/mipmap-xhdpi/app_icon2.png deleted file mode 100644 index 827bca1..0000000 Binary files a/AndroidLearnProject/app/src/main/res/mipmap-xhdpi/app_icon2.png and /dev/null differ diff --git a/AndroidLearnProject/app/src/main/res/values/styles.xml b/AndroidLearnProject/app/src/main/res/values/styles.xml deleted file mode 100644 index 471b257..0000000 --- a/AndroidLearnProject/app/src/main/res/values/styles.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/AndroidLearnProject/basemodule/build.gradle b/AndroidLearnProject/basemodule/build.gradle deleted file mode 100644 index da22374..0000000 --- a/AndroidLearnProject/basemodule/build.gradle +++ /dev/null @@ -1,129 +0,0 @@ -apply plugin: 'com.android.library' -//使用greendao -apply plugin: 'org.greenrobot.greendao' -apply plugin: 'com.jakewharton.butterknife' -android { - compileSdkVersion rootProject.ext.android.compileSdkVersion - buildToolsVersion rootProject.ext.android.buildToolsVersion - defaultConfig { - minSdkVersion rootProject.ext.android.minSdkVersion - targetSdkVersion rootProject.ext.android.targetSdkVersion - - - testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" - javaCompileOptions { - annotationProcessorOptions { - arguments = [eventBusIndex: 'com.android.learn.MyEventBusIndex'] - } - } - } - buildTypes { - release { - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' - } - } - greendao { - schemaVersion 1 //数据库版本号,如果数据库需要升级,直接在此修改版本号即可 - daoPackage 'com.android.learn.base.greendao.gen' //dao包名,默认是entity所在的包 - targetGenDir 'src/main/java' //数据库文件的目录 - } - - //执行lint检查,有任何的错误或者警告提示,都会终止构建 - lintOptions { - abortOnError false - } -// sourceSets { -// main { -// //jni库的调用会到资源文件夹下libs里面找so文件,对于so文件,android studio理论上是要求放置在一个jniLibs文件夹下的,这样程序才能够找到要所依赖的so文件 -// jniLibs.srcDirs = ['libs'] -// } -// } -} -dependencies { - api fileTree(include: ['*.jar'], dir: 'libs') - api rootProject.ext.dependencies.appcompatV7 - api rootProject.ext.dependencies.design - api rootProject.ext.dependencies["constraint-layout"] - api 'com.android.support:cardview-v7:26+' - testImplementation 'junit:junit:4.12' - api fileTree(include: ['*.jar'], dir: 'libs') - - //okhttp retrofit - api rootProject.ext.dependencies["okhttp3"] - api rootProject.ext.dependencies["retrofit"] - api rootProject.ext.dependencies["retrofit-converter-gson"] - - //butterknife - api rootProject.ext.dependencies["butterknife"] - annotationProcessor rootProject.ext.dependencies["butterknife-compiler"] - - // glide - api rootProject.ext.dependencies["glide"] - annotationProcessor rootProject.ext.dependencies["glide-compiler"] - - // banner - api rootProject.ext.dependencies["banner"] - - // rxjava - api rootProject.ext.dependencies["rxjava"] - api rootProject.ext.dependencies["rxandroid"] - api rootProject.ext.dependencies["retrofit2:adapter-rxjava2"] - - // dagger2 - api rootProject.ext.dependencies["dagger"] - annotationProcessor rootProject.ext.dependencies["dagger-compiler"] - - // eventbus - api rootProject.ext.dependencies["event-bus"] - annotationProcessor rootProject.ext.dependencies["eventbus-annotation-processor"] - - // BlockCanary进行卡顿监控和提示 - - // debugImplementation rootProject.ext.dependencies["blockcanary-android"] - - // releaseImplementation rootProject.ext.dependencies["blockcanary-no-op"] - - // //LeakCanary - - // debugImplementation rootProject.ext.dependencies["leakcanary-android"] - - // releaseImplementation rootProject.ext.dependencies["leakcanary-android-no-op"] - - // Optional, if you use support library fragments: - - // debugImplementation 'com.squareup.leakcanary:leakcanary-support-fragment:1.6.1' - - //okhttp保存cookie - api rootProject.ext.dependencies["PersistentCookieJar"] - - //下拉刷新框架 - api rootProject.ext.dependencies["SmartRefreshLayout"] - api rootProject.ext.dependencies["SmartRefreshHeader"] - - //RecyclerView万能适配器 - compile rootProject.ext.dependencies["BaseRecyclerViewAdapterHelper"] - - //友盟统计 - api rootProject.ext.dependencies["umeng-common"] - api rootProject.ext.dependencies["umeng-analytics"] - - //崩溃自定义跳转界面 - api rootProject.ext.dependencies["customactivityoncrash"] - // 知识点模块的旋转效果 - api rootProject.ext.dependencies["infinitecycleviewpager"] - // 首页欢迎的SVGA动效 - api rootProject.ext.dependencies["SVGAPlayer-Android"] - // 搜索页的flow标签 - api rootProject.ext.dependencies["flowlayout"] - // 搜索历史使用的数据库框架 - api rootProject.ext.dependencies["greendao"] - // activity滑动消失框架 - api rootProject.ext.dependencies["bga-swipebacklayout"] - // StatusUtil 沉浸式状态栏 - api('com.jaeger.statusbarutil:library:1.4.0') { - exclude group: 'com.android.support', module: 'recyclerview-v7' - } - // 换肤框架,不必重启应用 - api project(':xskinloader-lib') -} diff --git a/AndroidLearnProject/basemodule/src/main/AndroidManifest.xml b/AndroidLearnProject/basemodule/src/main/AndroidManifest.xml deleted file mode 100644 index aff47d4..0000000 --- a/AndroidLearnProject/basemodule/src/main/AndroidManifest.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/activity/BaseActivity.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/activity/BaseActivity.java deleted file mode 100644 index 65f7ae7..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/activity/BaseActivity.java +++ /dev/null @@ -1,242 +0,0 @@ -package com.android.learn.base.activity; - -import android.content.Context; -import android.content.res.Configuration; -import android.content.res.Resources; -import android.graphics.drawable.ColorDrawable; -import android.os.Build; -import android.os.Bundle; -import android.support.annotation.ColorInt; -import android.support.annotation.IntRange; -import android.support.annotation.Nullable; -import android.view.View; - -import com.android.learn.base.application.CustomApplication; -import com.android.learn.base.utils.ExitAppUtils; -import com.android.learn.base.utils.LogUtil; -import com.android.learn.base.utils.SPUtils; -import com.gaolei.basemodule.R; -import com.jaeger.library.StatusBarUtil; -import com.umeng.analytics.MobclickAgent; -import com.wind.me.xskinloader.SkinInflaterFactory; -import com.wind.me.xskinloader.SkinManager; -import com.wind.me.xskinloader.util.AssetFileUtils; - -import java.io.File; - -import butterknife.ButterKnife; -import cn.bingoogolapple.swipebacklayout.BGASwipeBackHelper; - - -/** - * Created by gaolei on 2018/4/26. - */ - -public abstract class BaseActivity extends BasePermisssionActivity implements View.OnClickListener, BGASwipeBackHelper.Delegate { - - Boolean isNightMode; - - String TAG = "BaseActivity"; - protected BGASwipeBackHelper mSwipeBackHelper; - - protected void onCreate(@Nullable Bundle savedInstanceState) { - -// 「必须在 Application 的 onCreate 方法中执行 BGASwipeBackHelper.init 来初始化滑动返回」 - // 在 super.onCreate(savedInstanceState) 之前调用该方法 - initSwipeBackFinish(); - super.onCreate(savedInstanceState); - SkinInflaterFactory.setFactory(this); - setContentView(getLayoutId()); - ButterKnife.bind(this); - setStatusBar(); - ExitAppUtils.getInstance().addActivity(this); - - SkinManager.get().setWindowStatusBarColor(this.getWindow(), R.color.status_bar_color); - - Bundle bundle = getIntent().getExtras(); - if (bundle == null) { - bundle = savedInstanceState; - } - initData(bundle); - - } - - - protected abstract int getLayoutId(); - - protected abstract void initData(Bundle bundle); - - @Override - public void onClick(View v) { - if (v.getId() == R.id.iv_back) { - finish(); - } - } - - protected void onRestart() { - super.onRestart(); - } - - protected void onResume() { - super.onResume(); - MobclickAgent.onResume(this); -// context = this; - LogUtil.d(TAG, "BaseActivity ----onResume:" + getClass().getName().toString()); - } - - - protected void onPause() { - super.onPause(); - MobclickAgent.onPause(this); - } - - @Override - public void onWindowFocusChanged(boolean hasFocus) { - super.onWindowFocusChanged(hasFocus); - - } - - @Override - protected void onStop() { - super.onStop(); - } - - protected void onDestroy() { - super.onDestroy(); - ExitAppUtils.getInstance().delActivity(this); - LogUtil.d(TAG, "BaseActivity ----onDestroy:" + getClass().getName().toString()); - } - - public void useNightMode(boolean isNight) { - - if (isNight) { - changeSkin(); - - } else { - - restoreDefaultSkin(); - } - } - - //重写字体缩放比例 api>25 - @Override - protected void attachBaseContext(Context newBase) { - - if (Build.VERSION.SDK_INT > Build.VERSION_CODES.N) { - final Resources res = newBase.getResources(); - final Configuration config = res.getConfiguration(); - config.fontScale = CustomApplication.getInstance().getFontScale();//1 设置正常字体大小的倍数 - final Context newContext = newBase.createConfigurationContext(config); - super.attachBaseContext(newContext); - } else { - super.attachBaseContext(newBase); - } - } - - //重写字体缩放比例 api<25 - @Override - public Resources getResources() { - Resources res = super.getResources(); - if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.N) { - Configuration config = res.getConfiguration(); - config.fontScale = CustomApplication.getInstance().getFontScale();//1 设置正常字体大小的倍数 - res.updateConfiguration(config, res.getDisplayMetrics()); - } - return res; - } - - private void changeSkin() { - //将assets目录下的皮肤文件拷贝到data/data/.../cache目录下 - String saveDir = getCacheDir().getAbsolutePath() + "/skins"; - String savefileName = "/skin1.skin"; - String asset_dir = "skins/xskinloader-skin-apk-debug.apk"; - File file = new File(saveDir + File.separator + savefileName); -// if (!file.exists()) { - AssetFileUtils.copyAssetFile(this, asset_dir, saveDir, savefileName); -// } - SkinManager.get().loadNewSkin(file.getAbsolutePath()); - } - - private void restoreDefaultSkin() { - SkinManager.get().restoreToDefaultSkin(); - } - - - /** - * 初始化滑动返回。在 super.onCreate(savedInstanceState) 之前调用该方法 - */ - private void initSwipeBackFinish() { - mSwipeBackHelper = new BGASwipeBackHelper(this, this); - - // 「必须在 Application 的 onCreate 方法中执行 BGASwipeBackHelper.init 来初始化滑动返回」 - // 下面几项可以不配置,这里只是为了讲述接口用法。 - - // 设置滑动返回是否可用。默认值为 true - mSwipeBackHelper.setSwipeBackEnable(true); - // 设置是否仅仅跟踪左侧边缘的滑动返回。默认值为 true - mSwipeBackHelper.setIsOnlyTrackingLeftEdge(false); - // 设置是否是微信滑动返回样式。默认值为 true - mSwipeBackHelper.setIsWeChatStyle(true); - // 设置阴影资源 id。默认值为 R.drawable.bga_sbl_shadow - mSwipeBackHelper.setShadowResId(R.drawable.bga_sbl_shadow); - // 设置是否显示滑动返回的阴影效果。默认值为 true - mSwipeBackHelper.setIsNeedShowShadow(true); - // 设置阴影区域的透明度是否根据滑动的距离渐变。默认值为 true - mSwipeBackHelper.setIsShadowAlphaGradient(true); - // 设置触发释放后自动滑动返回的阈值,默认值为 0.3f - mSwipeBackHelper.setSwipeBackThreshold(0.3f); - // 设置底部导航条是否悬浮在内容上,默认值为 false - mSwipeBackHelper.setIsNavigationBarOverlap(false); - } - - /** - * 是否支持滑动返回。这里在父类中默认返回 true 来支持滑动返回,如果某个界面不想支持滑动返回则重写该方法返回 false 即可 - * - * @return - */ - @Override - public boolean isSupportSwipeBack() { - return true; - } - - /** - * 正在滑动返回 - * - * @param slideOffset 从 0 到 1 - */ - @Override - public void onSwipeBackLayoutSlide(float slideOffset) { - } - - /** - * 没达到滑动返回的阈值,取消滑动返回动作,回到默认状态 - */ - @Override - public void onSwipeBackLayoutCancel() { - } - - /** - * 滑动返回执行完毕,销毁当前 Activity - */ - @Override - public void onSwipeBackLayoutExecuted() { - mSwipeBackHelper.swipeBackward(); - } - - @Override - public void onBackPressed() { - // 正在滑动返回的时候取消返回按钮事件 - if (mSwipeBackHelper.isSliding()) { - return; - } - mSwipeBackHelper.backward(); - } - - protected void setStatusBar() { - Boolean isNightMode = (Boolean) SPUtils.getParam(this, "nightMode", new Boolean(false)); - if (isNightMode) { - StatusBarUtil.setColorForSwipeBack(this, getResources().getColor(R.color.app_color_night), 0); - } else - StatusBarUtil.setColorForSwipeBack(this, getResources().getColor(R.color.app_color), 0); - } -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/activity/BaseMvpActivity.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/activity/BaseMvpActivity.java deleted file mode 100644 index 8f8f9e8..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/activity/BaseMvpActivity.java +++ /dev/null @@ -1,40 +0,0 @@ -package com.android.learn.base.activity; - -import android.content.Context; -import android.os.Bundle; -import android.support.annotation.Nullable; - -import com.android.learn.base.mpresenter.BasePresenter; -import com.android.learn.base.utils.LanguageUtil; - - -public abstract class BaseMvpActivity< P extends BasePresenter> extends BaseActivity { - - public P mPresenter; - - @Override - protected void onCreate(@Nullable Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - mPresenter = initPresenter(); - if(mPresenter!=null) - mPresenter.attach(this); - loadData(); - } - - @Override - protected void onDestroy() { - if(mPresenter!=null) - mPresenter.dettach(); - super.onDestroy(); - } - - @Override - protected void attachBaseContext(Context newBase) { - //语言切换 - super.attachBaseContext(LanguageUtil.setLocal(newBase)); - } - //实例presenter - public abstract P initPresenter(); - //加载数据 - protected abstract void loadData(); -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/activity/BasePermisssionActivity.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/activity/BasePermisssionActivity.java deleted file mode 100644 index 9d0c0b2..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/activity/BasePermisssionActivity.java +++ /dev/null @@ -1,88 +0,0 @@ -package com.android.learn.base.activity; - -import android.app.Activity; -import android.content.Context; -import android.content.pm.PackageManager; -import android.support.annotation.NonNull; -import android.support.v4.app.ActivityCompat; -import android.support.v4.app.FragmentActivity; -import android.support.v4.content.ContextCompat; - -import com.android.learn.base.utils.PermissionUtil; - -import static com.android.learn.base.utils.PermissionUtil.PERMISSION_CODE; - - -/** - * Created by gaolei on 2018/4/26. - */ - -public class BasePermisssionActivity extends FragmentActivity { - private PermissionUtil.RequestPermissionCallBack mRequestPermissionCallBack; - - - /** - * 发起权限请求 - * - * @param context - * @param permissions - * @param callback - */ - - public void requestPermission(final Context context, - PermissionUtil.RequestPermissionCallBack callback, final String... permissions) { - this.mRequestPermissionCallBack = callback; - - //如果所有权限都已授权,则直接返回授权成功,只要有一项未授权,则发起权限请求 - boolean isAllGranted = true; - for (String permission : permissions) { - if (ContextCompat.checkSelfPermission(context, permission) == PackageManager.PERMISSION_DENIED) { - isAllGranted = false; - ActivityCompat.requestPermissions(((Activity) context), permissions, PERMISSION_CODE); - } - } - if (isAllGranted) { - mRequestPermissionCallBack.granted(); - } - } - - /** - * 权限请求结果回调 - * - * @param requestCode - * @param permissions - * @param grantResults - */ - @Override - public void onRequestPermissionsResult(int requestCode, @NonNull final String[] permissions, @NonNull int[] grantResults) { - super.onRequestPermissionsResult(requestCode, permissions, grantResults); - boolean hasAllGranted = true; - - switch (requestCode) { - case PERMISSION_CODE: { - for (int i = 0; i < grantResults.length; ++i) { - if (grantResults[i] == PackageManager.PERMISSION_DENIED) { - hasAllGranted = false; - //在用户已经拒绝授权的情况下,如果shouldShowRequestPermissionRationale返回false则 - // 可以推断出用户选择了“不在提示”选项,在这种情况下需要引导用户至设置页手动授权 - if (!ActivityCompat.shouldShowRequestPermissionRationale(this, permissions[i])) { - PermissionUtil.requestForeverDenyDialog(BasePermisssionActivity.this, permissions); - - } else { - PermissionUtil.requestDenyDialog(BasePermisssionActivity.this, permissions); - - //用户拒绝权限请求,但未选中“不再提示”选项 - } - mRequestPermissionCallBack.denied(); - } - } - if (grantResults.length > 0 && hasAllGranted) { - mRequestPermissionCallBack.granted(); - } - } - } - } - - - -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/application/CustomApplication.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/application/CustomApplication.java deleted file mode 100644 index 4ad8d35..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/application/CustomApplication.java +++ /dev/null @@ -1,142 +0,0 @@ -package com.android.learn.base.application; - -import android.app.Application; -import android.content.Context; -import android.content.res.Configuration; -import android.net.ConnectivityManager; -import android.util.TypedValue; -import android.view.LayoutInflater; - -import com.android.learn.base.utils.LanguageUtil; -import com.android.learn.base.utils.SPUtils; -import com.android.learn.base.xskin.ExtraAttrRegister; -import com.gaolei.basemodule.R; -import com.iflytek.cloud.SpeechConstant; -import com.iflytek.cloud.SpeechUtility; -import com.scwang.smartrefresh.layout.SmartRefreshLayout; -import com.scwang.smartrefresh.layout.api.DefaultRefreshFooterCreater; -import com.scwang.smartrefresh.layout.api.DefaultRefreshFooterCreator; -import com.scwang.smartrefresh.layout.api.DefaultRefreshHeaderCreater; -import com.scwang.smartrefresh.layout.api.DefaultRefreshHeaderCreator; -import com.scwang.smartrefresh.layout.api.RefreshFooter; -import com.scwang.smartrefresh.layout.api.RefreshHeader; -import com.scwang.smartrefresh.layout.api.RefreshLayout; -import com.scwang.smartrefresh.layout.footer.ClassicsFooter; -import com.scwang.smartrefresh.layout.header.ClassicsHeader; -import com.umeng.analytics.MobclickAgent; -import com.umeng.commonsdk.UMConfigure; -import com.wind.me.xskinloader.SkinInflaterFactory; -import com.wind.me.xskinloader.SkinManager; - -import cn.bingoogolapple.swipebacklayout.BGASwipeBackHelper; - - -public class CustomApplication extends Application { - public static ConnectivityManager connectivityManager; - public static Context context; - private static CustomApplication instance; - - @Override - public void onCreate() { - super.onCreate(); - connectivityManager = (ConnectivityManager) getApplicationContext() - .getSystemService(Context.CONNECTIVITY_SERVICE); - context = this; - instance = this; - // LeakCanary.install(this); - // BlockCanary.install(this, new AppContext()).start(); - - //初始化友盟 - UMConfigure.init(this, UMConfigure.DEVICE_TYPE_PHONE, ""); - //初始化换肤 - SkinInflaterFactory.setFactory(LayoutInflater.from(this)); // for skin change - SkinManager.get().init(this); - //扩展换肤属性和style中的换肤属性 - ExtraAttrRegister.init(); - //初始化讯飞语言识别 - SpeechUtility.createUtility(this, "appid=" + "5c22ed2f"); - /** - * 必须在 Application 的 onCreate 方法中执行 BGASwipeBackHelper.init 来初始化滑动返回 - * 第一个参数:应用程序上下文 - * 第二个参数:如果发现滑动返回后立即触摸界面时应用崩溃,请把该界面里比较特殊的 View 的 class 添加到该集合中,目前在库中已经添加了 WebView 和 SurfaceView - */ - // - BGASwipeBackHelper.init(this, null); - - } - - public static CustomApplication getInstance() { - return instance; - } -// public class AppContext extends BlockCanaryContext { -// private static final String TAG = "AppContext"; -// -// @Override -// public String provideQualifier() { -// String qualifier = ""; -// try { -// PackageInfo info = getApplicationContext().getPackageManager() -// .getPackageInfo(getApplicationContext().getPackageName(), 0); -// qualifier += info.versionCode + "_" + info.versionName + "_YYB"; -// } catch (PackageManager.NameNotFoundException e) { -// Log.e(TAG, "provideQualifier exception", e); -// } -// return qualifier; -// } -// -// @Override -// public int provideBlockThreshold() { -// return 1000; -// } -// -// @Override -// public boolean displayNotification() { -// return BuildConfig.DEBUG; -// } -// -// @Override -// public boolean stopWhenDebugging() { -// return false; -// } -// } - - /** - * @return 获取字体缩放比例 - */ - public float getFontScale() { - int currentIndex = (Integer) SPUtils.getParam(this, "currentIndex", 1); - return 1 + currentIndex * 0.1f; - } - - //static 代码段可以防止内存泄露 - static { - //设置全局的Header构建器 - SmartRefreshLayout.setDefaultRefreshHeaderCreator(new DefaultRefreshHeaderCreator() { - @Override - public RefreshHeader createRefreshHeader(Context context, RefreshLayout layout) { -// layout.setPrimaryColorsId(R.color.colorPrimary, android.R.color.white);//全局设置主题颜色 - ClassicsHeader header = new ClassicsHeader(context);//指定为经典Header,默认是 贝塞尔雷达Header - header.setTextSizeTitle(14);//设置标题文字大小(sp单位) - return header;//.setTimeFormat(new DynamicTimeFormat("更新于 %s")); - } - }); - //设置全局的Footer构建器 - SmartRefreshLayout.setDefaultRefreshFooterCreator(new DefaultRefreshFooterCreator() { - @Override - public RefreshFooter createRefreshFooter(Context context, RefreshLayout layout) { - ClassicsFooter footer = new ClassicsFooter(context); //指定为经典Footer,默认是 BallPulseFooter - footer.setTextSizeTitle(14);//设置标题文字大小(sp单位) - - return footer; - } - }); - } - -// @Override -// protected void attachBaseContext(Context newBase) { -// //语言切换 -// super.attachBaseContext(LanguageUtil.setLocal(newBase)); -// } - - -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/colorful/Colorful.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/colorful/Colorful.java deleted file mode 100644 index 1a3e22d..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/colorful/Colorful.java +++ /dev/null @@ -1,162 +0,0 @@ -package com.android.learn.base.colorful; - -import java.util.HashSet; -import java.util.Set; - -import android.app.Activity; -import android.content.res.Resources.Theme; -import android.support.v4.app.Fragment; -import android.view.View; -import android.widget.TextView; - -import com.android.learn.base.colorful.setter.TextColorSetter; -import com.android.learn.base.colorful.setter.ViewBackgroundColorSetter; -import com.android.learn.base.colorful.setter.ViewBackgroundDrawableSetter; -import com.android.learn.base.colorful.setter.ViewSetter; - - -/** - * 主题切换控制类 - * - * @author mrsimple - * - */ -public final class Colorful { - /** - * Colorful Builder - */ - Builder mBuilder; - - /** - * private constructor - * - * @param builder - */ - private Colorful(Builder builder) { - mBuilder = builder; - } - - /** - * 设置新的主题 - * - * @param newTheme - */ - public void setTheme(int newTheme) { - mBuilder.setTheme(newTheme); - } - - /** - * - * 构建Colorful的Builder对象 - * - * @author mrsimple - * - */ - public static class Builder { - /** - * 存储了视图和属性资源id的关系表 - */ - Set mElements = new HashSet(); - /** - * 目标Activity - */ - Activity mActivity; - - /** - * @param activity - */ - public Builder(Activity activity) { - mActivity = activity; - } - - /** - * - * @param fragment - */ - public Builder(Fragment fragment) { - mActivity = fragment.getActivity(); - } - - private View findViewById(int viewId) { - return mActivity.findViewById(viewId); - } - - /** - * 将View id与存储该view背景色的属性进行绑定 - * - * @param viewId - * 控件id - * @param colorId - * 颜色属性id - * @return - */ - public Builder backgroundColor(int viewId, int colorId) { - mElements.add(new ViewBackgroundColorSetter(findViewById(viewId), - colorId)); - return this; - } - - - public Builder backgroundDrawable(int viewId, int drawableId) { - mElements.add(new ViewBackgroundDrawableSetter( - findViewById(viewId), drawableId)); - return this; - } - - /** - * 将TextView id与存储该TextView文本颜色的属性进行绑定 - * - * @param viewId - * TextView或者TextView子类控件的id - * @param colorId - * 颜色属性id - * @return - */ - public Builder textColor(int viewId, int colorId) { - TextView textView = (TextView) findViewById(viewId); - mElements.add(new TextColorSetter(textView, colorId)); - return this; - } - - /** - * 用户手动构造并且添加Setter - * - * @param setter - * 用户自定义的Setter - * @return - */ - public Builder setter(ViewSetter setter) { - mElements.add(setter); - return this; - } - - /** - * 设置新的主题 - * - * @param newTheme - */ - protected void setTheme(int newTheme) { - mActivity.setTheme(newTheme); - makeChange(newTheme); - } - - /** - * 修改各个视图绑定的属性 - */ - private void makeChange(int themeId) { - Theme curTheme = mActivity.getTheme(); - for (ViewSetter setter : mElements) { - setter.setValue(curTheme, themeId); - } - } - - /** - * 创建Colorful对象 - * - * @return - */ - public Colorful create() { - return new Colorful(this); - } - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/colorful/setter/TextColorSetter.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/colorful/setter/TextColorSetter.java deleted file mode 100644 index 244779e..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/colorful/setter/TextColorSetter.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.android.learn.base.colorful.setter; - -import android.content.res.Resources.Theme; -import android.widget.TextView; -/** - * TextView 文本颜色Setter - * @author mrsimple - * - */ -public class TextColorSetter extends ViewSetter { - - public TextColorSetter(TextView textView, int resId) { - super(textView, resId); - } - - public TextColorSetter(int viewId, int resId) { - super(viewId, resId); - } - - @Override - public void setValue(Theme newTheme, int themeId) { - if (mView == null) { - return; - } - ((TextView) mView).setTextColor(getColor(newTheme)); - } - -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/colorful/setter/ViewBackgroundColorSetter.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/colorful/setter/ViewBackgroundColorSetter.java deleted file mode 100644 index b092335..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/colorful/setter/ViewBackgroundColorSetter.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.android.learn.base.colorful.setter; - -import android.content.res.Resources.Theme; -import android.view.View; - -/** - * View的背景色Setter - * @author mrsimple - * - */ -public class ViewBackgroundColorSetter extends ViewSetter { - - public ViewBackgroundColorSetter(View target, int resId) { - super(target, resId); - } - - public ViewBackgroundColorSetter(int viewId, int resId) { - super(viewId, resId); - } - - @Override - public void setValue(Theme newTheme, int themeId) { - if ( mView != null ) { - mView.setBackgroundColor(getColor(newTheme)); - } - } - -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/colorful/setter/ViewBackgroundDrawableSetter.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/colorful/setter/ViewBackgroundDrawableSetter.java deleted file mode 100644 index 1f284a7..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/colorful/setter/ViewBackgroundDrawableSetter.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.android.learn.base.colorful.setter; - -import android.content.res.Resources.Theme; -import android.content.res.TypedArray; -import android.graphics.drawable.Drawable; -import android.view.View; - -/** - * View的背景Drawabler Setter - * @author mrsimple - * - */ -public final class ViewBackgroundDrawableSetter extends ViewSetter { - - public ViewBackgroundDrawableSetter(View targetView, int resId) { - super(targetView, resId); - } - - - public ViewBackgroundDrawableSetter(int viewId, int resId) { - super(viewId, resId); - } - - @SuppressWarnings("deprecation") - @Override - public void setValue(Theme newTheme, int themeId) { - if ( mView == null ) { - return ; - } - TypedArray a = newTheme.obtainStyledAttributes(themeId, - new int[] { mAttrResId }); - int attributeResourceId = a.getResourceId(0, 0); - Drawable drawable = mView.getResources().getDrawable( - attributeResourceId); - a.recycle(); - mView.setBackgroundDrawable(drawable); - } - -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/colorful/setter/ViewGroupSetter.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/colorful/setter/ViewGroupSetter.java deleted file mode 100644 index de2f50a..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/colorful/setter/ViewGroupSetter.java +++ /dev/null @@ -1,193 +0,0 @@ -package com.android.learn.base.colorful.setter; - -import java.lang.reflect.Field; -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; -import java.util.HashSet; -import java.util.Set; - -import android.content.res.Resources.Theme; -import android.support.v7.widget.RecyclerView; -import android.util.Log; -import android.view.View; -import android.view.ViewGroup; -import android.widget.AbsListView; - -/** - * ViewGroup类型的Setter,用于修改ListView、RecyclerView等ViewGroup类型的Item - * View,核心思想为遍历每个Item View中的子控件,然后根据用户绑定的view - * id与属性来将View修改为当前Theme下的最新属性值,达到ViewGroup控件的换肤效果。 - * - * TODO : Color与Drawable的设计问题,是否需要修改为桥接模式 {@see ViewBackgroundColorSetter}、 - * {@see ViewBackgroundDrawableSetter} - * - * @author mrsimple - * - */ -public class ViewGroupSetter extends ViewSetter { - - /** - * ListView的子试图的Setter - */ - protected Set mItemViewSetters = new HashSet(); - - /** - * - * @param targetView - * @param resId - */ - public ViewGroupSetter(ViewGroup targetView, int resId) { - super(targetView, resId); - } - - public ViewGroupSetter(ViewGroup targetView) { - super(targetView, 0); - } - - /** - * 设置View的背景色 - * - * @param viewId - * @param colorId - * @return - */ - public ViewGroupSetter childViewBgColor(int viewId, int colorId) { - mItemViewSetters.add(new ViewBackgroundColorSetter(viewId, colorId)); - return this; - } - - /** - * 设置View的drawable背景 - * - * @param viewId - * @param drawableId - * @return - */ - public ViewGroupSetter childViewBgDrawable(int viewId, int drawableId) { - mItemViewSetters.add(new ViewBackgroundDrawableSetter(viewId, - drawableId)); - return this; - } - - /** - * 设置文本颜色,因此View的类型必须为TextView或者其子类 - * - * @param viewId - * @param colorId - * @return - */ - public ViewGroupSetter childViewTextColor(int viewId, int colorId) { - mItemViewSetters.add(new TextColorSetter(viewId, colorId)); - return this; - } - - @Override - public void setValue(Theme newTheme, int themeId) { - mView.setBackgroundColor(getColor(newTheme)); - // 清空AbsListView的元素 - clearListViewRecyclerBin(mView); - // 清空RecyclerView - clearRecyclerViewRecyclerBin(mView); - // 修改所有子元素的相关属性 - changeChildenAttrs((ViewGroup) mView, newTheme, themeId); - } - - /** - * - * @param viewId - * @return - */ - private View findViewById(View rootView, int viewId) { - View targetView = rootView.findViewById(viewId); - Log.d("", "### viewgroup find view : " + targetView); - return targetView; - } - - /** - * 修改子视图的对应属性 - * - * @param viewGroup - * @param newTheme - * @param themeId - */ - private void changeChildenAttrs(ViewGroup viewGroup, Theme newTheme, - int themeId) { - int childCount = viewGroup.getChildCount(); - for (int i = 0; i < childCount; i++) { - View childView = viewGroup.getChildAt(i); - // 深度遍历 - if (childView instanceof ViewGroup) { - changeChildenAttrs((ViewGroup) childView, newTheme, themeId); - } - - // 遍历子元素与要修改的属性,如果相同那么则修改子View的属性 - for (ViewSetter setter : mItemViewSetters) { - // 每次都要从ViewGroup中查找数据 - setter.mView = findViewById(viewGroup, setter.mViewId); - - Log.e("", "### childView : " + childView + ", id = " - + childView.getId()); - Log.e("", "### setter view : " + setter.mView + ", id = " - + setter.getViewId()); - if (childView.getId() == setter.getViewId()) { - setter.setValue(newTheme, themeId); - Log.e("", "@@@ 修改新的属性: " + childView); - } - } - } - } - - private void clearListViewRecyclerBin(View rootView) { - if (rootView instanceof AbsListView) { - try { - Field localField = AbsListView.class - .getDeclaredField("mRecycler"); - localField.setAccessible(true); - Method localMethod = Class.forName( - "android.widget.AbsListView$RecycleBin") - .getDeclaredMethod("clear", new Class[0]); - localMethod.setAccessible(true); - localMethod.invoke(localField.get(rootView), new Object[0]); - Log.e("", "### 清空AbsListView的RecycerBin "); - } catch (NoSuchFieldException e1) { - e1.printStackTrace(); - } catch (ClassNotFoundException e2) { - e2.printStackTrace(); - } catch (NoSuchMethodException e3) { - e3.printStackTrace(); - } catch (IllegalAccessException e4) { - e4.printStackTrace(); - } catch (InvocationTargetException e5) { - e5.printStackTrace(); - } - } - } - - private void clearRecyclerViewRecyclerBin(View rootView) { - if (rootView instanceof RecyclerView) { - try { - Field localField = RecyclerView.class - .getDeclaredField("mRecycler"); - localField.setAccessible(true); - Method localMethod = Class.forName( - "android.support.v7.widget.RecyclerView$Recycler") - .getDeclaredMethod("clear", new Class[0]); - localMethod.setAccessible(true); - localMethod.invoke(localField.get(rootView), new Object[0]); - Log.e("", "### 清空RecyclerView的Recycer "); - rootView.invalidate(); - } catch (NoSuchFieldException e1) { - e1.printStackTrace(); - } catch (ClassNotFoundException e2) { - e2.printStackTrace(); - } catch (NoSuchMethodException e3) { - e3.printStackTrace(); - } catch (IllegalAccessException e4) { - e4.printStackTrace(); - } catch (InvocationTargetException e5) { - e5.printStackTrace(); - } - } - } - -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/colorful/setter/ViewSetter.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/colorful/setter/ViewSetter.java deleted file mode 100644 index 15c4293..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/colorful/setter/ViewSetter.java +++ /dev/null @@ -1,70 +0,0 @@ -package com.android.learn.base.colorful.setter; - -import android.content.res.Resources.Theme; -import android.util.TypedValue; -import android.view.View; - -/** - * ViewSetter,用于通过{@see #mAttrResId} - * 设置View的某个属性值,例如背景Drawable、背景色、文本颜色等。如需修改其他属性,可以自行扩展ViewSetter. - * - * @author mrsimple - * - */ -public abstract class ViewSetter { - - /** - * 目标View - */ - protected View mView; - /** - * 目标view id,有时在初始化时还未构建该视图,比如ListView的Item View中的某个控件 - */ - protected int mViewId; - /** - * 目标View要的特定属性id - */ - protected int mAttrResId; - - public ViewSetter(View targetView, int resId) { - mView = targetView; - mAttrResId = resId; - } - - public ViewSetter(int viewId, int resId) { - mViewId = viewId; - mAttrResId = resId; - } - - /** - * - * @param newTheme - * @param themeId - */ - public abstract void setValue(Theme newTheme, int themeId); - - /** - * 获取视图的Id - * - * @return - */ - protected int getViewId() { - return mView != null ? mView.getId() : -1; - } - - protected boolean isViewNotFound() { - return mView == null; - } - - /** - * - * @param newTheme - * @param resId - * @return - */ - protected int getColor(Theme newTheme) { - TypedValue typedValue = new TypedValue(); - newTheme.resolveAttribute(mAttrResId, typedValue, true); - return typedValue.data; - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/db/DBManager.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/db/DBManager.java deleted file mode 100644 index bb08085..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/db/DBManager.java +++ /dev/null @@ -1,130 +0,0 @@ -package com.android.learn.base.db; - -import android.content.Context; -import android.database.sqlite.SQLiteDatabase; - -import com.android.learn.base.greendao.gen.DaoMaster; -import com.android.learn.base.greendao.gen.DaoSession; -import com.android.learn.base.greendao.gen.SearchRecordDao; - -import org.greenrobot.greendao.query.QueryBuilder; - -import java.util.List; - -public class DBManager { - private final static String dbName = "search_record"; - private static DBManager mInstance; - private DaoMaster.DevOpenHelper openHelper; - private Context context; - - public DBManager(Context context) { - this.context = context; - openHelper = new DaoMaster.DevOpenHelper(context, dbName, null); - } - - /** - * 获取单例引用 - * - * @param context - * @return - */ - public static DBManager getInstance(Context context) { - if (mInstance == null) { - synchronized (DBManager.class) { - if (mInstance == null) { - mInstance = new DBManager(context); - } - } - } - return mInstance; - } - /** - * 获取可写数据库 - */ - private SQLiteDatabase getWritableDatabase() { - if (openHelper == null) { - openHelper = new DaoMaster.DevOpenHelper(context, dbName, null); - } - SQLiteDatabase db = openHelper.getWritableDatabase(); - return db; - } - /** - * 获取可读数据库 - */ - private SQLiteDatabase getReadableDatabase() { - if (openHelper == null) { - openHelper = new DaoMaster.DevOpenHelper(context, dbName, null); - } - SQLiteDatabase db = openHelper.getReadableDatabase(); - return db; - } - /** - * 插入一条记录 - * - * @param searchRecord - */ - public void insertUser(SearchRecord searchRecord) { - DaoMaster daoMaster = new DaoMaster(getWritableDatabase()); - DaoSession daoSession = daoMaster.newSession(); - SearchRecordDao userDao = daoSession.getSearchRecordDao(); - userDao.insert(searchRecord); - } - - /** - * 插入用户集合 - * - * @param users - */ - public void insertUserList(List users) { - if (users == null || users.isEmpty()) { - return; - } - DaoMaster daoMaster = new DaoMaster(getWritableDatabase()); - DaoSession daoSession = daoMaster.newSession(); - SearchRecordDao userDao = daoSession.getSearchRecordDao(); - userDao.insertInTx(users); - } - /** - * 删除一条记录 - * - * @param searchRecord - */ - public void deleteUser(SearchRecord searchRecord) { - DaoMaster daoMaster = new DaoMaster(getWritableDatabase()); - DaoSession daoSession = daoMaster.newSession(); - SearchRecordDao userDao = daoSession.getSearchRecordDao(); - userDao.delete(searchRecord); - } - public void deleteAll() { - DaoMaster daoMaster = new DaoMaster(getWritableDatabase()); - DaoSession daoSession = daoMaster.newSession(); - SearchRecordDao userDao = daoSession.getSearchRecordDao(); - userDao.deleteAll(); - } - - /** - * 更新一条记录 - * - * @param searchRecord - */ - public void updateUser(SearchRecord searchRecord) { - DaoMaster daoMaster = new DaoMaster(getWritableDatabase()); - DaoSession daoSession = daoMaster.newSession(); - SearchRecordDao userDao = daoSession.getSearchRecordDao(); - userDao.update(searchRecord); - } - /** - * 查询用户列表 - */ - public List queryUserList() { - DaoMaster daoMaster = new DaoMaster(getReadableDatabase()); - DaoSession daoSession = daoMaster.newSession(); - SearchRecordDao userDao = daoSession.getSearchRecordDao(); - QueryBuilder qb = userDao.queryBuilder(); - List list = qb.list(); - return list; - } - - - -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/email/JSSEProvider.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/email/JSSEProvider.java deleted file mode 100644 index 7c76334..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/email/JSSEProvider.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.android.learn.base.email; - -import java.security.AccessController; -import java.security.Provider; - -public class JSSEProvider extends Provider { - - public JSSEProvider() { - super("HarmonyJSSE", 1.0, "Harmony JSSE Provider"); - AccessController.doPrivileged(new java.security.PrivilegedAction() { - public Void run() { - put("SSLContext.TLS", - "org.apache.harmony.xnet.provider.jsse.SSLContextImpl"); - put("Alg.Alias.SSLContext.TLSv1", "TLS"); - put("KeyManagerFactory.X509", - "org.apache.harmony.xnet.provider.jsse.KeyManagerFactoryImpl"); - put("TrustManagerFactory.X509", - "org.apache.harmony.xnet.provider.jsse.TrustManagerFactoryImpl"); - return null; - } - }); - } - -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/email/MailSender.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/email/MailSender.java deleted file mode 100644 index 1d11182..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/email/MailSender.java +++ /dev/null @@ -1,183 +0,0 @@ -package com.android.learn.base.email; - -import java.io.ByteArrayInputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; -import java.io.PrintWriter; -import java.security.Security; -import java.sql.Connection; -import java.sql.SQLException; -import java.util.Properties; - -import javax.activation.DataHandler; -import javax.activation.DataSource; -import javax.activation.FileDataSource; -import javax.mail.Authenticator; -import javax.mail.BodyPart; -import javax.mail.Message; -import javax.mail.Multipart; -import javax.mail.PasswordAuthentication; -import javax.mail.Session; -import javax.mail.Transport; -import javax.mail.internet.InternetAddress; -import javax.mail.internet.MimeBodyPart; -import javax.mail.internet.MimeMessage; -import javax.mail.internet.MimeMultipart; - -public class MailSender extends Authenticator { - - private String user; - private String password; - private Session session; - private String mailhost = "smtp.qq.com";//在这里配置你送邮件的主机地址,如qq邮箱、163邮箱等是不一样的 - private String port= "465";//在这里配置你送邮件的主机端口,如qq邮箱、163邮箱等是不一样的 - private Multipart messageMultipart; - private Properties properties; - static { - Security.addProvider(new JSSEProvider()); - } - - public MailSender(String user, String password) { - this.user = user; - this.password = password; - - properties = new Properties(); - properties.setProperty("mail.transport.protocol", "smtp"); - properties.setProperty("mail.host", mailhost); - properties.put("mail.smtp.auth", "true"); - properties.put("mail.smtp.port",port); - properties.put("mail.smtp.socketFactory.port",port); - properties.put("mail.smtp.socketFactory.class", - "javax.net.ssl.SSLSocketFactory"); - properties.put("mail.smtp.socketFactory.fallback", "false"); - properties.setProperty("mail.smtp.quitwait", "false"); - - session = Session.getDefaultInstance(properties, this); - messageMultipart=new MimeMultipart(); - } - - protected PasswordAuthentication getPasswordAuthentication() { - return new PasswordAuthentication(user, password); - } - - public synchronized void sendMail(String subject, String body, - String sender, String recipients,String attachment) throws Exception { - MimeMessage message = new MimeMessage(session); - message.setSender(new InternetAddress(sender));//閭欢鍙戜欢浜� - message.setSubject(subject);//閭欢涓婚 - //璁剧疆閭欢鍐呭 - BodyPart bodyPart=new MimeBodyPart(); - bodyPart.setText(body); - messageMultipart.addBodyPart(bodyPart); -// message.setDataHandler(handler); - - //璁剧疆閭欢闄勪欢 - if(attachment!=null){ - DataSource dataSource=new FileDataSource(attachment); - DataHandler dataHandler=new DataHandler(dataSource); - bodyPart.setDataHandler(dataHandler); - bodyPart.setFileName(attachment.substring(attachment.lastIndexOf("/")+1)); - } - message.setContent(messageMultipart); - if (recipients.indexOf(',') > 0) - //澶氫釜鑱旂郴浜� - message.setRecipients(Message.RecipientType.TO, - InternetAddress.parse(recipients)); - else - //鍗曚釜鑱旂郴浜� - message.setRecipient(Message.RecipientType.TO, new InternetAddress( - recipients)); - Transport.send(message); - } - - //缁ф壙DataSource璁剧疆瀛楃缂栫爜 - public class ByteArrayDataSource implements DataSource { - private byte[] data; - private String type; - - public ByteArrayDataSource(byte[] data, String type) { - super(); - this.data = data; - this.type = type; - } - - public ByteArrayDataSource(byte[] data) { - super(); - this.data = data; - } - - public void setType(String type) { - this.type = type; - } - - public String getContentType() { - if (type == null) - return "application/octet-stream"; - else - return type; - } - - public InputStream getInputStream() throws IOException { - return new ByteArrayInputStream(data); - } - - public String getName() { - return "ByteArrayDataSource"; - } - - public OutputStream getOutputStream() throws IOException { - throw new IOException("Not Supported"); - } - - public PrintWriter getLogWriter() throws SQLException { - // TODO Auto-generated method stub - return null; - } - - public int getLoginTimeout() throws SQLException { - // TODO Auto-generated method stub - return 0; - } - - public void setLogWriter(PrintWriter out) throws SQLException { - // TODO Auto-generated method stub - - } - - public void setLoginTimeout(int seconds) throws SQLException { - // TODO Auto-generated method stub - - } - - public boolean isWrapperFor(Class arg0) throws SQLException { - // TODO Auto-generated method stub - return false; - } - - public T unwrap(Class arg0) throws SQLException { - // TODO Auto-generated method stub - return null; - } - - public Connection getConnection() throws SQLException { - // TODO Auto-generated method stub - return null; - } - - public Connection getConnection(String theUsername, String thePassword) - throws SQLException { - // TODO Auto-generated method stub - return null; - } - } - - public String getMailhost() { - return mailhost; - } - - public void setMailhost(String mailhost) { - this.mailhost = mailhost; - properties.setProperty("mail.host", this.mailhost); - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/email/ToastUtils.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/email/ToastUtils.java deleted file mode 100644 index c774d18..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/email/ToastUtils.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.android.learn.base.email; - -import android.content.Context; -import android.os.Looper; -import android.widget.Toast; - -public class ToastUtils { - static Toast toast = null; - public static void show(Context context, String text) { - try { - if(toast!=null){ - toast.setText(text); - }else{ - toast= Toast.makeText(context, text, Toast.LENGTH_SHORT); - } - toast.show(); - } catch (Exception e) { - //解决在子线程中调用Toast的异常情况处理 - Looper.prepare(); - Toast.makeText(context, text, Toast.LENGTH_SHORT).show(); - Looper.loop(); - } - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/event/CancelCollectEvent.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/event/CancelCollectEvent.java deleted file mode 100644 index 9668f40..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/event/CancelCollectEvent.java +++ /dev/null @@ -1,11 +0,0 @@ -package com.android.learn.base.event; - -public class CancelCollectEvent { - public int id; - - public CancelCollectEvent(int id) { - this.id = id; - - } - -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/event/ChangeNightEvent.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/event/ChangeNightEvent.java deleted file mode 100644 index 9fb14b9..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/event/ChangeNightEvent.java +++ /dev/null @@ -1,5 +0,0 @@ -package com.android.learn.base.event; - -public class ChangeNightEvent { - -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/event/LoginEvent.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/event/LoginEvent.java deleted file mode 100644 index df35c53..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/event/LoginEvent.java +++ /dev/null @@ -1,5 +0,0 @@ -package com.android.learn.base.event; - -public class LoginEvent { - -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/event/LogoutEvent.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/event/LogoutEvent.java deleted file mode 100644 index af9b97d..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/event/LogoutEvent.java +++ /dev/null @@ -1,5 +0,0 @@ -package com.android.learn.base.event; - -public class LogoutEvent { - -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/event/RestartMainEvent.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/event/RestartMainEvent.java deleted file mode 100644 index 95c1d29..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/event/RestartMainEvent.java +++ /dev/null @@ -1,10 +0,0 @@ -package com.android.learn.base.event; - -import android.app.Activity; - -public class RestartMainEvent { - public Activity activity; - public RestartMainEvent(Activity activity){ - this.activity=activity; - } -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/event/UpdateDoneEvent.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/event/UpdateDoneEvent.java deleted file mode 100644 index fcdda32..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/event/UpdateDoneEvent.java +++ /dev/null @@ -1,6 +0,0 @@ -package com.android.learn.base.event; - -public class UpdateDoneEvent { - - -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/event/UpdateTodoEvent.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/event/UpdateTodoEvent.java deleted file mode 100644 index ab04c3f..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/event/UpdateTodoEvent.java +++ /dev/null @@ -1,6 +0,0 @@ -package com.android.learn.base.event; - -public class UpdateTodoEvent { - - -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/fragment/BaseFragment.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/fragment/BaseFragment.java deleted file mode 100644 index 22265bd..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/fragment/BaseFragment.java +++ /dev/null @@ -1,103 +0,0 @@ -package com.android.learn.base.fragment; - -import android.os.Bundle; -import android.support.v4.app.Fragment; -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; -import android.widget.Button; -import android.widget.FrameLayout; -import android.widget.LinearLayout; - -import com.gaolei.basemodule.R; -import com.android.learn.base.utils.NetUtils; - -import butterknife.ButterKnife; -import butterknife.Unbinder; - - - - -public abstract class BaseFragment extends Fragment implements View.OnClickListener { - private FrameLayout mLlContent; - View subFragmentView; - private Button bt_error_refresh; - public LinearLayout mErrorPageView; - private Unbinder mBinder; - - @Override - public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { - View mParentView = inflater.inflate(R.layout.fragment_base, container, false); - initBaseView(mParentView); - addContentView(inflater); - Bundle bundle = getArguments(); - if (bundle == null) { - bundle = savedInstanceState; - } - initData(bundle); - initView(mParentView); - return mParentView; - } - - /** - * 用于布局加载完毕,子Fragment可以开始初始化数据 - * - * @param bundle - */ - public abstract void initData(Bundle bundle); - public abstract void initView(View view); - - private void initBaseView(View view) { - mLlContent = view.findViewById(R.id.base_fragment_content); - mErrorPageView = view.findViewById(R.id.ll_base_error_content); - bt_error_refresh = view.findViewById(R.id.bt_error_refresh); -// if (!NetworkUtil.isNetworkAvailable(getActivity())) -// showErrorPage(true); - bt_error_refresh.setOnClickListener(this); - } - - /** - * 设置子布局layout - */ - public abstract int setContentLayout(); - - public abstract void reload(); - - /** - * 设置内容 - */ - public void addContentView(LayoutInflater inflater) { - subFragmentView = inflater.inflate(setContentLayout(), null); - mLlContent.addView(subFragmentView); - mBinder = ButterKnife.bind(this, subFragmentView); - - } - - - - /** - * 显示/隐藏 错误页面 - * - * @param isShow - */ - public void showErrorPage(boolean isShow) { - mErrorPageView.setVisibility(isShow ? View.VISIBLE : View.GONE); - } - - @Override - public void onClick(View v) { - if (v.getId() == R.id.bt_error_refresh) { - if (NetUtils.isConnected()) - mErrorPageView.setVisibility(View.GONE); - reload(); - } - } - - - public void onDestroyView() { - super.onDestroyView(); - if (mBinder != null) { - mBinder.unbind(); - } - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/fragment/BaseLazyFragment.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/fragment/BaseLazyFragment.java deleted file mode 100644 index fa010b9..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/fragment/BaseLazyFragment.java +++ /dev/null @@ -1,66 +0,0 @@ -package com.android.learn.base.fragment; - -import android.os.Bundle; -import android.support.annotation.Nullable; -import android.view.View; - - - -public abstract class BaseLazyFragment extends BaseFragment { - - //Fragment的View加载完毕的标记 - private boolean isViewCreated; - //Fragment对用户可见的标记 - private boolean isUIVisible; - - - @Override - public void onViewCreated(View view, @Nullable Bundle savedInstanceState) { - super.onViewCreated(view, savedInstanceState); - isViewCreated = true; - lazyLoad(); - } - - @Override - public void setUserVisibleHint(boolean isVisibleToUser) { - - super.setUserVisibleHint(isVisibleToUser); - //isVisibleToUser这个boolean值表示:该Fragment的UI 用户是否可见 - if (isVisibleToUser) { - isUIVisible = true; - lazyLoad(); - } else { - isUIVisible = false; - } - } - - private void lazyLoad() { - - //这里进行双重标记判断,是因为setUserVisibleHint会多次回调,并且会在onCreateView执行前回调,必须确保onCreateView加载完毕且页面可见,才加载数据 - if (isViewCreated && isUIVisible) { - - loadData(); - //数据加载完毕,恢复标记,防止重复加载 - isViewCreated = false; - isUIVisible = false; - - } - } - - - protected abstract void loadData(); - - - @Override - public void onDestroyView() { - super.onDestroyView(); - //页面销毁,恢复标记 - isViewCreated = false; - isUIVisible = false; - - } - - - /**Fragment中TextView显示的内容*/ - // protected abstract String getFragmentTextviewContent(); -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/fragment/BaseMvpFragment.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/fragment/BaseMvpFragment.java deleted file mode 100644 index f6f4056..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/fragment/BaseMvpFragment.java +++ /dev/null @@ -1,82 +0,0 @@ -package com.android.learn.base.fragment; - -import android.os.Bundle; -import android.support.annotation.Nullable; - -import com.android.learn.base.mpresenter.BasePresenter; - - -/** - * Created by gaolei on 2018/4/26. - */ - - -public abstract class BaseMvpFragment

extends BaseFragment { - - public P mPresenter; - //Fragment的View加载完毕的标记 - private boolean isViewCreated; - //Fragment对用户可见的标记 - private boolean isUIVisible; - - @Override - public void onCreate(@Nullable Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - isViewCreated = true; - - mPresenter = initPresenter(); - if (mPresenter != null) - mPresenter.attach(this); - lazyLoad(); - } - - @Override - public void onDestroy() { - if (mPresenter != null) - mPresenter.dettach(); - super.onDestroy(); - } - - //实例presenter - public abstract P initPresenter(); - - - @Override - public void setUserVisibleHint(boolean isVisibleToUser) { - - super.setUserVisibleHint(isVisibleToUser); - //isVisibleToUser这个boolean值表示:该Fragment的UI 用户是否可见 - if (isVisibleToUser) { - isUIVisible = true; - lazyLoad(); - } else { - isUIVisible = false; - } - } - - private void lazyLoad() { - - //这里进行双重标记判断,是因为setUserVisibleHint会多次回调,并且会在onCreateView执行前回调,必须确保onCreateView加载完毕且页面可见,才加载数据 - if (isViewCreated && isUIVisible) { - - loadData(); - //数据加载完毕,恢复标记,防止重复加载 - isViewCreated = false; - isUIVisible = false; - - } - } - - - protected abstract void loadData(); - - - @Override - public void onDestroyView() { - super.onDestroyView(); - //页面销毁,恢复标记 - isViewCreated = false; - isUIVisible = false; - - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/BannerListData.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/BannerListData.java deleted file mode 100644 index e920968..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/BannerListData.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.android.learn.base.mmodel; - -import java.util.List; - - -public class BannerListData extends BaseData { - -// { -// "desc":"最新项目上线啦~", "id":13, "imagePath": -// "http://www.wanandroid.com/blogimgs/5ae04af4-72b9-4696-81cb-1644cdcd2d29.jpg", "isVisible": -// 1, "order":0, "title":"最新项目上线啦~", "type":0, "url":"http://www.wanandroid.com/pindex" -// } - - - public List data; - - public class BannerData { - - public int id; - public String url; - public String imagePath; - public String title; - public String desc; - public int isVisible; - public int order; - public int type; - - } - - -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/BaseData.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/BaseData.java deleted file mode 100644 index 8b53774..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/BaseData.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.android.learn.base.mmodel; - -/** - * @author quchao - * @date 2018/2/12 - */ - -public class BaseData { - - public static final int SUCCESS = 0; - public static final int FAIL = -1; - - public int errorCode; - - public String errorMsg; - - - public int getErrorCode() { - return errorCode; - } - - public void setErrorCode(int errorCode) { - this.errorCode = errorCode; - } - - public String getErrorMsg() { - return errorMsg; - } - - public void setErrorMsg(String errorMsg) { - this.errorMsg = errorMsg; - } - - -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/BaseResponse.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/BaseResponse.java deleted file mode 100644 index 0e3e5e0..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/BaseResponse.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.android.learn.base.mmodel; - -public class BaseResponse { - - public static final int SUCCESS = 0; - public static final int FAIL = 1; - - /** - * 0:成功,1:失败 - */ - public int errorCode; - - public String errorMsg; - - public T data; - - public int getErrorCode() { - return errorCode; - } - - public void setErrorCode(int errorCode) { - this.errorCode = errorCode; - } - - public String getErrorMsg() { - return errorMsg; - } - - public void setErrorMsg(String errorMsg) { - this.errorMsg = errorMsg; - } - - public T getData() { - return data; - } - - public void setData(T data) { - this.data = data; - } - -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/FeedArticleListData.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/FeedArticleListData.java deleted file mode 100644 index f252a36..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/FeedArticleListData.java +++ /dev/null @@ -1,247 +0,0 @@ -package com.android.learn.base.mmodel; - -import java.io.Serializable; -import java.util.List; - -public class FeedArticleListData { - - public int curPage; - public List datas; - public int offset; - public boolean over; - public int pageCount; - public int size; - public int total; - - public int getCurPage() { - return curPage; - } - - public void setCurPage(int curPage) { - this.curPage = curPage; - } - - public List getDatas() { - return datas; - } - - public void setDatas(List datas) { - this.datas = datas; - } - - public int getOffset() { - return offset; - } - - public void setOffset(int offset) { - this.offset = offset; - } - - public boolean isOver() { - return over; - } - - public void setOver(boolean over) { - this.over = over; - } - - public int getPageCount() { - return pageCount; - } - - public void setPageCount(int pageCount) { - this.pageCount = pageCount; - } - - public int getSize() { - return size; - } - - public void setSize(int size) { - this.size = size; - } - - public int getTotal() { - return total; - } - - public void setTotal(int total) { - this.total = total; - } - - public class FeedArticleData implements Serializable { - - public String apkLink; - public String author; - public int chapterId; - public String chapterName; - public boolean collect=true; - public int courseId; - public String desc; - public String envelopePic; - public int id; - public String link; - public String niceDate; - public String origin; - public String projectLink; - public int superChapterId; - public String superChapterName; - public long publishTime; - public String title; - public int visible; - public int zan,originId; - - public String getApkLink() { - return apkLink; - } - - public void setApkLink(String apkLink) { - this.apkLink = apkLink; - } - - public String getAuthor() { - return author; - } - - public void setAuthor(String author) { - this.author = author; - } - - public int getChapterId() { - return chapterId; - } - - public void setChapterId(int chapterId) { - this.chapterId = chapterId; - } - - public String getChapterName() { - return chapterName; - } - - public void setChapterName(String chapterName) { - this.chapterName = chapterName; - } - - public boolean isCollect() { - return collect; - } - - public void setCollect(boolean collect) { - this.collect = collect; - } - - public int getCourseId() { - return courseId; - } - - public void setCourseId(int courseId) { - this.courseId = courseId; - } - - public String getDesc() { - return desc; - } - - public void setDesc(String desc) { - this.desc = desc; - } - - public String getEnvelopePic() { - return envelopePic; - } - - public void setEnvelopePic(String envelopePic) { - this.envelopePic = envelopePic; - } - - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public String getLink() { - return link; - } - - public void setLink(String link) { - this.link = link; - } - - public String getNiceDate() { - return niceDate; - } - - public void setNiceDate(String niceDate) { - this.niceDate = niceDate; - } - - public String getOrigin() { - return origin; - } - - public void setOrigin(String origin) { - this.origin = origin; - } - - public String getProjectLink() { - return projectLink; - } - - public void setProjectLink(String projectLink) { - this.projectLink = projectLink; - } - - public int getSuperChapterId() { - return superChapterId; - } - - public void setSuperChapterId(int superChapterId) { - this.superChapterId = superChapterId; - } - - public String getSuperChapterName() { - return superChapterName; - } - - public void setSuperChapterName(String superChapterName) { - this.superChapterName = superChapterName; - } - - public long getPublishTime() { - return publishTime; - } - - public void setPublishTime(long publishTime) { - this.publishTime = publishTime; - } - - public String getTitle() { - return title; - } - - public void setTitle(String title) { - this.title = title; - } - - public int getVisible() { - return visible; - } - - public void setVisible(int visible) { - this.visible = visible; - } - - public int getZan() { - return zan; - } - - public void setZan(int zan) { - this.zan = zan; - } - } - -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/HotKeyData.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/HotKeyData.java deleted file mode 100644 index c4fab0f..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/HotKeyData.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.android.learn.base.mmodel; - -public class HotKeyData { - - - /** - * id : 6 - * link : - * name : 面试 - * order : 1 - * visible : 1 - */ - - private int id; - private String link; - private String name; - private int order; - private int visible; - - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public String getLink() { - return link; - } - - public void setLink(String link) { - this.link = link; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public int getOrder() { - return order; - } - - public void setOrder(int order) { - this.order = order; - } - - public int getVisible() { - return visible; - } - - public void setVisible(int visible) { - this.visible = visible; - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/ProjectListData.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/ProjectListData.java deleted file mode 100644 index aaec995..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/ProjectListData.java +++ /dev/null @@ -1,289 +0,0 @@ -package com.android.learn.base.mmodel; - -import java.io.Serializable; -import java.util.List; - - -/** - * @author quchao - * @date 2018/2/24 - */ - -public class ProjectListData { - - /** - * "curPage": 1, - * "datas": [], - * "offset": 0, - * "over": true, - * "pageCount": 1, - * "size": 15, - * "total": 8 - */ - public ListData data; - - public class ListData { - public int curPage; - public List datas; - public int offset; - public boolean over; - public int pageCount; - public int size; - public int total; - public List getDatas() { - return datas; - } - - public void setDatas(List datas) { - this.datas = datas; - } -// public int getCurPage() { -// return curPage; -// } -// -// public void setCurPage(int curPage) { -// this.curPage = curPage; -// } -// -// public int getOffset() { -// return offset; -// } -// -// public void setOffset(int offset) { -// this.offset = offset; -// } -// -// public boolean isOver() { -// return over; -// } -// -// public void setOver(boolean over) { -// this.over = over; -// } -// -// public int getPageCount() { -// return pageCount; -// } -// -// public void setPageCount(int pageCount) { -// this.pageCount = pageCount; -// } -// -// public int getSize() { -// return size; -// } -// -// public void setSize(int size) { -// this.size = size; -// } -// -// public int getTotal() { -// return total; -// } -// -// public void setTotal(int total) { -// this.total = total; -// } - } - - public class ProjectData implements Serializable - { - -// { -// "apkLink": "", -// "author": "LiangLuDev", -// "chapterId": 294, -// "chapterName": "完整项目", -// "collect": false, -// "courseId": 13, -// "desc": "注册登录、用户信息、用户密码、用户图像修改、书籍分类、本地书籍扫描、书架、书籍搜索(作者名或书籍名)、书籍阅读(仅txt格式,暂不支持PDF等其他格式)、阅读字体、背景颜色、翻页效果等设置、意见反馈(反馈信息发送到我的邮箱)、应用版本更新", -// "envelopePic": "http://www.wanandroid.com/blogimgs/fab6fb8b-c3aa-495f-b6a9-c007d78751c0.gif", -// "fresh": false, -// "id": 2836, -// "link": "http://www.wanandroid.com/blog/show/2116", -// "niceDate": "2018-04-22", -// "origin": "", -// "projectLink": "https://github.com/LiangLuDev/WeYueReader", -// "publishTime": 1524376619000, -// "superChapterId": 0, -// "superChapterName": "", -// "tags": [ ], -// "title": "微Yue电子书阅读 WeYueReader", -// "type": 0, -// "visible": 1, -// "zan": 0 -//} - public String apkLink; - public String author; - public int chapterId; - public String chapterName; - public boolean collect; - public int courseId; - public String desc; - public String envelopePic; - public int id; - public String link; - public String niceDate; - public String origin; - public String projectLink; - public int superChapterId; - public String superChapterName; - public long publishTime; - public String title; - public int visible; - public int zan; - -// public String getApkLink() { -// return apkLink; -// } -// -// public void setApkLink(String apkLink) { -// this.apkLink = apkLink; -// } -// - public String getAuthor() { - return author; - } - - public void setAuthor(String author) { - this.author = author; - } - - public int getChapterId() { - return chapterId; - } -// -// public void setChapterId(int chapterId) { -// this.chapterId = chapterId; -// } -// -// public String getChapterName() { -// return chapterName; -// } -// -// public void setChapterName(String chapterName) { -// this.chapterName = chapterName; -// } -// -// public boolean isCollect() { -// return collect; -// } -// -// public void setCollect(boolean collect) { -// this.collect = collect; -// } -// -// public int getCourseId() { -// return courseId; -// } -// -// public void setCourseId(int courseId) { -// this.courseId = courseId; -// } -// - public String getDesc() { - return desc; - } - - public void setDesc(String desc) { - this.desc = desc; - } - - public String getEnvelopePic() { - return envelopePic; - } - - public void setEnvelopePic(String envelopePic) { - this.envelopePic = envelopePic; - } -// -// public int getId() { -// return id; -// } -// -// public void setId(int id) { -// this.id = id; -// } - - public String getLink() { - return link; - } - - public void setLink(String link) { - this.link = link; - } - - public String getNiceDate() { - return niceDate; - } - - public void setNiceDate(String niceDate) { - this.niceDate = niceDate; - } -// -// public String getOrigin() { -// return origin; -// } -// -// public void setOrigin(String origin) { -// this.origin = origin; -// } -// -// public String getProjectLink() { -// return projectLink; -// } -// -// public void setProjectLink(String projectLink) { -// this.projectLink = projectLink; -// } -// -// public int getSuperChapterId() { -// return superChapterId; -// } -// -// public void setSuperChapterId(int superChapterId) { -// this.superChapterId = superChapterId; -// } -// -// public String getSuperChapterName() { -// return superChapterName; -// } -// -// public void setSuperChapterName(String superChapterName) { -// this.superChapterName = superChapterName; -// } -// -// public long getPublishTime() { -// return publishTime; -// } -// -// public void setPublishTime(long publishTime) { -// this.publishTime = publishTime; -// } -// - public String getTitle() { - return title; - } - - public void setTitle(String title) { - this.title = title; - } -// -// public int getVisible() { -// return visible; -// } -// -// public void setVisible(int visible) { -// this.visible = visible; -// } -// -// public int getZan() { -// return zan; -// } -// -// public void setZan(int zan) { -// this.zan = zan; -// } - - } -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/RegisterLoginData.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/RegisterLoginData.java deleted file mode 100644 index 545aa0b..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/RegisterLoginData.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.android.learn.base.mmodel; - -import java.util.List; - -/** - * @author quchao - * @date 2018/2/26 - */ - -public class RegisterLoginData extends BaseData { - - public Data data; - - public class Data { - public String username; - public String password; - public String email, icon, token; - public int id, type; - // private List chapterTops; - public List collectIds; - - @Override - public String toString() { - return "RegisterLoginData{" + - "username='" + username + '\'' + - ", password='" + password + '\'' + - ", email='" + email + '\'' + - ", icon='" + icon + '\'' + - ", token='" + token + '\'' + - ", id=" + id + - ", type=" + type + - ", collectIds=" + collectIds + - '}'; - } - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/TodoData.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/TodoData.java deleted file mode 100644 index dc3e812..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/TodoData.java +++ /dev/null @@ -1,198 +0,0 @@ -package com.android.learn.base.mmodel; - -import java.io.Serializable; -import java.util.List; - -public class TodoData { - - - /** - * curPage : 1 - * datas : [{"completeDate":null,"completeDateStr":"","content":"圣诞节快乐","date":1545667200000,"dateStr":"2018-12-25","id":5566,"priority":0,"status":0,"title":"圣诞节","type":0,"userId":13479},{"completeDate":null,"completeDateStr":"","content":"圣诞夜快乐","date":1545580800000,"dateStr":"2018-12-24","id":5564,"priority":0,"status":0,"title":"圣诞夜","type":0,"userId":13479}] - * offset : 0 - * over : true - * pageCount : 1 - * size : 20 - * total : 2 - */ - - private int curPage; - private int offset; - private boolean over; - private int pageCount; - private int size; - private int total; - private List datas; - - public int getCurPage() { - return curPage; - } - - public void setCurPage(int curPage) { - this.curPage = curPage; - } - - public int getOffset() { - return offset; - } - - public void setOffset(int offset) { - this.offset = offset; - } - - public boolean isOver() { - return over; - } - - public void setOver(boolean over) { - this.over = over; - } - - public int getPageCount() { - return pageCount; - } - - public void setPageCount(int pageCount) { - this.pageCount = pageCount; - } - - public int getSize() { - return size; - } - - public void setSize(int size) { - this.size = size; - } - - public int getTotal() { - return total; - } - - public void setTotal(int total) { - this.total = total; - } - - public List getDatas() { - return datas; - } - - public void setDatas(List datas) { - this.datas = datas; - } - - public static class DatasBean implements Serializable{ - /** - * completeDate : null - * completeDateStr : - * content : 圣诞节快乐 - * date : 1545667200000 - * dateStr : 2018-12-25 - * id : 5566 - * priority : 0 - * status : 0 - * title : 圣诞节 - * type : 0 - * userId : 13479 - */ - - private Object completeDate; - private String completeDateStr; - private String content; - private long date; - private String dateStr; - private int id; - private int priority; - private int status; - private String title; - private int type; - private int userId; - - public Object getCompleteDate() { - return completeDate; - } - - public void setCompleteDate(Object completeDate) { - this.completeDate = completeDate; - } - - public String getCompleteDateStr() { - return completeDateStr; - } - - public void setCompleteDateStr(String completeDateStr) { - this.completeDateStr = completeDateStr; - } - - public String getContent() { - return content; - } - - public void setContent(String content) { - this.content = content; - } - - public long getDate() { - return date; - } - - public void setDate(long date) { - this.date = date; - } - - public String getDateStr() { - return dateStr; - } - - public void setDateStr(String dateStr) { - this.dateStr = dateStr; - } - - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public int getPriority() { - return priority; - } - - public void setPriority(int priority) { - this.priority = priority; - } - - public int getStatus() { - return status; - } - - public void setStatus(int status) { - this.status = status; - } - - public String getTitle() { - return title; - } - - public void setTitle(String title) { - this.title = title; - } - - public int getType() { - return type; - } - - public void setType(int type) { - this.type = type; - } - - public int getUserId() { - return userId; - } - - public void setUserId(int userId) { - this.userId = userId; - } - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/TreeBean.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/TreeBean.java deleted file mode 100644 index a3f694b..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/TreeBean.java +++ /dev/null @@ -1,158 +0,0 @@ -package com.android.learn.base.mmodel; - -import java.io.Serializable; -import java.util.List; - - -public class TreeBean implements Serializable { - - /** - * children : [{"children":[],"courseId":13,"id":60,"name":"Android Studio相关","order":1000,"parentChapterId":150,"visible":1},"..."] - * courseId : 13 - * id : 150 - * name : 开发环境 - * order : 1 - * parentChapterId : 0 - * visible : 1 - */ - - private int courseId; - private int id; - private String name; - private int order; - private int parentChapterId; - private int visible; - private List children; - - public int getCourseId() { - return courseId; - } - - public void setCourseId(int courseId) { - this.courseId = courseId; - } - - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public int getOrder() { - return order; - } - - public void setOrder(int order) { - this.order = order; - } - - public int getParentChapterId() { - return parentChapterId; - } - - public void setParentChapterId(int parentChapterId) { - this.parentChapterId = parentChapterId; - } - - public int getVisible() { - return visible; - } - - public void setVisible(int visible) { - this.visible = visible; - } - - public List getChildren() { - return children; - } - - public void setChildren(List children) { - this.children = children; - } - - public static class ChildrenBean { - /** - * children : [] - * courseId : 13 - * id : 60 - * name : Android Studio相关 - * order : 1000 - * parentChapterId : 150 - * visible : 1 - */ - - private int courseId; - private int id; - private String name; - private int order; - private int parentChapterId; - private int visible; - private List children; - - public int getCourseId() { - return courseId; - } - - public void setCourseId(int courseId) { - this.courseId = courseId; - } - - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public int getOrder() { - return order; - } - - public void setOrder(int order) { - this.order = order; - } - - public int getParentChapterId() { - return parentChapterId; - } - - public void setParentChapterId(int parentChapterId) { - this.parentChapterId = parentChapterId; - } - - public int getVisible() { - return visible; - } - - public void setVisible(int visible) { - this.visible = visible; - } - - public List getChildren() { - return children; - } - - public void setChildren(List children) { - this.children = children; - } - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/WxArticle.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/WxArticle.java deleted file mode 100644 index 298592d..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mmodel/WxArticle.java +++ /dev/null @@ -1,98 +0,0 @@ -package com.android.learn.base.mmodel; - -import com.google.gson.Gson; - -import java.util.List; - -public class WxArticle { - - - /** - * children : [] - * courseId : 13 - * id : 408 - * name : 鸿洋 - * order : 190000 - * parentChapterId : 407 - * userControlSetTop : false - * visible : 1 - */ - - private int courseId; - private int id; - private String name; - private int order; - private int parentChapterId; - private boolean userControlSetTop; - private int visible; - private List children; - - public static WxArticle objectFromData(String str) { - - return new Gson().fromJson(str, WxArticle.class); - } - - public int getCourseId() { - return courseId; - } - - public void setCourseId(int courseId) { - this.courseId = courseId; - } - - public int getId() { - return id; - } - - public void setId(int id) { - this.id = id; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public int getOrder() { - return order; - } - - public void setOrder(int order) { - this.order = order; - } - - public int getParentChapterId() { - return parentChapterId; - } - - public void setParentChapterId(int parentChapterId) { - this.parentChapterId = parentChapterId; - } - - public boolean isUserControlSetTop() { - return userControlSetTop; - } - - public void setUserControlSetTop(boolean userControlSetTop) { - this.userControlSetTop = userControlSetTop; - } - - public int getVisible() { - return visible; - } - - public void setVisible(int visible) { - this.visible = visible; - } - - public List getChildren() { - return children; - } - - public void setChildren(List children) { - this.children = children; - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mpresenter/BasePresenter.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mpresenter/BasePresenter.java deleted file mode 100644 index ae0718e..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mpresenter/BasePresenter.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.android.learn.base.mpresenter; - -import com.android.learn.base.thirdframe.retrofit.ApiService; -import com.android.learn.base.thirdframe.retrofit.RetrofitProvider; -import com.android.learn.base.thirdframe.rxjava.BaseObserver; -import io.reactivex.Observable; -import io.reactivex.android.schedulers.AndroidSchedulers; -import io.reactivex.disposables.CompositeDisposable; -import io.reactivex.schedulers.Schedulers; - -public abstract class BasePresenter { - - public V mView; -// public Observable observable; - public ApiService mRestService = RetrofitProvider.getInstance().builder().getApiService(); - CompositeDisposable mCompositeDisposable ; - - /** - * 绑定View - * - * @param view - */ - public void attach(V view) { - this.mView = view; - if (mCompositeDisposable == null) { - mCompositeDisposable = new CompositeDisposable(); - } - } - - /** - * 释放View - */ - public void dettach() { - this.mView = null; - if (mCompositeDisposable != null) { - mCompositeDisposable.clear(); - } - } - - public void addSubscribe( Observable observable,BaseObserver observer){ - mCompositeDisposable.add(observer); - observable.subscribeOn(Schedulers.io()) - .unsubscribeOn(Schedulers.io()) - .observeOn(AndroidSchedulers.mainThread()) - .subscribe(observer); - } -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mview/BaseView.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mview/BaseView.java deleted file mode 100644 index c04a9ad..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/mview/BaseView.java +++ /dev/null @@ -1,8 +0,0 @@ -package com.android.learn.base.mview; - -public interface BaseView { - - void showLoading(); - void hideLoading(); - void showErrorMsg(String errorMsg); -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/glide/ImageLoader.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/glide/ImageLoader.java deleted file mode 100644 index 5974beb..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/glide/ImageLoader.java +++ /dev/null @@ -1,43 +0,0 @@ -package com.android.learn.base.thirdframe.glide; - -import android.content.Context; -import android.widget.ImageView; - -import com.bumptech.glide.Glide; -import com.bumptech.glide.load.engine.DiskCacheStrategy; -import com.bumptech.glide.load.resource.drawable.DrawableTransitionOptions; -import com.bumptech.glide.request.RequestOptions; - - -public class ImageLoader { - public static ImageLoader instance; - public static RequestOptions options; - - private ImageLoader() { - } - - public static ImageLoader getInstance() { - if (instance == null) { - instance = new ImageLoader(); - options = new RequestOptions() -// .placeholder(R.drawable.ic_launcher)// 正在加载中的图片 -// .error(R.drawable.video_error) // 加载失败的图片 - .diskCacheStrategy(DiskCacheStrategy.ALL); // 磁盘缓存策略 - - } - return instance; - } - - /** - * 使用Glide加载圆形ImageView(如头像)时,不要使用占位图 - * - * @param context context - * @param url image url - * @param iv imageView - */ - public void load(Context context, String url, ImageView iv) { - - Glide.with(context).load(url).apply(options).transition(new DrawableTransitionOptions().crossFade(500)) - .into(iv); - } -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/glide/MyAppGlideModule.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/glide/MyAppGlideModule.java deleted file mode 100644 index 95c667d..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/glide/MyAppGlideModule.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.android.learn.base.thirdframe.glide; - -import android.content.Context; -import android.os.Environment; -import android.support.annotation.NonNull; - -import com.bumptech.glide.Glide; -import com.bumptech.glide.GlideBuilder; -import com.bumptech.glide.Registry; -import com.bumptech.glide.annotation.GlideModule; -import com.bumptech.glide.load.engine.bitmap_recycle.LruBitmapPool; -import com.bumptech.glide.load.engine.cache.DiskLruCacheFactory; -import com.bumptech.glide.load.engine.cache.LruResourceCache; -import com.bumptech.glide.module.AppGlideModule; -import com.android.learn.base.application.CustomApplication; - -@GlideModule -public final class MyAppGlideModule extends AppGlideModule { - - public static String glideCachePath; - @Override - public boolean isManifestParsingEnabled() { -// return super.isManifestParsingEnabled(); - return false; - } - - @Override - public void applyOptions(@NonNull Context context, @NonNull GlideBuilder builder) { - int diskCacheSizeBytes = 1024 * 1024 * 100; // 50 MB - glideCachePath= CustomApplication.context.getExternalFilesDir("glide_cache").getAbsolutePath(); - builder.setDiskCache( - new DiskLruCacheFactory( glideCachePath, diskCacheSizeBytes ) - ); - int maxMemory = (int) Runtime.getRuntime().maxMemory();//获取系统分配给应用的总内存大小 - int memoryCacheSize = maxMemory / 8;//设置图片内存缓存占用八分之一 - //设置内存缓存大小 - builder.setMemoryCache(new LruResourceCache(memoryCacheSize)); - //设置BitmapPool缓存内存大小 - builder.setBitmapPool(new LruBitmapPool(memoryCacheSize)); - - } - private String getStorageDirectory(Context context){ - return Environment.getExternalStorageDirectory().getPath()+"/"+context.getPackageName(); - } - @Override - public void registerComponents(@NonNull Context context, @NonNull Glide glide, @NonNull Registry registry) { - super.registerComponents(context, glide, registry); - } -} - diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/ApiService.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/ApiService.java deleted file mode 100644 index fd8533f..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/ApiService.java +++ /dev/null @@ -1,101 +0,0 @@ -package com.android.learn.base.thirdframe.retrofit; - - -import com.android.learn.base.mmodel.BannerListData; -import com.android.learn.base.mmodel.BaseData; -import com.android.learn.base.mmodel.BaseResponse; -import com.android.learn.base.mmodel.FeedArticleListData; -import com.android.learn.base.mmodel.HotKeyData; -import com.android.learn.base.mmodel.RegisterLoginData; -import com.android.learn.base.mmodel.ProjectListData; -import com.android.learn.base.mmodel.TodoData; -import com.android.learn.base.mmodel.TreeBean; -import com.android.learn.base.mmodel.WxArticle; - -import java.util.List; -import java.util.Map; - -import io.reactivex.Observable; -import retrofit2.http.Field; -import retrofit2.http.FormUrlEncoded; -import retrofit2.http.GET; -import retrofit2.http.POST; -import retrofit2.http.Path; -import retrofit2.http.Query; -import retrofit2.http.QueryMap; - - -public interface ApiService { - - - @GET("project/list/{page}/json") - Observable getProjectListData(@Path("page") int page, @Query("cid") int cid); - - @GET("banner/json") - Observable getBannerListData(); - - @GET("article/list/{num}/json") - Observable> getFeedArticleList(@Path("num") int num); - - @GET("article/list/{num}/json") - Observable> getKnowledgeArticleList(@Path("num") int num, @Query("cid") int cid); - - @POST("user/login") - @FormUrlEncoded - Observable login(@Field("username") String username, @Field("password") String password); - - @GET("user/logout/json") - Observable logout(); - - @POST("user/register") - @FormUrlEncoded - Observable register(@Field("username") String username, @Field("password") String password, @Field("repassword") String repassword); - - @POST("lg/collect/{id}/json") - Observable addCollectArticle(@Path("id") int id); - - @GET("lg/collect/list/{page}/json") - Observable> getCollectList(@Path("page") int page); - - @POST("lg/uncollect_originId/{id}/json") - @FormUrlEncoded - Observable cancelCollectArticle(@Path("id") int id, @Field("originId") int originId); - - @GET("tree/json") - Observable>> getKnowledgeTree(); - - @GET("hotkey/json") - Observable>> getHotKey(); - - @GET("wxarticle/chapters/json") - Observable>> getWxArticle(); - - @GET("wxarticle/list/{id}/{num}/json") - Observable> getWxArtileById(@Path("id") int id, @Path("num") int num); - - @POST("article/query/{num}/json") - @FormUrlEncoded - Observable> search(@Path("num") int num, @Field("k") String key); - - @GET("lg/todo/list/{type}/json") - Observable> getTodoList(@Path("type") int type); - - @POST("lg/todo/listnotdo/{type}/json/{page}") - Observable> getListNotDone(@Path("type") int type, @Path("page") int page); - - @POST("lg/todo/listdone/{type}/json/{page}") - Observable> getListDone(@Path("type") int type, @Path("page") int page); - - @POST("lg/todo/add/json") - Observable addTodo(@QueryMap Map map); - - @POST("lg/todo/update/{id}/json") - Observable updateTodo(@Path("id") int id, @QueryMap Map map); - - @POST("lg/todo/delete/{id}/json") - Observable deleteTodo(@Path("id") int id); - - //status: 0或1,传1代表未完成到已完成,反之则反之。 - @POST("lg/todo/done/{id}/json") - Observable updateTodoStatus(@Path("id") int id, @Query("status") int status); -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/CustomizeGsonConverterFactory.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/CustomizeGsonConverterFactory.java deleted file mode 100644 index 6d0131c..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/CustomizeGsonConverterFactory.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.android.learn.base.thirdframe.retrofit; - -import com.google.gson.Gson; -import com.google.gson.TypeAdapter; -import com.google.gson.reflect.TypeToken; - -import java.lang.annotation.Annotation; -import java.lang.reflect.Type; - -import okhttp3.RequestBody; -import okhttp3.ResponseBody; -import retrofit2.Converter; -import retrofit2.Retrofit; - -/** - * @author lqx - * 自定义GsonConverterFactory - */ -public class CustomizeGsonConverterFactory extends Converter.Factory { - public static CustomizeGsonConverterFactory create() { - return create(new Gson()); - } - - public static CustomizeGsonConverterFactory create(Gson gson) { - return new CustomizeGsonConverterFactory(gson); - } - - private final Gson gson; - - private CustomizeGsonConverterFactory(Gson gson) { - if (gson == null) { - throw new NullPointerException("gson == null"); - } - this.gson = gson; - } - - @Override - public Converter responseBodyConverter(Type type, Annotation[] annotations, - Retrofit retrofit) { - TypeAdapter adapter = gson.getAdapter(TypeToken.get(type)); - return new CustomizeGsonResponseBodyConverter<>(gson, adapter); - } - - @Override - public Converter requestBodyConverter(Type type, Annotation[] parameterAnnotations, Annotation[] methodAnnotations, Retrofit retrofit) { - TypeAdapter adapter = gson.getAdapter(TypeToken.get(type)); - return new CustomizeGsonRequestBodyConverter<>(gson, adapter); - } - -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/CustomizeGsonRequestBodyConverter.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/CustomizeGsonRequestBodyConverter.java deleted file mode 100644 index 6e8170d..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/CustomizeGsonRequestBodyConverter.java +++ /dev/null @@ -1,43 +0,0 @@ -package com.android.learn.base.thirdframe.retrofit; - -import com.google.gson.Gson; -import com.google.gson.TypeAdapter; -import com.google.gson.stream.JsonWriter; - -import java.io.IOException; -import java.io.OutputStreamWriter; -import java.io.Writer; -import java.nio.charset.Charset; - -import okhttp3.MediaType; -import okhttp3.RequestBody; -import okio.Buffer; -import retrofit2.Converter; - -/** - * @param - * @author lqx - */ -public class CustomizeGsonRequestBodyConverter implements Converter { - - private static final MediaType MEDIA_TYPE = MediaType.parse("application/json; charset=UTF-8"); - private static final Charset UTF_8 = Charset.forName("UTF-8"); - - private final Gson gson; - private final TypeAdapter adapter; - - CustomizeGsonRequestBodyConverter(Gson gson, TypeAdapter adapter) { - this.gson = gson; - this.adapter = adapter; - } - - @Override - public RequestBody convert(T value) throws IOException { - Buffer buffer = new Buffer(); - Writer writer = new OutputStreamWriter(buffer.outputStream(), UTF_8); - JsonWriter jsonWriter = gson.newJsonWriter(writer); - adapter.write(jsonWriter, value); - jsonWriter.close(); - return RequestBody.create(MEDIA_TYPE, buffer.readByteString()); - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/CustomizeGsonResponseBodyConverter.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/CustomizeGsonResponseBodyConverter.java deleted file mode 100644 index 92dce17..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/CustomizeGsonResponseBodyConverter.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.android.learn.base.thirdframe.retrofit; - -import com.android.learn.base.utils.LogUtil; -import com.google.gson.Gson; -import com.google.gson.TypeAdapter; - -import org.json.JSONObject; - -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; - -import okhttp3.ResponseBody; -import retrofit2.Converter; - -/** - * @param - * @author lqx - */ -public class CustomizeGsonResponseBodyConverter implements Converter { - - private final Gson gson; - private final TypeAdapter adapter; - String TAG="CustomizeGsonResponseBodyConverter"; - - CustomizeGsonResponseBodyConverter(Gson gson, TypeAdapter adapter) { - this.gson = gson; - this.adapter = adapter; - } - - @Override - public T convert(ResponseBody value) throws IOException { - - String responseBodyStr = value.string(); - LogUtil.d(TAG,"responseBodyStr---------------"+responseBodyStr); - - - return adapter.fromJson(responseBodyStr); - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/RetrofitDynamicProvider.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/RetrofitDynamicProvider.java deleted file mode 100644 index 20a5d7f..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/RetrofitDynamicProvider.java +++ /dev/null @@ -1,83 +0,0 @@ -package com.android.learn.base.thirdframe.retrofit; - - -import com.android.learn.base.application.CustomApplication; -import com.android.learn.base.thirdframe.retrofit.interceptor.DefaultHeaderInterceptor; -import com.android.learn.base.thirdframe.retrofit.interceptor.HttpLoggingInterceptor; -import com.franmontiel.persistentcookiejar.PersistentCookieJar; -import com.franmontiel.persistentcookiejar.cache.SetCookieCache; -import com.franmontiel.persistentcookiejar.persistence.SharedPrefsCookiePersistor; - -import java.nio.charset.Charset; -import java.util.concurrent.TimeUnit; - -import okhttp3.OkHttpClient; -import retrofit2.Retrofit; -import retrofit2.adapter.rxjava2.RxJava2CallAdapterFactory; - - -public final class RetrofitDynamicProvider { - private final Charset UTF8 = Charset.forName("UTF-8"); - private Retrofit mRetrofit; - private OkHttpClient mOkHttpClient; - private static volatile RetrofitDynamicProvider sInstance; - private ApiService restService; - public static String netCachePath; -// public final String BASE_URL = "http://www.xuetangx.com/"; - - private RetrofitDynamicProvider() { - } - - - public RetrofitDynamicProvider builder(String BASE_URL) { - netCachePath = CustomApplication.context.getExternalFilesDir("net_cache").getAbsolutePath(); - if (mOkHttpClient == null) { - mOkHttpClient = new OkHttpClient.Builder() - .addNetworkInterceptor(new HttpLoggingInterceptor()) -// .addNetworkInterceptor(new HandleGzipInterceptor()) - .addInterceptor(new DefaultHeaderInterceptor())//请求连接中添加头信息 -// .addNetworkInterceptor(new OnlineCacheInterceptor())//有网缓存拦截器 -// .addInterceptor(new OfflineCacheInterceptor())//无网缓存拦截器 -// .cache(new Cache(new File(netCachePath), 50 * 10240 * 1024))//缓存路径和空间设置 -// .addInterceptor(new RetryIntercepter(4))//重试 -// .addInterceptor(new GzipRequestInterceptor())//开启Gzip压缩 - -// .addInterceptor(new ProgressInterceptor())//请求url的进度 -// .addInterceptor(new TokenInterceptor())//token过期,自动刷新Token -// .addInterceptor(new SignInterceptor())//所有的接口,默认需要带上sign,timestamp2个参数 -// .addNetworkInterceptor(new ParamsEncryptInterceptor())//参数加密,一般针对表单中的字段和值进行加密,防止中途第三方进行窥探和篡改 - .cookieJar(new PersistentCookieJar(new SetCookieCache(), new SharedPrefsCookiePersistor(CustomApplication.context))) - .connectTimeout(30, TimeUnit.SECONDS) - .readTimeout(30, TimeUnit.SECONDS) - .writeTimeout(30, TimeUnit.SECONDS) - .build(); - - } -// if (mRetrofit == null) { - mRetrofit = new Retrofit.Builder() - .client(mOkHttpClient) - .baseUrl(BASE_URL) - .addConverterFactory(CustomizeGsonConverterFactory.create()) - .addCallAdapterFactory(RxJava2CallAdapterFactory.create()) - .build(); -// } - return sInstance; - } - - public static RetrofitDynamicProvider getInstance() { - if (sInstance == null) { - synchronized (RetrofitDynamicProvider.class) { - if (sInstance == null) { - sInstance = new RetrofitDynamicProvider(); - } - } - } - return sInstance; - } - - public T createService(Class tClass) { - return mRetrofit.create(tClass); - } - - -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/RetrofitProvider.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/RetrofitProvider.java deleted file mode 100644 index 9d6c27c..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/RetrofitProvider.java +++ /dev/null @@ -1,94 +0,0 @@ -package com.android.learn.base.thirdframe.retrofit; - - -import com.android.learn.base.application.CustomApplication; -import com.android.learn.base.thirdframe.retrofit.interceptor.HttpLoggingInterceptor; -import com.android.learn.base.thirdframe.retrofit.interceptor.OfflineCacheInterceptor; -import com.android.learn.base.thirdframe.retrofit.interceptor.OnlineCacheInterceptor; -import com.android.learn.base.thirdframe.retrofit.interceptor.RetryIntercepter; -import com.franmontiel.persistentcookiejar.PersistentCookieJar; -import com.franmontiel.persistentcookiejar.cache.SetCookieCache; -import com.franmontiel.persistentcookiejar.persistence.SharedPrefsCookiePersistor; - -import java.io.File; -import java.util.concurrent.TimeUnit; - -import okhttp3.Cache; -import okhttp3.OkHttpClient; -import retrofit2.Retrofit; -import retrofit2.adapter.rxjava2.RxJava2CallAdapterFactory; -import retrofit2.converter.gson.GsonConverterFactory; - - -public final class RetrofitProvider { - - private Retrofit mRetrofit; - private OkHttpClient mOkHttpClient; - private static volatile RetrofitProvider sInstance; - private ApiService restService; - public static String netCachePath; - public final String BASE_URL = "http://www.wanandroid.com/"; - public PersistentCookieJar persistentCookieJar; - public SharedPrefsCookiePersistor sharedPrefsCookiePersistor; - - private RetrofitProvider() { - } - - - public RetrofitProvider builder() { - netCachePath = CustomApplication.context.getExternalFilesDir("net_cache").getAbsolutePath(); - if (mOkHttpClient == null) { - sharedPrefsCookiePersistor=new SharedPrefsCookiePersistor(CustomApplication.context); - persistentCookieJar=new PersistentCookieJar(new SetCookieCache(), sharedPrefsCookiePersistor); - mOkHttpClient = new OkHttpClient.Builder() - .addNetworkInterceptor(new HttpLoggingInterceptor()) - .addNetworkInterceptor(new OnlineCacheInterceptor())//有网缓存拦截器 - .addInterceptor(new OfflineCacheInterceptor())//无网缓存拦截器 - .cache(new Cache(new File(netCachePath), 50 * 10240 * 1024))//缓存路径和空间设置 - .addInterceptor(new RetryIntercepter(4))//重试 -// .addInterceptor(new GzipRequestInterceptor())//开启Gzip压缩 - -// .addInterceptor(new DefaultHeaderInterceptor())//请求连接中添加头信息 -// .addInterceptor(new ProgressInterceptor())//请求url的进度 -// .addInterceptor(new TokenInterceptor())//token过期,自动刷新Token -// .addInterceptor(new SignInterceptor())//所有的接口,默认需要带上sign,timestamp2个参数 -// .addNetworkInterceptor(new ParamsEncryptInterceptor())//参数加密,一般针对表单中的字段和值进行加密,防止中途第三方进行窥探和篡改 - .cookieJar(persistentCookieJar) - .connectTimeout(5, TimeUnit.SECONDS) - .readTimeout(5, TimeUnit.SECONDS) - .writeTimeout(5, TimeUnit.SECONDS) - .build(); - - } - if (mRetrofit == null) { - mRetrofit = new Retrofit.Builder() - .client(mOkHttpClient) - .baseUrl(BASE_URL) - .addConverterFactory(CustomizeGsonConverterFactory.create()) - .addCallAdapterFactory(RxJava2CallAdapterFactory.create()) - .build(); - } - return sInstance; - } - - public static RetrofitProvider getInstance() { - if (sInstance == null) { - synchronized (RetrofitProvider.class) { - if (sInstance == null) { - sInstance = new RetrofitProvider(); - } - } - } - return sInstance; - } - - public T createService(Class tClass) { - return mRetrofit.create(tClass); - } - - public ApiService getApiService() { - if (restService == null) - restService = mRetrofit.create(ApiService.class); - return restService; - } -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/DefaultHeaderInterceptor.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/DefaultHeaderInterceptor.java deleted file mode 100644 index d7afc7a..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/DefaultHeaderInterceptor.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.android.learn.base.thirdframe.retrofit.interceptor; - -import java.io.IOException; - -import okhttp3.Headers; -import okhttp3.Interceptor; -import okhttp3.Request; -import okhttp3.Response; - -public class DefaultHeaderInterceptor implements Interceptor { - - @Override - public Response intercept(Chain chain) throws IOException { - Request originalrequest = chain.request();//原始request - Headers headers = new Headers.Builder() - .add("name", "jason") - .add("age", "27") - .add("token", "dfedsdfsdfffdd12dsef123sdfef1s2dfe") - .build();//构造一个Headers - Request request = originalrequest.newBuilder().headers(headers).build();//注意这行代码别写错了 - return chain.proceed(request); - } -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/GzipRequestInterceptor.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/GzipRequestInterceptor.java deleted file mode 100644 index a4d11ff..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/GzipRequestInterceptor.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.android.learn.base.thirdframe.retrofit.interceptor; /** This interceptor compresses the HTTP request body. Many webservers can't handle this! */ - -import java.io.IOException; - -import okhttp3.Interceptor; -import okhttp3.MediaType; -import okhttp3.Request; -import okhttp3.RequestBody; -import okhttp3.Response; -import okio.BufferedSink; -import okio.GzipSink; -import okio.Okio; - -/** - * 我们在向服务器提交大量数据的时候,希望对post的数据进行gzip压缩 - * 这个拦截器压缩了请求实体. 很多网络服务器无法处理它 */ -public class GzipRequestInterceptor implements Interceptor { - @Override public Response intercept(Interceptor.Chain chain) throws IOException { - Request originalRequest = chain.request(); - if (originalRequest.body() == null || originalRequest.header("Content-Encoding") != null) { - return chain.proceed(originalRequest); - } - - Request compressedRequest = originalRequest.newBuilder() - .header("Content-Encoding", "gzip") - .method(originalRequest.method(), gzip(originalRequest.body())) - .build(); - return chain.proceed(compressedRequest); - } - - private RequestBody gzip(final RequestBody body) { - return new RequestBody() { - @Override public MediaType contentType() { - return body.contentType(); - } - - @Override public long contentLength() { - return -1; // We don't know the compressed length in advance! - } - - @Override public void writeTo(BufferedSink sink) throws IOException { - BufferedSink gzipSink = Okio.buffer(new GzipSink(sink)); - body.writeTo(gzipSink); - gzipSink.close(); - } - }; - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/HttpLoggingInterceptor.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/HttpLoggingInterceptor.java deleted file mode 100644 index 71e2a0d..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/HttpLoggingInterceptor.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.android.learn.base.thirdframe.retrofit.interceptor; - -import android.util.Log; - - -import com.android.learn.base.utils.LogUtil; - -import java.io.IOException; - -import okhttp3.Interceptor; -import okhttp3.Request; -import okhttp3.Response; -import okhttp3.ResponseBody; - - -public class HttpLoggingInterceptor implements Interceptor { - public Response intercept(Interceptor.Chain chain) throws IOException { - //这个chain里面包含了request和response,所以你要什么都可以从这里拿 - Request request = chain.request(); - - long t1 = System.nanoTime();//请求发起的时间 - LogUtil.d("HttpLoggingInterceptor",String.format("发送请求 %s on %s%n%s", - request.url(), chain.connection(), request.headers())); - - Response response = chain.proceed(request); - - long t2 = System.nanoTime();//收到响应的时间 - - //这里不能直接使用response.body().string()的方式输出日志 - //因为response.body().string()之后,response中的流会被关闭,程序会报错,我们需要创建出一 - //个新的response给应用层处理 - ResponseBody responseBody = response.peekBody(1024 * 1024); - - LogUtil.d("HttpLoggingInterceptor",String.format("接收响应: [%s] %n返回json:【%s】 %.1fms%n%s", - response.request().url(), - responseBody.string(), - (t2 - t1) / 1e6d, - response.headers())); - - return response; - } -} - - diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/OfflineCacheInterceptor.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/OfflineCacheInterceptor.java deleted file mode 100644 index d5a5de4..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/OfflineCacheInterceptor.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.android.learn.base.thirdframe.retrofit.interceptor; - -import android.util.Log; - -import com.android.learn.base.application.CustomApplication; -import com.android.learn.base.utils.NetUtils; - -import java.io.IOException; - -import okhttp3.Interceptor; -import okhttp3.Request; -import okhttp3.Response; - -public class OfflineCacheInterceptor implements Interceptor { - @Override - public Response intercept(Chain chain) throws IOException { - Request request = chain.request(); - if (!NetUtils.isConnected()) { - int offlineCacheTime = Integer.MAX_VALUE;//离线的时候的缓存的过期时间 - request = request.newBuilder() -// .cacheControl(new CacheControl -// .Builder() -// .maxStale(60, TimeUnit.SECONDS) -// .onlyIfCached() -// .build() -// ) -// 两种方式结果是一样的,写法不同 - .header("Cache-Control", "public, only-if-cached, max-stale=" + offlineCacheTime) - .build(); - } - Response response = chain.proceed(request); - Log.d("gaolei","OfflineCacheInterceptor------------response.code():"+response.code()); - if (response.code() == 504) { - // 缓存已经不可使用 - } - return response; - } -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/OnlineCacheInterceptor.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/OnlineCacheInterceptor.java deleted file mode 100644 index 78b383a..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/OnlineCacheInterceptor.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.android.learn.base.thirdframe.retrofit.interceptor; - -import android.util.Log; - -import java.io.IOException; - -import okhttp3.Interceptor; -import okhttp3.Request; -import okhttp3.Response; - -public class OnlineCacheInterceptor implements Interceptor { - @Override - public Response intercept(Chain chain) throws IOException { - Request request = chain.request(); - Response response = chain.proceed(request); - int onlineCacheTime = 10;//在线的时候的缓存过期时间,如果想要不缓存,直接时间设置为0 - Response newResponse = response.newBuilder() - .header("Cache-Control", "public, max-age=" + onlineCacheTime) - .removeHeader("Pragma") - .build(); - Log.d("gaolei","OnlineCacheInterceptor------------newResponse.code():"+newResponse.code()); - - return newResponse; - } -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/ParamsEncryptInterceptor.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/ParamsEncryptInterceptor.java deleted file mode 100644 index 6655ba3..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/ParamsEncryptInterceptor.java +++ /dev/null @@ -1,100 +0,0 @@ -package com.android.learn.base.thirdframe.retrofit.interceptor; - -import android.util.Base64; -import android.util.Log; - -import java.io.IOException; -import java.security.NoSuchAlgorithmException; -import java.security.SecureRandom; -import java.security.spec.InvalidKeySpecException; - -import javax.crypto.Cipher; -import javax.crypto.KeyGenerator; -import javax.crypto.SecretKey; -import javax.crypto.spec.SecretKeySpec; - -import okhttp3.Interceptor; -import okhttp3.MediaType; -import okhttp3.Request; -import okhttp3.RequestBody; -import okhttp3.Response; -import okio.Buffer; - -public class ParamsEncryptInterceptor implements Interceptor { - - private static final String TAG = ParamsEncryptInterceptor.class.getSimpleName(); - - private static final boolean DEBUG = true; - - @Override - public Response intercept(Chain chain) throws IOException { - - - Request request = chain.request(); - try { - RequestBody oldBody = request.body(); - Buffer buffer = new Buffer(); - oldBody.writeTo(buffer); - String strOldBody = buffer.readUtf8(); - MediaType mediaType = MediaType.parse("text/plain; charset=utf-8"); - //在发动报文前,用Base64和AES对参数进行加密转码 - String strNewBody = encryptDataWithSymmetricKey(generateSymmetric(), strOldBody); - RequestBody body = RequestBody.create(mediaType, strNewBody); - request = request.newBuilder().header("Content-Type", body.contentType().toString()) - .header("Content-Length", String.valueOf(body.contentLength())).method(request.method(), body).build(); - } catch (NoSuchAlgorithmException e) { - e.printStackTrace(); - } catch (InvalidKeySpecException e) { - e.printStackTrace(); - } - return chain.proceed(request); -} - - //加密算法自己和服务端约定即可 - private static String encrypt(String str){ - //your code - return ""; - } - - //生成了对称密钥 - public static SecretKeySpec generateSymmetric() { - // Set up secret key spec for 128-bit AES encryption and decryption - SecretKeySpec sks = null; - try { - SecureRandom sr = SecureRandom.getInstance("SHA1PRNG"); - sr.setSeed("any data used as random seed".getBytes()); - KeyGenerator kg = KeyGenerator.getInstance("AES"); - kg.init(128, sr); - SecretKey secretKey=kg.generateKey(); - //在这里可以用从服务端获取到的RSA公钥对刚才随机产生的加密密钥secretKey进行加密 - sks = new SecretKeySpec(secretKey.getEncoded(), "AES"); - - System.out.println("AES KEY: " + sks); - } catch (Exception e) { - Log.e(TAG, "AES secret key spec error"); - } - return sks; - } - -//用SecretKeySpec加密数据 - private static String encryptDataWithSymmetricKey (SecretKeySpec symmKey, String data) throws IOException, NoSuchAlgorithmException, InvalidKeySpecException { - - // encryption - byte[] toBeCiphred = data.getBytes("UTF-8"); - String encryptedData = null; - - try { - Cipher c = Cipher.getInstance("AES"); - c.init(Cipher.ENCRYPT_MODE, symmKey); - byte[] encodedBytes = c.doFinal(toBeCiphred); - System.out.println("BYTE STRING (ASYMM): " + encodedBytes); - //将SecretKeySpec转换为Base64字符串格式 - encryptedData = Base64.encodeToString(encodedBytes, Base64.DEFAULT); - - } catch (Exception e) { - Log.e(TAG, "AES encryption error"); - throw new RuntimeException(e); - } - return encryptedData; - } -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/ProgressInterceptor.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/ProgressInterceptor.java deleted file mode 100644 index 3b505d6..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/ProgressInterceptor.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.android.learn.base.thirdframe.retrofit.interceptor; - -import com.android.learn.base.thirdframe.retrofit.interceptor.util.ProgressListener; -import com.android.learn.base.thirdframe.retrofit.interceptor.util.ProgressResponseBody; - -import java.io.IOException; -import java.util.HashMap; -import java.util.Map; - -import okhttp3.Interceptor; -import okhttp3.Request; -import okhttp3.Response; -import okhttp3.ResponseBody; - -/** - * @author guolin - * @since 2017/11/5 - */ -public class ProgressInterceptor implements Interceptor { - - public static final Map LISTENER_MAP = new HashMap<>(); - - public static void addListener(String url, ProgressListener listener) { - LISTENER_MAP.put(url, listener); - } - - public static void removeListener(String url) { - LISTENER_MAP.remove(url); - } - - @Override - public Response intercept(Chain chain) throws IOException { - Request request = chain.request(); - Response response = chain.proceed(request); - String url = request.url().toString(); - ResponseBody body = response.body(); - Response newResponse = response.newBuilder().body(new ProgressResponseBody(url, body)).build(); - return newResponse; - } - -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/RetryIntercepter.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/RetryIntercepter.java deleted file mode 100644 index 9f9e521..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/RetryIntercepter.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.android.learn.base.thirdframe.retrofit.interceptor; - -import java.io.IOException; - -import okhttp3.Interceptor; -import okhttp3.Request; -import okhttp3.Response; - -public class RetryIntercepter implements Interceptor { - - public int maxRetry;//最大重试次数 - private int retryNum = 0;//假如设置为3次重试的话,则最大可能请求4次(默认1次+3次重试) - - public RetryIntercepter(int maxRetry) { - this.maxRetry = maxRetry; - } - - @Override - public Response intercept(Chain chain) throws IOException { - Request request = chain.request(); - System.out.println("retryNum=" + retryNum); - Response response = chain.proceed(request); - while (!response.isSuccessful() && retryNum < maxRetry) { - retryNum++; - System.out.println("retryNum=" + retryNum); - response = chain.proceed(request); - } - return response; - } -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/SignInterceptor.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/SignInterceptor.java deleted file mode 100644 index c23cbf0..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/SignInterceptor.java +++ /dev/null @@ -1,160 +0,0 @@ -package com.android.learn.base.thirdframe.retrofit.interceptor; - -import android.content.Context; -import android.support.v4.BuildConfig; -import android.support.v4.util.ArrayMap; -import android.util.Log; -import android.util.Pair; - -import com.android.learn.base.utils.LogUtil; -import com.android.learn.base.utils.Utils; - -import org.json.JSONException; -import org.json.JSONObject; - -import java.io.IOException; -import java.nio.charset.Charset; -import java.util.ArrayList; -import java.util.Collections; -import java.util.Comparator; -import java.util.Iterator; -import java.util.List; - -import okhttp3.FormBody; -import okhttp3.Interceptor; -import okhttp3.MediaType; -import okhttp3.Request; -import okhttp3.RequestBody; -import okhttp3.Response; -import okio.Buffer; - - - -public final class SignInterceptor implements Interceptor { - - private static final String MD5KEY = "base64:FgBvWS7+m3BPRnKemuoOwXEf7kvldmM+VOmJS5Iccxs="; - private Context mContext; - - public SignInterceptor() { - } - - @Override - public Response intercept(Chain chain) throws IOException { - - Request request = chain.request(); - - //header add version - Request.Builder requestBuilder = request.newBuilder(); - requestBuilder.addHeader("version", BuildConfig.VERSION_NAME); - requestBuilder.addHeader("platform", "ANDROID"); - - if (!request.method().equals("POST")) { - return chain.proceed(request); - } - - JSONObject bodyJson = null; - List> params = new ArrayList<>(); - ArrayMap arrayMap = new ArrayMap<>(); - - FormBody body = null; - try { - body = (FormBody) request.body(); - } catch (ClassCastException c) { - } - - if (body != null) { - - int size = body.size(); - if (size > 0) { - for (int i = 0; i < size; i++) { - params.add(new Pair<>(body.name(i), body.value(i))); - } - } - } else { - RequestBody requestBody = request.body(); - - if (requestBody != null) { - Buffer buffer = new Buffer(); - requestBody.writeTo(buffer); - Charset charset = Charset.forName("UTF-8"); - MediaType contentType = requestBody.contentType(); - if (contentType != null) { - charset = contentType.charset(charset); - } - String paramsStr = buffer.readString(charset); - if (BuildConfig.DEBUG) { - Log.i("HTTP", "request = " + paramsStr); - } - - try { - bodyJson = new JSONObject(paramsStr); - } catch (JSONException e) { - LogUtil.e("JSON", "JsonObject err"); - } - - if (bodyJson != null) { - Iterator it = bodyJson.keys(); - while (it.hasNext()) { - String key = it.next(); - Object value = null; - try { - value = bodyJson.get(key); - } catch (JSONException e) { - LogUtil.e("JSON", "JsonObject get err"); - } - if (key.equals("token")) { - arrayMap.put("token", String.valueOf(value)); - arrayMap.put("timestamp", String.valueOf(System.currentTimeMillis() / 1000)); - - for (String strKey : arrayMap.keySet()) { - params.add(new Pair<>(strKey, arrayMap.get(strKey))); - } - } else { - params.add(new Pair<>(key, String.valueOf(value))); - } - - } - } - - } - } - - params.add(new Pair<>("MD5Key", MD5KEY)); - Collections.sort(params, new Comparator>() { - @Override - public int compare(Pair lhs, Pair rhs) { - return lhs.second.compareTo(rhs.second); - } - }); - - StringBuilder sb = new StringBuilder(); - for (int i = 0; i < params.size(); i++) { - sb.append(params.get(i).second); - if (i < params.size() - 1) { - sb.append(""); - } - } - - String sign = Utils.md5Encode(sb.toString()); - params.add(new Pair<>("sign", sign)); - - for (Pair pair : params) { - if ((arrayMap.containsKey(pair.first) || pair.first.equals("sign")) && bodyJson != null) { - try { - bodyJson.put(pair.first, pair.second); - } catch (JSONException e) { - LogUtil.e("JSON", "JsonObject put err"); - } - } - } - - String postBodyString = bodyJson.toString(); - request = requestBuilder - .post(RequestBody.create(MediaType.parse("application/json;charset=UTF-8"), - postBodyString)) - .build(); - - return chain.proceed(request); - } - -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/TokenInterceptor.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/TokenInterceptor.java deleted file mode 100644 index bd039f2..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/TokenInterceptor.java +++ /dev/null @@ -1,70 +0,0 @@ -package com.android.learn.base.thirdframe.retrofit.interceptor; - -import com.android.learn.base.utils.LogUtil; - -import java.io.IOException; - -import okhttp3.Interceptor; -import okhttp3.Request; -import okhttp3.Response; - -public class TokenInterceptor implements Interceptor { - - String TAG=getClass()+""; - @Override - public Response intercept(Chain chain) throws IOException { - Request request = chain.request(); - Response response = chain.proceed(request); - LogUtil.d(TAG,response.code()+""); - - if (isTokenExpired(response)) {//根据和服务端的约定判断token过期 - LogUtil.d(TAG,"静默自动刷新Token,然后重新请求数据"); - //同步请求方式,获取最新的Token - String newSession = getNewToken(); - //使用新的Token,创建新的请求 - Request newRequest = chain.request() - .newBuilder() - .header("Cookie", "JSESSIONID=" + newSession) - .build(); - //重新请求 - return chain.proceed(newRequest); - } - return response; - } - - /** - * 根据Response,判断Token是否失效 - * - * @param response - * @return - */ - private boolean isTokenExpired(Response response) { - if (response.code() == 404) { - return true; - } - return false; - } - - /** - * 同步请求方式,获取最新的Token - * - * @return - */ - private String getNewToken() throws IOException { - // 通过一个特定的接口获取新的token,此处要用到同步的retrofit请求 -// Response_Login loginInfo = CacheManager.restoreLoginInfo(BaseApplication.getContext()); -// String username = loginInfo.getUserName(); -// String password = loginInfo.getPassword(); -// -// LogUtil.print("loginInfo=" + loginInfo.toString()); -// Call call = WebHelper.getSyncInterface().synclogin(new Request_Login(username, password)); -// loginInfo = call.execute().body(); -// LogUtil.print("loginInfo=" + loginInfo.toString()); -// -// loginInfo.setPassword(password); -// CacheManager.saveLoginInfo(loginInfo); -// return loginInfo.getSession(); -// } - return ""; - } -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/UrlResetInterceptor.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/UrlResetInterceptor.java deleted file mode 100644 index 0096641..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/UrlResetInterceptor.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.android.learn.base.thirdframe.retrofit.interceptor; - -import java.io.IOException; - -import okhttp3.HttpUrl; -import okhttp3.Interceptor; -import okhttp3.Request; -import okhttp3.Response; - -/* -实际的开发过程中,我们在网络请求中会添加一些公共参数,对于一些可变的公共参数,在缓存数据和访问缓存数据的 -过程中需要删除,比如网络类型,有网络时其值为Wifi或4G等,无网络时可能为none, 这时访问缓存时就会因url不一致导致访问缓存失败 -*/ - -public class UrlResetInterceptor implements Interceptor { - @Override - public Response intercept(Chain chain) throws IOException { - - - Response response = chain.proceed(chain.request()); - HttpUrl newUrl = chain.request().url().newBuilder() - .removeAllQueryParameters("network") - .build(); // 缓存数据前删除可变的公共参数 - Request newRequest = chain.request().newBuilder() - .url(newUrl) - .build(); - return response.newBuilder() - .request(newRequest) - .removeHeader("Pragma") - .header("Cache-Control", "public, max-age=" + 1) - .build(); - - -// Request request = chain.request(); -// HttpUrl url = request.url(); -// String s = url.url().toString(); -// //———请求之前—– -// Response response = null; -// //如果Url中没有包含androidxx关键字,则修改请求链接为http://www.androidxx.cn -// if (s.contains("androidxx")) { -// request = request.newBuilder().url("http://www.androidxx.cn").build(); -// } -// response = chain.proceed(request); -// //———请求之后———— -// return response; - } -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/util/ProgressListener.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/util/ProgressListener.java deleted file mode 100644 index 5f8d468..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/util/ProgressListener.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.android.learn.base.thirdframe.retrofit.interceptor.util; - -/** - * @author guolin - * @since 2017/11/5 - */ -public interface ProgressListener { - - /** - * 当下载进度发生变化时,会回调此方法。 - * @param progress - * 当前的下载进度,参数值的范围是0-100。 - */ - void onProgress(int progress); - -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/util/ProgressResponseBody.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/util/ProgressResponseBody.java deleted file mode 100644 index d3f9b5a..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/retrofit/interceptor/util/ProgressResponseBody.java +++ /dev/null @@ -1,86 +0,0 @@ -package com.android.learn.base.thirdframe.retrofit.interceptor.util; - -import android.util.Log; - -import com.android.learn.base.thirdframe.retrofit.interceptor.ProgressInterceptor; - -import java.io.IOException; - -import okhttp3.MediaType; -import okhttp3.ResponseBody; -import okio.Buffer; -import okio.BufferedSource; -import okio.ForwardingSource; -import okio.Okio; -import okio.Source; - -/** - * @author guolin - * @since 2017/11/5 - */ -public class ProgressResponseBody extends ResponseBody { - - private static final String TAG = "ProgressResponseBody"; - - private BufferedSource bufferedSource; - - private ResponseBody responseBody; - - private ProgressListener listener; - - public ProgressResponseBody(String url, ResponseBody responseBody) { - this.responseBody = responseBody; - listener = ProgressInterceptor.LISTENER_MAP.get(url); - } - - @Override - public MediaType contentType() { - return responseBody.contentType(); - } - - @Override - public long contentLength() { - return responseBody.contentLength(); - } - - @Override - public BufferedSource source() { - if (bufferedSource == null) { - bufferedSource = Okio.buffer(new ProgressSource(responseBody.source())); - } - return bufferedSource; - } - - private class ProgressSource extends ForwardingSource { - - long totalBytesRead = 0; - - int currentProgress; - - ProgressSource(Source source) { - super(source); - } - - @Override - public long read(Buffer sink, long byteCount) throws IOException { - long bytesRead = super.read(sink, byteCount); - long fullLength = responseBody.contentLength(); - if (bytesRead == -1) { - totalBytesRead = fullLength; - } else { - totalBytesRead += bytesRead; - } - int progress = (int) (100f * totalBytesRead / fullLength); - Log.d(TAG, "download progress is " + progress); - if (listener != null && progress != currentProgress) { - listener.onProgress(progress); - } - if (listener != null && totalBytesRead == fullLength) { - listener = null; - } - currentProgress = progress; - return bytesRead; - } - } - -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/rxjava/BaseObserver.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/rxjava/BaseObserver.java deleted file mode 100644 index 3527b07..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/thirdframe/rxjava/BaseObserver.java +++ /dev/null @@ -1,72 +0,0 @@ -package com.android.learn.base.thirdframe.rxjava; - -import android.app.Activity; -import android.app.Dialog; -import android.content.Context; - -import com.android.learn.base.activity.BaseActivity; -import com.android.learn.base.application.CustomApplication; -import com.android.learn.base.mview.BaseView; -import com.android.learn.base.utils.NetUtils; -import com.android.learn.base.utils.Utils; -import com.android.learn.base.view.CustomProgressDialog; - -import java.io.IOException; - -import io.reactivex.observers.ResourceObserver; -import retrofit2.HttpException; - -public abstract class BaseObserver extends ResourceObserver { - - protected String errMsg = ""; - private boolean isCancelDialog = true; - private Context context; -// public static Dialog prgressDialog; - - protected BaseObserver(boolean isShowDialog) { - // context在CustomProgressDialog中用到 -// this.context = context; -// if (isShowDialog) { -// Activity activity=BaseActivity.context; -// CustomProgressDialog.show(activity); -// } - } - - protected BaseObserver(BaseView view, boolean isShowError) { - } - - - public void setCancelDialog(boolean cancelDialog) { - isCancelDialog = cancelDialog; - } - - @Override - - public void onNext(T t) { - - } - - @Override - public void onError(Throwable e) { - if(isCancelDialog) - CustomProgressDialog.cancel(); - if (!NetUtils.isConnected()) { - errMsg = "网络连接出错,请检查网络"; - - } else if (e instanceof HttpException) { - errMsg = "服务器访问异常(HttpException)"; - } else if (e instanceof IOException) { - errMsg = "服务器访问异常(IOException)"; - } - if (!"".equals(errMsg)) - Utils.showToast(errMsg, true); - - } - - @Override - public void onComplete() { - if(isCancelDialog) - CustomProgressDialog.cancel(); - } - -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/CrashHandler.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/CrashHandler.java deleted file mode 100644 index e4bc9c7..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/CrashHandler.java +++ /dev/null @@ -1,164 +0,0 @@ -package com.android.learn.base.utils; - -import android.app.AlarmManager; -import android.app.Dialog; -import android.app.PendingIntent; -import android.content.Context; -import android.content.DialogInterface; -import android.content.Intent; -import android.content.pm.PackageInfo; -import android.content.pm.PackageManager; -import android.os.Environment; -import android.os.Looper; -import android.support.v7.app.AlertDialog; -import android.util.Log; -import android.view.Gravity; -import android.view.WindowManager; -import android.widget.Toast; - - -import com.android.learn.base.application.CustomApplication; - -import java.io.File; -import java.io.FileOutputStream; -import java.io.PrintWriter; -import java.io.StringWriter; -import java.io.Writer; -import java.text.SimpleDateFormat; -import java.util.Date; -import java.util.LinkedHashMap; -import java.util.Map; - -public class CrashHandler implements Thread.UncaughtExceptionHandler { - /** - * 系统默认的异常处理类 - */ - private Thread.UncaughtExceptionHandler mDefaultHandler; - Context mcontext; - private static CrashHandler INSTANCE = new CrashHandler(); - String errorSavePath; - //用来存储设备信息和异常信息 - private Map infos = new LinkedHashMap(); - - public static CrashHandler getInstance() { - return INSTANCE; - } - - public void init(Context context) { - mcontext = context; - mDefaultHandler = Thread.getDefaultUncaughtExceptionHandler();// 获取默认的异常处理类 - Thread.setDefaultUncaughtExceptionHandler(this);// 设置当前处理类为默认的异常处理类 - } - - @Override - public void uncaughtException(Thread thread, Throwable ex) { - saveCrashInfoIntoSd(ex); - showToast(mcontext, "程序出错了,请先用其它功能,我们会尽快修复!"); - - try { - Thread.sleep(2000); - } catch (Exception e) { - // TODO: handle exception - } - - -// if (SPUtils.contains("currentTime")) { -// String lastTimeMillis = (String) SPUtils.get("currentTime", String.valueOf("0")); -// LogUtil.d("lastTimeMillis:" + lastTimeMillis); -// LogUtil.d("System.currentTimeMillis():" + System.currentTimeMillis()); -// LogUtil.d("priod:" + (System.currentTimeMillis() - Long.valueOf(lastTimeMillis))); -// long timeInterval = System.currentTimeMillis() - Long.valueOf(lastTimeMillis); -// if (timeInterval > 60 * 1000) { -// SPUtils.put("currentTime", String.valueOf(System.currentTimeMillis())); -// } -// } else { -// SPUtils.put("currentTime", String.valueOf(System.currentTimeMillis())); -// -// } - -// android.os.Process.killProcess(android.os.Process.myPid()); -// System.exit(0); - ExitAppUtils.getInstance().exit(); -// } - } - - private void showToast(final Context context, final String msg) { - new Thread(new Runnable() { - - @Override - public void run() { - Looper.prepare(); - Toast.makeText(context, msg, Toast.LENGTH_LONG).show(); - Looper.loop(); - } - }).start(); - } - - - // 收集设备、软件参数信息 - private void collectDeviceInfo() { - try { - PackageManager pm = CustomApplication.context.getPackageManager(); - PackageInfo pi = pm.getPackageInfo(CustomApplication.context.getPackageName(), PackageManager.GET_ACTIVITIES); - if (pi != null) { - String versionName = pi.versionName == null ? "null" : pi.versionName; - String versionCode = pi.versionCode + ""; - infos.put("systemVersion", SystemUtil.getSystemVersion()); - infos.put("deviceModel", SystemUtil.getSystemModel()); - infos.put("deviceBrand", SystemUtil.getDeviceBrand()); - infos.put("versionName", versionName); - infos.put("versionCode", versionCode); - } - } catch (PackageManager.NameNotFoundException e) { - } - - } - - // 保存错误信息到SD卡文件中 - private void saveCrashInfoIntoSd(Throwable ex) { - collectDeviceInfo(); - //创建文件夹 - errorSavePath = Environment.getExternalStorageDirectory().getPath() + "/" + mcontext.getPackageName() + "/crash"; - File dir = new File(errorSavePath); - if (!dir.exists()) dir.mkdirs(); - - SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - String time = formatter.format(new Date()); - StringBuffer sb = new StringBuffer(); - sb.append("\n" + time + "\n"); - for (Map.Entry entry : infos.entrySet()) { - String key = entry.getKey(); - String value = entry.getValue(); - sb.append(key + "=" + value + "\n"); - } - - sb.append(getCrashInfo(ex)); - - try { - //创建文件 - String fileName = "crash-" + time + ".txt"; - File file = new File(errorSavePath + "//" + fileName); - if (!file.exists()) file.createNewFile(); - - FileOutputStream fos = new FileOutputStream(file); - fos.write(sb.toString().getBytes()); - fos.close(); - } catch (Exception e) { - e.printStackTrace(); - } - } - - /** - * 得到程序崩溃的详细信息 - */ - public String getCrashInfo(Throwable ex) { - Writer result = new StringWriter(); - PrintWriter printWriter = new PrintWriter(result); - ex.setStackTrace(ex.getStackTrace()); - ex.printStackTrace(printWriter); - printWriter.close(); - return result.toString(); - } - - -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/CustomCrashHandler.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/CustomCrashHandler.java deleted file mode 100644 index 242f86b..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/CustomCrashHandler.java +++ /dev/null @@ -1,151 +0,0 @@ -package com.android.learn.base.utils; - -import android.content.Context; -import android.content.pm.PackageInfo; -import android.content.pm.PackageManager; -import android.content.pm.PackageManager.NameNotFoundException; -import android.os.Build; -import android.os.Environment; -import android.os.Looper; -import android.util.Log; -import android.widget.Toast; - -import java.io.File; -import java.io.FileOutputStream; -import java.io.PrintWriter; -import java.io.StringWriter; -import java.lang.Thread.UncaughtExceptionHandler; -import java.text.SimpleDateFormat; -import java.util.Date; -import java.util.HashMap; -import java.util.Map; -import java.util.TimeZone; - -public class CustomCrashHandler implements UncaughtExceptionHandler { - private static final String TAG = "Activity"; - private Context mContext; - private static final String SDCARD_ROOT = Environment.getExternalStorageDirectory().toString(); - private static CustomCrashHandler mInstance = new CustomCrashHandler(); - - - private CustomCrashHandler(){} - - public static CustomCrashHandler getInstance(){ - return mInstance; - } - - - @Override - public void uncaughtException(Thread thread, Throwable ex) { - savaInfoToSD(mContext, ex); - - showToast(mContext, "程序出错了,请先用其它功能,我们会尽快修复!"); - try { - thread.sleep(2000); - } catch (InterruptedException e) { - e.printStackTrace(); - } -// android.os.Process.killProcess(android.os.Process.myPid()); -// System.exit(0); - - ExitAppUtils.getInstance().exit(); - - } - - - public void init(Context context){ - mContext = context; - Thread.setDefaultUncaughtExceptionHandler(this); - } - - - private void showToast(final Context context, final String msg){ - new Thread(new Runnable() { - - @Override - public void run() { - Looper.prepare(); - Toast.makeText(context, msg, Toast.LENGTH_LONG).show(); - Looper.loop(); - } - }).start(); - } - - - private HashMap obtainSimpleInfo(Context context){ - HashMap map = new HashMap(); - PackageManager mPackageManager = context.getPackageManager(); - PackageInfo mPackageInfo = null; - try { - mPackageInfo = mPackageManager.getPackageInfo(context.getPackageName(), PackageManager.GET_ACTIVITIES); - } catch (NameNotFoundException e) { - e.printStackTrace(); - } - - map.put("versionName", mPackageInfo.versionName); - map.put("versionCode", "" + mPackageInfo.versionCode); - - map.put("MODEL", "" + Build.MODEL); - map.put("SDK_INT", "" + Build.VERSION.SDK_INT); - map.put("PRODUCT", "" + Build.PRODUCT); - - return map; - } - - - private String obtainExceptionInfo(Throwable throwable) { - StringWriter mStringWriter = new StringWriter(); - PrintWriter mPrintWriter = new PrintWriter(mStringWriter); - throwable.printStackTrace(mPrintWriter); - mPrintWriter.close(); - - Log.e(TAG, mStringWriter.toString()); - return mStringWriter.toString(); - } - - - private String savaInfoToSD(Context context, Throwable ex){ - String fileName = null; - StringBuffer sb = new StringBuffer(); - - for (Map.Entry entry : obtainSimpleInfo(context).entrySet()) { - String key = entry.getKey(); - String value = entry.getValue(); - sb.append(key).append(" = ").append(value).append("\n"); - } - - sb.append(obtainExceptionInfo(ex)); - - if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){ - File dir = new File(SDCARD_ROOT + File.separator + "crash" + File.separator); - if(! dir.exists()){ - dir.mkdir(); - } - - try{ - fileName = dir.toString() + File.separator + paserTime(System.currentTimeMillis()) + ".log"; - FileOutputStream fos = new FileOutputStream(fileName); - fos.write(sb.toString().getBytes()); - fos.flush(); - fos.close(); - }catch(Exception e){ - e.printStackTrace(); - } - - } - - return fileName; - - } - - - private String paserTime(long milliseconds) { - System.setProperty("user.timezone", "Asia/Shanghai"); - TimeZone tz = TimeZone.getTimeZone("Asia/Shanghai"); - TimeZone.setDefault(tz); - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd-HH-mm-ss"); - String times = format.format(new Date(milliseconds)); - - return times; - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/DialogUtil.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/DialogUtil.java deleted file mode 100644 index 5616e8a..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/DialogUtil.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.android.learn.base.utils; - -import android.app.Dialog; -import android.content.Context; -import android.content.DialogInterface; -import android.support.v7.app.AlertDialog; -import android.util.Log; -import android.view.WindowManager; -import android.widget.Toast; - -public class DialogUtil { - - - - -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/ErrorLogSave.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/ErrorLogSave.java deleted file mode 100644 index 7e4cc6f..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/ErrorLogSave.java +++ /dev/null @@ -1,191 +0,0 @@ - -package com.android.learn.base.utils; - -import android.content.Context; -import android.os.Environment; -import android.os.Handler; -import android.text.TextUtils; -import android.util.Log; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileNotFoundException; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.InputStreamReader; -import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Date; - -public class ErrorLogSave extends Thread { - - private static final String TAG = "ErrorLogSave"; - - Context context; - - private static final String SD_PATH = Environment.getExternalStorageDirectory() - .getAbsolutePath(); - - private static final String FILE_PATH = SD_PATH + "/xuetangx_error_log/"; - - private static String packageName; - - protected final Handler mHandler; - - public ErrorLogSave(Context context) { - this.context = context; - mHandler = new Handler(); - packageName = context.getPackageName(); - } - - - public static void onError(Context context) { - new ErrorLogSave(context).start(); - } - - /** - * 获取异常日志信息 - * - * @param paramContext - * @return - */ - private static String getExceptionLog(Context paramContext) { - String localObject = ""; - try { - String str1 = paramContext.getPackageName(); - String str2 = ""; - int i1 = 0; - int i2 = 0; - ArrayList localArrayList = new ArrayList(); - localArrayList.add("logcat"); - localArrayList.add("-d"); - localArrayList.add("-v"); - localArrayList.add("raw"); - localArrayList.add("-s"); - localArrayList.add("AndroidRuntime:E"); - localArrayList.add("-p"); - localArrayList.add(str1); - Process localProcess = Runtime.getRuntime().exec( - (String[]) localArrayList.toArray(new String[localArrayList.size()])); - BufferedReader localBufferedReader = new BufferedReader(new InputStreamReader( - localProcess.getInputStream()), 1024); - for (String str3 = localBufferedReader.readLine(); str3 != null; str3 = localBufferedReader - .readLine()) { - if (str3.indexOf("thread attach failed") < 0) { - str2 = str2 + str3 + '\n'; - } - if ((i2 == 0) && (str3.toLowerCase().indexOf("exception") >= 0)) { - i2 = 1; - } - if ((i1 != 0) || (str3.indexOf(str1) < 0)) { - continue; - } - i1 = 1; - } - if ((str2.length() > 0) && (i2 != 0) && (i1 != 0)) { - localObject = str2; - } - try { - Runtime.getRuntime().exec("logcat -c"); - } catch (Exception localException2) { - Log.e(TAG, "Failed to clear log"); - } - } catch (Exception localException1) { - Log.e(TAG, "Failed to catch error log"); - } - return localObject; - } - - /** - * 存储错误日志到sd卡
目录名称:"/sd/itotem_error_log/"
文件名称: - * packagename_tiem(YYYY_MM_DD-HH_mm_ss) - * - * @param context - * @param errorLog - */ - protected static void cacheErrorLogToSDFile(Context context, String errorLog) { - Log.e(TAG, "cache Error Log To SD File is ruuning:" + errorLog); - if (TextUtils.isEmpty(errorLog)) { - return; - } - FileOutputStream outputStream = null; - try { - long curTimeM = System.currentTimeMillis(); - if (TextUtils.isEmpty(packageName)) { - packageName = context.getPackageName(); - } - // 获取新的文件名称 - String fileName = packageName + "_" + getTime(curTimeM) + ".txt"; - Log.i(TAG, "new file is :" + fileName); - // File file = new File(FILE_PATH, fileName); - File pathFile = new File(FILE_PATH); - File file = new File(pathFile, fileName); - if (!pathFile.exists()) { - pathFile.mkdirs(); - } - if (!file.exists()) { - file.createNewFile(); - } - // 打开一个新的文件 - outputStream = new FileOutputStream(file); - outputStream.write(errorLog.getBytes()); - outputStream.close(); - - } catch (FileNotFoundException e) { - e.printStackTrace(); - return; - } catch (IOException e) { - e.printStackTrace(); - return; - } finally { - if (outputStream != null) { - try { - outputStream.close(); - } catch (IOException e) { - e.printStackTrace(); - } - outputStream = null; - } - } - } - - private static String getTime(long curTime) { - SimpleDateFormat df1 = new SimpleDateFormat("yyyy-MM-dd_HH-mm-ss"); - Date date = new Date(curTime); - return df1.format(date); - } - - - @Override - public void run() { - String str = getExceptionLog(context); - mHandler.post(new SaveErrorLog2SD(str)); - super.run(); - } - - private static final Object a = new Object();// 线程锁 - - /** - * 保存错误日志到sd卡 - * - * @author pengjun - */ - private class SaveErrorLog2SD implements Runnable { - String errorLog; - - SaveErrorLog2SD(String errorLog) { - this.errorLog = errorLog; - } - - @Override - public void run() { - // TODO 执行保存错误日志到卡 -// String deviceInfo = CollectDataManager.getDebugInfosToErrorMessage(context); -// errorLog += "\n deviceInfo:" + deviceInfo; -// cacheErrorLogToSDFile(context, errorLog); - - } - - } - -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/ExitAppUtils.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/ExitAppUtils.java deleted file mode 100644 index d41c683..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/ExitAppUtils.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.android.learn.base.utils; - -import android.app.Activity; - -import java.util.LinkedList; -import java.util.List; - -public class ExitAppUtils { - - private List mActivityList = new LinkedList(); - private static ExitAppUtils instance = new ExitAppUtils(); - - private ExitAppUtils(){}; - - public static ExitAppUtils getInstance(){ - return instance; - } - - public void addActivity(Activity activity){ - mActivityList.add(activity); - } - - public void delActivity(Activity activity){ - mActivityList.remove(activity); - } - - public void exit(){ - for(Activity activity : mActivityList){ - activity.finish(); - } - - System.exit(0); - } - - -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/JsonUtil.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/JsonUtil.java deleted file mode 100644 index 28cecea..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/JsonUtil.java +++ /dev/null @@ -1,245 +0,0 @@ -package com.android.learn.base.utils; - -import com.google.gson.Gson; -import com.google.gson.JsonArray; -import com.google.gson.JsonElement; -import com.google.gson.JsonObject; -import com.google.gson.JsonParseException; -import com.google.gson.JsonParser; -import com.google.gson.reflect.TypeToken; - -import java.lang.reflect.Type; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; -import java.util.Set; - -/** - * JSON字符换和对象间转换的工具类 - */ -public class JsonUtil { - - private static final Gson GSON = new Gson(); - - /** - * 将json字符串转换成相应的对象 - * - * @param jsonString json字符串 - * @param classOfT 对象类型的class - * @param 对象的类型 - * @return 转换后的对象 - * @throws JsonParseException if json is not a valid representation for an object of type classOfT - */ - public static T decode(String jsonString, Class classOfT) throws RuntimeException { - return GSON.fromJson(jsonString, classOfT); - } - - /** - * 将json字符串转换成相应的对象 - * - * @param jsonString json字符串 - * @param typeOfT 对象类型的type - * @param 对象的类型 - * @return 转换后的对象 - * @throws JsonParseException if json is not a valid representation for an object of type typeOfT - */ - public static T decode(String jsonString, Type typeOfT) throws RuntimeException { - return GSON.fromJson(jsonString, typeOfT); - } - - /** - * 将已经从json转换后的对象(通常是一个Map)转换成对应Bean的对象实例 - * - * @param object 一个转json换中的过程对象,通常是一个Map,若传值为null,则返回null - * @param typeOfT 要转换的对象类型的type - * @param 要转换的对象类型 - * @return 转换后的对象 - * @throws JsonParseException if object is not a valid representation for an object of type typeOfT - */ - public static T decode(Object object, Type typeOfT) throws RuntimeException { - String jsonString = GSON.toJson(object); - return GSON.fromJson(jsonString, typeOfT); - } - - /** - * 将一个JavaBean转换成json字符串 - * - * @param object 待转换的对象 - * @return json字符串 - * @throws JsonParseException if there was a problem while parsing object. - */ - public static String encode(Object object) throws RuntimeException { - return GSON.toJson(object); - } - - - /** - * 获取JsonObject - * - * @param json - * @return - */ - public static JsonObject parseJson(String json) { - JsonParser parser = new JsonParser(); - JsonObject jsonObj = parser.parse(json).getAsJsonObject(); - return jsonObj; - } - - /** - * 根据javaBean转json字符串再将字符串转Map对象 - * - * @param object - * @return - */ - public static Map javaBeanToMap(Object object) { - String strJson = encode(object); - return toMap(parseJson(strJson)); - } - - /** - * 将JSONObjec对象转换成Map-List集合 - * - * @param json - * @return - */ - public static Map toMap(JsonObject json) { - Map map = new HashMap(); - Set> entrySet = json.entrySet(); - for (Iterator> iter = entrySet.iterator(); iter.hasNext(); ) { - Map.Entry entry = iter.next(); - String key = entry.getKey(); - Object value = entry.getValue(); - if (value instanceof JsonArray) - map.put((String) key, toList((JsonArray) value)); - else if (value instanceof JsonObject) - map.put((String) key, toMap((JsonObject) value)); - else - map.put((String) key, value); - } - return map; - } - - /** - * 将JSONArray对象转换成List集合 - * - * @param json - * @return - */ - public static List toList(JsonArray json) { - List list = new ArrayList(); - for (int i = 0; i < json.size(); i++) { - Object value = json.get(i); - if (value instanceof JsonArray) { - list.add(toList((JsonArray) value)); - } else if (value instanceof JsonObject) { - list.add(toMap((JsonObject) value)); - } else { - list.add(value); - } - } - return list; - } - - /** - * Json解析公用方法 数组 - * - * @param json 解析参数 - * @param token 解析的类型 new TypeToken(){} - * ArrayList temp = ParserJson.fromJson(data, new TypeToken>(){}); - * @return - */ - public static T fromJson(JsonElement json, TypeToken token) { - try { - Gson gson = new Gson(); - return gson.fromJson(json, token.getType()); - } catch (Exception ex) { - ex.printStackTrace(); - } - return null; - } - - /** - * Json解析公用方法 数组 - * - * @param json 解析参数 - * @param type 解析的类型 new TypeToken(){}.getType() - * ArrayList temp = ParserJson.fromJson(data, new TypeToken>(){}); - * @return - */ - public static T fromJson(JsonElement json, Type type) { - try { - Gson gson = new Gson(); - return gson.fromJson(json, type); - } catch (Exception ex) { - ex.printStackTrace(); - } - return null; - } - - /** - * Json解析公用方法 单个类 - * - * @param json 解析参数 - * @param t 解析的类。 class - * @return - */ - public static T fromJson(JsonElement json, Class t) { - try { - Gson gson = new Gson(); - return gson.fromJson(json, t); - } catch (Exception ex) { - ex.printStackTrace(); - } - return null; - } - - /** - * Json解析公用方法 数组 - * - * @param json 解析参数 - * @param token 解析的类型 new TypeToken(){} - * ArrayList temp = ParserJson.fromJson(data, new TypeToken>(){}); - * @return - */ - public static T fromJson(String json, TypeToken token) { - try { - Gson gson = new Gson(); - return gson.fromJson(json, token.getType()); - } catch (Exception ex) { - ex.printStackTrace(); - } - return null; - } - - /** - * Json解析公用方法 单个类 - * - * @param json 解析参数 - * @param t 解析的类。 class - * @return - */ - public static T fromJson(String json, Class t) { - try { - Gson gson = new Gson(); - return gson.fromJson(json, t); - } catch (Exception ex) { - ex.printStackTrace(); - } - return null; - } - - /** - * 把数据转换成Json结构 - * - * @param mType Object的数据,支持所有类型 - * @return - */ - public static String toJson(Object mType) { - Gson mGson = new Gson(); - String mResult = mGson.toJson(mType); - return mResult; - } -} - diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/KeyboardUtils.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/KeyboardUtils.java deleted file mode 100644 index 0e0bc9c..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/KeyboardUtils.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.android.learn.base.utils; - -import android.content.Context; -import android.view.View; -import android.view.inputmethod.InputMethodManager; - -public class KeyboardUtils { - - public static void showKeyboard(View view) { - InputMethodManager imm = (InputMethodManager) view.getContext() - .getSystemService(Context.INPUT_METHOD_SERVICE); - if (imm != null) { - view.requestFocus(); - imm.showSoftInput(view, 0); - } - } - - public static void hideKeyboard(View view){ - InputMethodManager imm = (InputMethodManager) view.getContext() - .getSystemService(Context.INPUT_METHOD_SERVICE); - if (imm != null) { - imm.hideSoftInputFromWindow(view.getWindowToken(),0); - } - } - public static void toggleSoftInput(View view){ - InputMethodManager imm = (InputMethodManager) view.getContext() - .getSystemService(Context.INPUT_METHOD_SERVICE); - if (imm != null) { - imm.toggleSoftInput(0,0); - } - } -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/LanguageUtil.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/LanguageUtil.java deleted file mode 100644 index 3f325d5..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/LanguageUtil.java +++ /dev/null @@ -1,114 +0,0 @@ -package com.android.learn.base.utils; - -import android.content.Context; -import android.content.res.Configuration; -import android.content.res.Resources; -import android.os.Build; -import android.os.LocaleList; -import android.util.DisplayMetrics; -import android.util.Log; - - -import java.util.Locale; - -public class LanguageUtil { - - private static final String TAG = "LanguageUtil"; - - - /** - * 获取选择的语言设置 - * - * @param context - * @return - */ - public static Locale getSetLanguageLocale(Context context) { - int language = (Integer) SPUtils.getParam(context, "language", 0); - LogUtil.d(TAG, "language---------------" + language); -// LogUtil.d(TAG, "getSystemLocale(context)---------------" + getSystemLocale(context)); - switch (language) { - case 0: - return getSystemLocale(context); - case 1: - return Locale.CHINA; - case 2: - return Locale.ENGLISH; - default: - return Locale.CHINA; - } - } - - public static void saveSelectLanguage(Context context, int select) { - SPUtils.setParam(context, "language", select); - - setApplicationLanguage(context); - } - - public static Context setLocal(Context context) { - LogUtil.d(TAG, "getSetLanguageLocale---------------" + getSetLanguageLocale(context)); - return updateResources(context, getSetLanguageLocale(context)); - } - - private static Context updateResources(Context context, Locale locale) { - Locale.setDefault(locale); - - Resources res = context.getResources(); - Configuration config = new Configuration(res.getConfiguration()); - if (Build.VERSION.SDK_INT >= 17) { - config.setLocale(locale); - context = context.createConfigurationContext(config); - } else { - config.locale = locale; - res.updateConfiguration(config, res.getDisplayMetrics()); - } - return context; - } - - /** - * 我们都会在代码中调用context.getResource().getString()这句代码看起来没什么问题,但是你这个context要是用的是applicationContext那么问题就来了。 - * 你会发现当你切换语言后用这样方式设置的string没有改变,所以我们需要改动我们的代码。 - 解决方法就是,在切换语言后把application的updateConfiguration也要更新了 - */ - public static void setApplicationLanguage(Context context) { - Resources resources = context.getApplicationContext().getResources(); - DisplayMetrics dm = resources.getDisplayMetrics(); - Configuration config = resources.getConfiguration(); - Locale locale = getSetLanguageLocale(context); - config.locale = locale; - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { - LocaleList localeList = new LocaleList(locale); - LocaleList.setDefault(localeList); - config.setLocales(localeList); - context.getApplicationContext().createConfigurationContext(config); - Locale.setDefault(locale); - } - resources.updateConfiguration(config, dm); - } - - public static Locale getSystemLocale(Context context) { - Locale locale; - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { - locale = LocaleList.getDefault().get(0); - } else { - locale = Locale.getDefault(); - } - return locale; - } - -// public static void saveSystemCurrentLanguage(Context context) { -// Locale locale; -// if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { -// locale = LocaleList.getDefault().get(0); -// } else { -// locale = Locale.getDefault(); -// } -// Log.d(TAG, locale.getLanguage()); -// SPUtil.getInstance(context).setSystemCurrentLocal(locale); -// } - -// public static void onConfigurationChanged(Context context){ -//// saveSystemCurrentLanguage(context); -// setLocal(context); -// setApplicationLanguage(context); -// } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/LogUtil.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/LogUtil.java deleted file mode 100644 index 9b8477f..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/LogUtil.java +++ /dev/null @@ -1,67 +0,0 @@ -/** - * Copyright (C) 2006-2014 Tuniu All rights reserved - */ -package com.android.learn.base.utils; - -import android.util.Log; - -import com.gaolei.basemodule.BuildConfig; - - -public class LogUtil { - - private static boolean isDebug = BuildConfig.DEBUG; - private static final String TAG = "zmy"; - - public static void init(boolean isPrintable) { - isDebug = isPrintable; - } - - public static void d(String msg) { - if (!isDebug) { - return; - } - Log.e(TAG, msg); - } - - public static void v(String tag, String msg) { - if (!isDebug) { - return; - } - Log.v(tag, msg); - } - - - public static void d(String tag, String msg) { - if (!isDebug) { - return; - } - Log.d(tag, msg); - } - - - public static void i(String tag, String msg) { - if (!isDebug) { - return; - } - Log.i(tag, msg); - } - - - public static void w(String tag, String msg) { - if (!isDebug) { - return; - } - Log.w(tag, msg); - } - - - public static void e(String tag, String msg) { - if (!isDebug) { - return; - } - Log.e(tag, msg); - } - - -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/NetUtils.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/NetUtils.java deleted file mode 100644 index b4a0234..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/NetUtils.java +++ /dev/null @@ -1,76 +0,0 @@ -package com.android.learn.base.utils; - - -import android.app.Activity; -import android.content.ComponentName; -import android.content.Context; -import android.content.Intent; -import android.net.ConnectivityManager; -import android.net.NetworkInfo; - -import com.android.learn.base.application.CustomApplication; - -/** - * 跟网络相关的工具类 - * - * - * - */ -public class NetUtils -{ - private NetUtils() - { - /* cannot be instantiated */ - throw new UnsupportedOperationException("cannot be instantiated"); - } - - - public static boolean isConnected() - { - - ConnectivityManager connectivity = (ConnectivityManager) CustomApplication.context - .getSystemService(Context.CONNECTIVITY_SERVICE); - - if (null != connectivity) - { - - NetworkInfo info = connectivity.getActiveNetworkInfo(); - if (null != info && info.isConnected()) - { - if (info.getState() == NetworkInfo.State.CONNECTED) - { - return true; - } - } - } - return false; - } - - /** - * 判断是否是wifi连接 - */ - public static boolean isWifi() - { - ConnectivityManager cm = (ConnectivityManager) CustomApplication.context - .getSystemService(Context.CONNECTIVITY_SERVICE); - - if (cm == null) - return false; - return cm.getActiveNetworkInfo().getType() == ConnectivityManager.TYPE_WIFI; - - } - - /** - * 打开网络设置界面 - */ - public static void openSetting(Activity activity) - { - Intent intent = new Intent("/"); - ComponentName cm = new ComponentName("com.android.settings", - "com.android.settings.WirelessSettings"); - intent.setComponent(cm); - intent.setAction("android.intent.action.VIEW"); - activity.startActivityForResult(intent, 0); - } - -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/PermissionUtil.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/PermissionUtil.java deleted file mode 100644 index 05169ab..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/PermissionUtil.java +++ /dev/null @@ -1,130 +0,0 @@ -package com.android.learn.base.utils; - - -import android.Manifest; -import android.app.Activity; -import android.app.AlertDialog; -import android.content.DialogInterface; -import android.content.Intent; -import android.net.Uri; -import android.os.Build; -import android.support.v4.app.ActivityCompat; - -public class -PermissionUtil { - - private static String denyRequestContent = "%s权限 为必要权限,开通才可以正常使用相应功能"; - private static String foreverDenyRequestContent = "%s权限 为必要权限,开通才可以正常使用相应功能。\n \n 请点击 \"设置\"-\"权限\"-打开所需权限。"; - public static final int PERMISSION_CODE = 10001; - - public static void gotoDetailSettingIntent(Activity context) { - Intent intent = new Intent(); - intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); - if (Build.VERSION.SDK_INT >= 9) { - intent.setAction("android.settings.APPLICATION_DETAILS_SETTINGS"); - intent.setData(Uri.fromParts("package", context.getPackageName(), null)); - } else if (Build.VERSION.SDK_INT <= 8) { - intent.setAction(Intent.ACTION_VIEW); - intent.setClassName("com.android.settings", "com.android.settings.InstalledAppDetails"); - intent.putExtra("com.android.settings.ApplicationPkgName", context.getPackageName()); - } - context.startActivity(intent); - -// Intent intent = new Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS); -// Uri uri = Uri.fromParts("package", context.getPackageName(), null); -// intent.setData(uri); - } - - public static void requestDenyDialog(final Activity activity, final String... permissions) { - - String content = getContent(denyRequestContent, permissions); - - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - - builder.setTitle("权限申请") - .setMessage(content) - .setPositiveButton("申请", new DialogInterface.OnClickListener() { - public void onClick(DialogInterface dialog, int id) { - ActivityCompat.requestPermissions(activity, permissions, PERMISSION_CODE); - dialog.dismiss(); - } - }) - .setNegativeButton("取消", new DialogInterface.OnClickListener() { - public void onClick(DialogInterface dialog, int id) { - if (Utils.getTopActivity(activity).equals("MainActivity")) { - activity.finish(); - } - dialog.dismiss(); - } - }); - builder.show(); - } - - public static void requestForeverDenyDialog(final Activity activity, final String... permissions) { - - String content = getContent(foreverDenyRequestContent, permissions); - - AlertDialog.Builder builder = new AlertDialog.Builder(activity); - - builder.setTitle("权限设置") - .setMessage(content) - .setPositiveButton("设置", new DialogInterface.OnClickListener() { - public void onClick(DialogInterface dialog, int id) { - gotoDetailSettingIntent(activity); - dialog.dismiss(); - } - }) - .setNegativeButton("取消", new DialogInterface.OnClickListener() { - public void onClick(DialogInterface dialog, int id) { - - dialog.dismiss(); - } - }); - builder.show(); - } - - public static String getContent(String ifForeverDeny, String... permissions) { - String content = ""; - - if (permissions.length == 1) { - if (permissions[0].equals(Manifest.permission.CAMERA)) - content = String.format(ifForeverDeny, "相机"); - if (permissions[0].equals(Manifest.permission.WRITE_EXTERNAL_STORAGE)) - content = String.format(ifForeverDeny, "存储"); - } - if (permissions.length > 1) { - StringBuilder stringBuilder = new StringBuilder(); - int length = permissions.length; - for (int i = 0; i < length; i++) { - if (permissions[i].equals(Manifest.permission.CAMERA)) - stringBuilder = stringBuilder.append("相机"); - if (permissions[i].equals(Manifest.permission.WRITE_EXTERNAL_STORAGE)) - stringBuilder = stringBuilder.append("存储"); - if (permissions[i].equals(Manifest.permission.ACCESS_FINE_LOCATION)) - stringBuilder = stringBuilder.append("位置"); - if (permissions[i].equals(Manifest.permission.WRITE_CONTACTS)) - stringBuilder = stringBuilder.append("联系人"); - if (i < length - 1) - stringBuilder = stringBuilder.append("、"); - } - content = String.format(ifForeverDeny, stringBuilder.toString()); - } - return content; - - } - - /** - * 权限请求结果回调接口 - */ - public interface RequestPermissionCallBack { - /** - * 同意授权 - */ - public void granted(); - - /** - * 取消授权 - */ - public void denied(); - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/ResponseStatusUtil.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/ResponseStatusUtil.java deleted file mode 100644 index 9dac18c..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/ResponseStatusUtil.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.android.learn.base.utils; - -import com.android.learn.base.mmodel.BaseData; -import com.android.learn.base.mmodel.BaseResponse; - -public class ResponseStatusUtil { - - - public static void handleResponseStatus(BaseResponse baseData) { - if (baseData == null) return; - Utils.showToast(baseData.errorMsg, true); - } - public static void handleResponseStatus(BaseData baseData) { - if (baseData == null) return; - Utils.showToast(baseData.errorMsg, true); - } -} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/SPUtils.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/SPUtils.java deleted file mode 100644 index 98c6e61..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/SPUtils.java +++ /dev/null @@ -1,104 +0,0 @@ -package com.android.learn.base.utils; - -import android.content.Context; -import android.content.SharedPreferences; - - -public class SPUtils { - - /** - * 保存在手机里面的文件名 - */ - private static final String FILE_NAME = "SP_FILE"; - - - /** - * 保存数据的方法,我们需要拿到保存数据的具体类型,然后根据类型调用不同的保存方法 - * @param context - * @param key - * @param object - */ - public static void setParam(Context context , String key, Object object){ - - String type = object.getClass().getSimpleName(); - SharedPreferences sp = context.getSharedPreferences(FILE_NAME, Context.MODE_PRIVATE); - SharedPreferences.Editor editor = sp.edit(); - - if("String".equals(type)){ - editor.putString(key, (String)object); - } - else if("Integer".equals(type)){ - editor.putInt(key, (Integer)object); - } - else if("Boolean".equals(type)){ - editor.putBoolean(key, (Boolean)object); - } - else if("Float".equals(type)){ - editor.putFloat(key, (Float)object); - } - else if("Long".equals(type)){ - editor.putLong(key, (Long)object); - } - - editor.commit(); - } - - - /** - * 得到保存数据的方法,我们根据默认值得到保存的数据的具体类型,然后调用相对于的方法获取值 - * @param context - * @param key - * @param defaultObject - * @return - */ - public static Object getParam(Context context , String key, Object defaultObject){ - String type = defaultObject.getClass().getSimpleName(); - SharedPreferences sp = context.getSharedPreferences(FILE_NAME, Context.MODE_PRIVATE); - - if("String".equals(type)){ - return sp.getString(key, (String)defaultObject); - } - - else if("Integer".equals(type)){ - return sp.getInt(key, (Integer)defaultObject); - } - - else if("Boolean".equals(type)){ - return sp.getBoolean(key, (Boolean)defaultObject); - } - - else if("Float".equals(type)){ - return sp.getFloat(key, (Float)defaultObject); - } - - else if("Long".equals(type)){ - return sp.getLong(key, (Long)defaultObject); - } - - return null; - } - - /** - * 清除所有数据 - * @param context - */ - public static void clearAll(Context context) { - SharedPreferences sp = context.getSharedPreferences(FILE_NAME, - Context.MODE_PRIVATE); - SharedPreferences.Editor editor = sp.edit(); - editor.clear().commit(); - } - - /** - * 清除指定数据 - * @param context - */ - public static void clear(Context context,String key) { - SharedPreferences sp = context.getSharedPreferences(FILE_NAME, - Context.MODE_PRIVATE); - SharedPreferences.Editor editor = sp.edit(); - editor.remove(key); - editor.commit(); - } - -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/ScreenUtils.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/ScreenUtils.java deleted file mode 100644 index ac533ab..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/ScreenUtils.java +++ /dev/null @@ -1,145 +0,0 @@ -package com.android.learn.base.utils; - -import android.app.Activity; -import android.content.Context; -import android.graphics.Bitmap; -import android.graphics.Rect; -import android.util.DisplayMetrics; -import android.view.View; -import android.view.WindowManager; - -/** - * 获得屏幕相关的辅助类 - * - * - * - */ -public class ScreenUtils -{ - private ScreenUtils() - { - /* cannot be instantiated */ - throw new UnsupportedOperationException("cannot be instantiated"); - } - - /** - * 获得屏幕高度 - * - * @param context - * @return - */ - public static int getScreenWidth(Context context) - { - WindowManager wm = (WindowManager) context - .getSystemService(Context.WINDOW_SERVICE); - DisplayMetrics outMetrics = new DisplayMetrics(); - wm.getDefaultDisplay().getMetrics(outMetrics); - return outMetrics.widthPixels; - } - - /** - * 获得屏幕宽度 - * - * @param context - * @return - */ - public static int getScreenHeight(Context context) - { - WindowManager wm = (WindowManager) context - .getSystemService(Context.WINDOW_SERVICE); - DisplayMetrics outMetrics = new DisplayMetrics(); - wm.getDefaultDisplay().getMetrics(outMetrics); - return outMetrics.heightPixels; - } - - /** - * 获得状态栏的高度 - * - * @param context - * @return - */ - public static int getStatusHeight(Context context) - { - - int statusHeight = -1; - try - { - Class clazz = Class.forName("com.android.internal.R$dimen"); - Object object = clazz.newInstance(); - int height = Integer.parseInt(clazz.getField("status_bar_height") - .get(object).toString()); - statusHeight = context.getResources().getDimensionPixelSize(height); - } catch (Exception e) - { - e.printStackTrace(); - } - return statusHeight; - } - - /** - * 获取当前屏幕截图,包含状态栏 - * - * @param activity - * @return - */ - public static Bitmap snapShotWithStatusBar(Activity activity) - { - View view = activity.getWindow().getDecorView(); - view.setDrawingCacheEnabled(true); - view.buildDrawingCache(); - Bitmap bmp = view.getDrawingCache(); - int width = getScreenWidth(activity); - int height = getScreenHeight(activity); - Bitmap bp = null; - bp = Bitmap.createBitmap(bmp, 0, 0, width, height); - view.destroyDrawingCache(); - return bp; - - } - - /** - * 获取当前屏幕截图,不包含状态栏 - * - * @param activity - * @return - */ - public static Bitmap snapShotWithoutStatusBar(Activity activity) - { - View view = activity.getWindow().getDecorView(); - view.setDrawingCacheEnabled(true); - view.buildDrawingCache(); - Bitmap bmp = view.getDrawingCache(); - Rect frame = new Rect(); - activity.getWindow().getDecorView().getWindowVisibleDisplayFrame(frame); - int statusBarHeight = frame.top; - - int width = getScreenWidth(activity); - int height = getScreenHeight(activity); - Bitmap bp = null; - bp = Bitmap.createBitmap(bmp, 0, statusBarHeight, width, height - - statusBarHeight); - view.destroyDrawingCache(); - return bp; - - } - /** - * dp转换成px - * - * @param context Context - * @param dp dp - * @return px值 - */ - public static int dp2px(Context context, float dp) { - final float scale = context.getResources().getDisplayMetrics().density; - return (int) (dp * scale + 0.5f); - } - public static int px2sp(Context context, float pxValue) { - float fontScale = context.getResources().getDisplayMetrics().scaledDensity; - return (int) (pxValue / fontScale + 0.5f); - } - //转换dip为px - public static int dp2px(Context context, int dip) { - float scale = context.getResources().getDisplayMetrics().density; - return (int) (dip * scale + 0.5f * (dip >= 0 ? 1 : -1)); - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/SystemUtil.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/SystemUtil.java deleted file mode 100644 index e2c1d3d..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/SystemUtil.java +++ /dev/null @@ -1,69 +0,0 @@ -package com.android.learn.base.utils; - -import android.app.Activity; -import android.content.Context; -import android.telephony.TelephonyManager; - -import java.util.Locale; - - -public class SystemUtil { - - /** - * 获取当前手机系统语言。 - * - * @return 返回当前系统语言。例如:当前设置的是“中文-中国”,则返回“zh-CN” - */ - public static String getSystemLanguage() { - return Locale.getDefault().getLanguage(); - } - - /** - * 获取当前系统上的语言列表(Locale列表) - * - * @return 语言列表 - */ - public static Locale[] getSystemLanguageList() { - return Locale.getAvailableLocales(); - } - - /** - * 获取当前手机系统版本号 - * - * @return 系统版本号 - */ - public static String getSystemVersion() { - return android.os.Build.VERSION.RELEASE; - } - - /** - * 获取手机型号 - * - * @return 手机型号 - */ - public static String getSystemModel() { - return android.os.Build.MODEL; - } - - /** - * 获取手机厂商 - * - * @return 手机厂商 - */ - public static String getDeviceBrand() { - return android.os.Build.BRAND; - } - - /** - * 获取手机IMEI(需要“android.permission.READ_PHONE_STATE”权限) - * - * @return 手机IMEI - */ - public static String getIMEI(Context ctx) { - TelephonyManager tm = (TelephonyManager) ctx.getSystemService(Activity.TELEPHONY_SERVICE); - if (tm != null) { - return tm.getDeviceId(); - } - return null; - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/Utils.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/Utils.java deleted file mode 100644 index 787925d..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/Utils.java +++ /dev/null @@ -1,244 +0,0 @@ -package com.android.learn.base.utils; - -import android.app.ActivityManager; -import android.content.ClipboardManager; -import android.content.ComponentName; -import android.content.Context; -import android.content.pm.PackageInfo; -import android.content.pm.PackageManager; -import android.os.Looper; -import android.text.TextUtils; -import android.view.Gravity; -import android.widget.Toast; - - -import com.android.learn.base.application.CustomApplication; - -import java.security.MessageDigest; -import java.text.NumberFormat; -import java.text.SimpleDateFormat; -import java.util.Date; -import java.util.Locale; -import java.util.regex.Pattern; - -/** - * Created by gaolei on 2018/6/15. - */ - -public class Utils { - - public static Pattern intPattern = Pattern.compile("^[-+]?[0-9]"); - public static Pattern decimalPattern = Pattern.compile("^[-+]?[0-9]+(\\.[0-9]+)?$"); - - /** - * md5 加密 - * - * @param str 要加密的字符串 - * @return - */ - public static String md5Encode(String str) { - StringBuffer buf = new StringBuffer(); - try { - MessageDigest md5 = MessageDigest.getInstance("MD5"); - md5.update(str.getBytes()); - byte[] bytes = md5.digest(); - for (int i = 0; i < bytes.length; i++) { - String s = Integer.toHexString(bytes[i] & 0xff); - if (s.length() == 1) { - buf.append("0"); - } - buf.append(s); - } - - } catch (Exception ex) { - } - return buf.toString(); - } - - public static String getTopActivity(Context context) { - ActivityManager manager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE); - ActivityManager.RunningTaskInfo taskInfo = manager.getRunningTasks(1).get(0); - ComponentName componentInfo = taskInfo.topActivity; - String shortClassName = componentInfo.getShortClassName(); //类名 -// String className = info.topActivity.getClassName(); //完整类名 -// String packageName = info.topActivity.getPackageName(); - int index = shortClassName.lastIndexOf("."); - shortClassName = shortClassName.substring(index + 1); - return shortClassName; - } - - //判断手机号是否正确 - public static boolean isMobileNO(String mobile) { - - String telRegex = "[1][23456789]\\d{9}";//"[1]"代表第1位为数字1,"[35678]"代表第二位可以为23456789中的一个,"\\d{9}"代表后面是可以是0~9的数字,有9位。 - - if (TextUtils.isEmpty(mobile)) { - Utils.showToast("请输入正确的手机号", true); - return false; - } else if (!mobile.matches(telRegex)) { - Utils.showToast("请输入正确的手机号", true); - return false; - } - return true; - - } - - /** - * 判断是否是银行卡号 - * - * @param cardId - * @return - */ - public static boolean checkBankCard(String cardId) { - char bit = getBankCardCheckCode(cardId - .substring(0, cardId.length() - 1)); - if (bit == 'N') { - return false; - } - return cardId.charAt(cardId.length() - 1) == bit; - } - - private static char getBankCardCheckCode(String nonCheckCodeCardId) { - if (nonCheckCodeCardId == null - || nonCheckCodeCardId.trim().length() == 0 - || !nonCheckCodeCardId.matches("//d+")) { -// 如果传的不是数据返回N - return 'N'; - } - char[] chs = nonCheckCodeCardId.trim().toCharArray(); - int luhmSum = 0; - for (int i = chs.length - 1, j = 0; i >= 0; i--, j++) { - int k = chs[i] - '0'; - if (j % 2 == 0) { - k *= 2; - k = k / 10 + k % 10; - } - luhmSum += k; - } - return (luhmSum % 10 == 0) ? '0' : (char) ((10 - luhmSum % 10) + '0'); - } - - public static void showToast(String content, boolean isShort) { - try { - Toast toast = Toast.makeText(CustomApplication.context, content, isShort ? Toast.LENGTH_SHORT : Toast.LENGTH_LONG); - toast.setGravity(Gravity.CENTER, 0, 0); - toast.show(); - } catch (Exception e) { - //解决在子线程中调用Toast的异常情况处理 - Looper.prepare(); - Toast.makeText(CustomApplication.context, content, isShort ? Toast.LENGTH_SHORT : Toast.LENGTH_LONG).show(); - Looper.loop(); - } - - } - public static void showToast(String content, boolean isShort,int gravity) { - try { - Toast toast = Toast.makeText(CustomApplication.context, content, isShort ? Toast.LENGTH_SHORT : Toast.LENGTH_LONG); - toast.setGravity(gravity, 0, 0); - toast.show(); - } catch (Exception e) { - //解决在子线程中调用Toast的异常情况处理 - Looper.prepare(); - Toast.makeText(CustomApplication.context, content, isShort ? Toast.LENGTH_SHORT : Toast.LENGTH_LONG).show(); - Looper.loop(); - } - - } - - public static String ms2Date(long _ms) { - Date date = new Date(_ms); - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm", Locale.getDefault()); - return format.format(date); - } - - public static String keepDecimal2(float value) { - NumberFormat ddf1 = NumberFormat.getNumberInstance(); - ddf1.setMaximumFractionDigits(2); - return ddf1.format(value); - } - public static void copyTxt(Context context,String content) { - ClipboardManager cm = (ClipboardManager) context.getSystemService(Context.CLIPBOARD_SERVICE); - // 将文本内容放到系统剪贴板里。 - cm.setText(content); - Toast.makeText(context, "复制成功,可以分享给朋友们了", Toast.LENGTH_LONG).show(); - } - - public static int stringToInt(String value) { - return Integer.parseInt(value.trim()); - } - - public static double stringToDouble(String value) { - return Double.parseDouble(value.trim()); - } - - public static float stringToFloat(String value) { - return Float.parseFloat(value.trim()); - } - - public static float stringToDigit(String value) { - - - if (intPattern.matcher(value).matches()) { -//数字 - return Integer.parseInt(value.trim()); - } else if (decimalPattern.matcher(value).matches()) { -//小数 - return Float.parseFloat(value.trim()); - } else { -//非数字 - Utils.showToast("数据格式转化出错", true); - } - return Float.parseFloat(value.trim()); - } - public static int getVersionCode(Context context) { - try { - PackageManager packageManager = context.getPackageManager(); - PackageInfo packageInfo = packageManager.getPackageInfo( - context.getPackageName(), 0); - return packageInfo.versionCode; - } catch (Exception e) { - e.printStackTrace(); - } - return 0; - } - public static String getVersionName(Context context) { - try { - PackageManager packageManager = context.getPackageManager(); - PackageInfo packageInfo = packageManager.getPackageInfo( - context.getPackageName(), 0); - return packageInfo.versionName; - } catch (Exception e) { - e.printStackTrace(); - } - return ""; - } - - //假设传入的日期格式是yyyy-MM-dd HH:mm:ss, 也可以传入yyyy-MM-dd,如2018-1-1或者2018-01-01格式 - - public static boolean isValidDate(String strDate) { - SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - try { - // 设置lenient为false. 否则SimpleDateFormat会比较宽松地验证日期,比如2018-02-29会被接受,并转换成2018-03-01 - - format.setLenient(false); - Date date = format.parse(strDate); - - //判断传入的yyyy年-MM月-dd日 字符串是否为数字 - String[] sArray = strDate.split("-"); - for (String s : sArray) { - boolean isNum = s.matches("[0-9]+"); - //+表示1个或多个(如"3"或"225"),*表示0个或多个([0-9]*)(如""或"1"或"22"),?表示0个或1个([0-9]?)(如""或"7") - if (!isNum) { - return false; - } - } - } catch (Exception e) { - // e.printStackTrace(); - // 如果throw java.text.ParseException或者NullPointerException,就说明格式不对 - return false; - } - - return true; - } - -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/account/UserUtil.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/account/UserUtil.java deleted file mode 100644 index 5eb40f3..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/utils/account/UserUtil.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.android.learn.base.utils.account; - -import com.android.learn.base.event.LoginEvent; -import com.android.learn.base.mmodel.RegisterLoginData; - -import org.greenrobot.eventbus.EventBus; - -public class UserUtil { - - public static boolean logined = false; - public static RegisterLoginData userInfo; - - public static boolean isLogined() { - return logined; - } - - public static void setLogined(boolean logined) { - UserUtil.logined = logined; - } - - public static RegisterLoginData getUserInfo() { - return userInfo; - } - - public static void setUserInfo(RegisterLoginData userInfo) { - UserUtil.userInfo = userInfo; - if (userInfo != null) { - setLogined(true); - } else setLogined(false); - LoginEvent accountEvent = new LoginEvent(); - EventBus.getDefault().post(accountEvent); - - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/BottomNavigationViewHelper.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/BottomNavigationViewHelper.java deleted file mode 100644 index 90ec370..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/BottomNavigationViewHelper.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.android.learn.base.view; - -/** - * Created by gaolei on 2018/4/26. - */ - -import android.annotation.SuppressLint; -import android.support.design.internal.BottomNavigationItemView; -import android.support.design.internal.BottomNavigationMenuView; -import android.support.design.widget.BottomNavigationView; -import android.util.Log; -import java.lang.reflect.Field; - -public class BottomNavigationViewHelper { - - @SuppressLint("RestrictedApi") - public static void disableShiftMode(BottomNavigationView view) { - BottomNavigationMenuView menuView = (BottomNavigationMenuView) view.getChildAt(0); - try { - Field shiftingMode = menuView.getClass().getDeclaredField("mShiftingMode"); - shiftingMode.setAccessible(true); - shiftingMode.setBoolean(menuView, false); - shiftingMode.setAccessible(false); - for (int i = 0; i < menuView.getChildCount(); i++) { - BottomNavigationItemView item = (BottomNavigationItemView) menuView.getChildAt(i); - //noinspection RestrictedApi - item.setShiftingMode(false); - // set once again checked value, so view will be updated - //noinspection RestrictedApi - item.setChecked(item.getItemData().isChecked()); - } - } catch (NoSuchFieldException e) { - Log.e("BNVHelper", "Unable to get shift mode field", e); - } catch (IllegalAccessException e) { - Log.e("BNVHelper", "Unable to change value of shift mode", e); - } - } -} - diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/CircleImageView.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/CircleImageView.java deleted file mode 100644 index 79c3777..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/CircleImageView.java +++ /dev/null @@ -1,73 +0,0 @@ -package com.android.learn.base.view; - -import android.content.Context; -import android.graphics.Bitmap; -import android.graphics.BitmapShader; -import android.graphics.Canvas; -import android.graphics.Matrix; -import android.graphics.Paint; -import android.graphics.Shader; -import android.graphics.drawable.BitmapDrawable; -import android.support.annotation.Nullable; -import android.support.v7.widget.AppCompatImageView; -import android.util.AttributeSet; - -/** - * 功能描述:一个简洁而高效的圆形ImageView - * - * @author (作者) edward(冯丰枫) - * @link http://www.jianshu.com/u/f7176d6d53d2 - * 创建时间: 2018/4/17 0017 - */ -public class CircleImageView extends AppCompatImageView { - private float width; - private float height; - private float radius; - private Paint paint; - private Matrix matrix; - - public CircleImageView(Context context) { - this(context, null); - } - - public CircleImageView(Context context, @Nullable AttributeSet attrs) { - this(context, attrs, 0); - } - - public CircleImageView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) { - super(context, attrs, defStyleAttr); - paint = new Paint(); - paint.setAntiAlias(true); //设置抗锯齿 - matrix = new Matrix(); //初始化缩放矩阵 - } - - /** - * 测量控件的宽高,并获取其内切圆的半径 - */ - @Override - protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { - super.onMeasure(widthMeasureSpec, heightMeasureSpec); - width = getMeasuredWidth(); - height = getMeasuredHeight(); - radius = Math.min(width, height) / 2; - } - - @Override - protected void onDraw(Canvas canvas) { - paint.setShader(initBitmapShader());//将着色器设置给画笔 - canvas.drawCircle(width / 2, height / 2, radius, paint);//使用画笔在画布上画圆 - } - - /** - * 获取ImageView中资源图片的Bitmap,利用Bitmap初始化图片着色器,通过缩放矩阵将原资源图片缩放到铺满整个绘制区域,避免边界填充 - */ - private BitmapShader initBitmapShader() { - if(getDrawable()==null)return null; - Bitmap bitmap = ((BitmapDrawable) getDrawable()).getBitmap(); - BitmapShader bitmapShader = new BitmapShader(bitmap, Shader.TileMode.CLAMP, Shader.TileMode.CLAMP); - float scale = Math.max(width / bitmap.getWidth(), height / bitmap.getHeight()); - matrix.setScale(scale, scale);//将图片宽高等比例缩放,避免拉伸 - bitmapShader.setLocalMatrix(matrix); - return bitmapShader; - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/CustomProgressDialog.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/CustomProgressDialog.java deleted file mode 100644 index 369c1da..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/CustomProgressDialog.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.android.learn.base.view; - -import android.app.Activity; -import android.app.Dialog; -import android.content.Context; -import android.view.LayoutInflater; -import android.view.View; -import android.view.animation.Animation; -import android.view.animation.AnimationUtils; -import android.widget.ImageView; -import android.widget.LinearLayout; -import android.widget.TextView; - -import com.gaolei.basemodule.R; - - -public class CustomProgressDialog { - public static Dialog loadingDialog; - - public static Dialog createLoadingDialog(Context context) { - if (context == null) return null; - LayoutInflater inflater = LayoutInflater.from(context); - View v = inflater.inflate(R.layout.dialog_loading, null);// 得到加载view - LinearLayout layout = (LinearLayout) v.findViewById(R.id.dialog_view);// 加载布局 - // main.xml中的ImageView - ImageView spaceshipImage = (ImageView) v.findViewById(R.id.img); - TextView tipTextView = (TextView) v.findViewById(R.id.tipTextView);// 提示文字 - // 加载动画 - Animation hyperspaceJumpAnimation = AnimationUtils.loadAnimation( - context, R.anim.anim_dialog_load); - // 使用ImageView显示动画 - spaceshipImage.startAnimation(hyperspaceJumpAnimation); - - loadingDialog = new Dialog(context, R.style.loading_dialog);// 创建自定义样式dialog - - loadingDialog.setCancelable(true);// 不可以用“返回键”取消 - loadingDialog.setContentView(layout, new LinearLayout.LayoutParams( - LinearLayout.LayoutParams.MATCH_PARENT, - LinearLayout.LayoutParams.MATCH_PARENT));// 设置布局 - return loadingDialog; - - } - - public static void show(Activity activity) { - if (loadingDialog != null) return; - if (loadingDialog != null && loadingDialog.isShowing()) return; - loadingDialog = CustomProgressDialog.createLoadingDialog(activity); - loadingDialog.show();//显示 - } - - public static void cancel() { - if (loadingDialog != null) { - loadingDialog.cancel(); - loadingDialog = null; - } - } -} - diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/HeaderView.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/HeaderView.java deleted file mode 100644 index 6267254..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/HeaderView.java +++ /dev/null @@ -1,4 +0,0 @@ -package com.android.learn.base.view; - -public class HeaderView { -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/ProgressView.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/ProgressView.java deleted file mode 100644 index 402cb65..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/ProgressView.java +++ /dev/null @@ -1,70 +0,0 @@ -package com.android.learn.base.view; - -import android.content.Context; -import android.graphics.Canvas; -import android.graphics.Color; -import android.graphics.Paint; -import android.support.annotation.Nullable; -import android.util.AttributeSet; -import android.view.View; - -public class ProgressView extends View { - private Paint mPaint; - private int mWidth, mHeight; - private int progress;//加载进度 - - public ProgressView(Context context) { - this(context, null); - } - - public ProgressView(Context context, @Nullable AttributeSet attrs) { - this(context, attrs, 0); - } - - public ProgressView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) { - super(context, attrs, defStyleAttr); - init(); - } - - private void init() { - //初始化画笔 - mPaint = new Paint(); - mPaint.setDither(true); - mPaint.setAntiAlias(true); - mPaint.setStrokeWidth(5); - mPaint.setColor(Color.parseColor("#88b221")); - } - - @Override - protected void onSizeChanged(int w, int h, int ow, int oh) { - mWidth = w; - mHeight = h; - super.onSizeChanged(w, h, ow, oh); - } - - - @Override - protected void onDraw(Canvas canvas) { - canvas.drawRect(0, 0, mWidth * progress / 100, mHeight, mPaint); - super.onDraw(canvas); - } - - /** - * 设置新进度 重新绘制 - * - * @param newProgress 新进度 - */ - public void setProgress(int newProgress) { - this.progress = newProgress; - invalidate(); - } - - /** - * 设置进度条颜色 - * - * @param color 色值 - */ - public void setColor(int color) { - mPaint.setColor(color); - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/TitleView.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/TitleView.java deleted file mode 100644 index 3a226ee..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/TitleView.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.android.learn.base.view; - -import android.app.Activity; -import android.content.Context; -import android.util.AttributeSet; -import android.view.LayoutInflater; -import android.view.View; -import android.widget.Button; -import android.widget.FrameLayout; -import android.widget.ImageView; -import android.widget.TextView; - -import com.gaolei.basemodule.R; - -public class TitleView extends FrameLayout { - - private ImageView iv_back; - - private TextView title; - - public TitleView(Context context, AttributeSet attrs) { - super(context, attrs); - LayoutInflater.from(context).inflate(R.layout.title_view, this); - iv_back =findViewById(R.id.iv_back); - title =findViewById(R.id.title); - iv_back.setOnClickListener(new OnClickListener() { - @Override - public void onClick(View v) { - ((Activity) getContext()).finish(); - } - }); - } - - public void setTitleText(String text) { - title.setText(text); - } - -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/colorfultab/ColorClipTabLayout.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/colorfultab/ColorClipTabLayout.java deleted file mode 100644 index 83459dc..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/colorfultab/ColorClipTabLayout.java +++ /dev/null @@ -1,215 +0,0 @@ -package com.android.learn.base.view.colorfultab; - -import android.content.Context; -import android.content.res.TypedArray; -import android.graphics.Color; -import android.support.annotation.NonNull; -import android.support.annotation.Nullable; -import android.support.design.widget.TabLayout; -import android.support.v4.view.ViewPager; -import android.util.AttributeSet; -import android.util.Log; -import android.view.ViewGroup; -import android.widget.LinearLayout; - -import com.gaolei.basemodule.R; - -import java.lang.ref.WeakReference; - -import static android.support.v4.view.ViewPager.SCROLL_STATE_DRAGGING; -import static android.support.v4.view.ViewPager.SCROLL_STATE_IDLE; -import static android.support.v4.view.ViewPager.SCROLL_STATE_SETTLING; - -/** - * Created by rookie on 2018/4/24. - */ - -public class ColorClipTabLayout extends TabLayout { - - private int tabTextSize;//每个tab字体大小 - private int tabSelectedTextColor;//每个tab选中字体颜色 - private int tabTextColor;//每个tab未选中颜色 - private static final int INVALID_TAB_POS = -1; - - //最后的选中位置 - private int lastSelectedTabPosition = INVALID_TAB_POS; - - private ViewPager viewPager;//所绑定的viewpager - - private ColorClipTabLayoutOnPageChangeListener colorClipTabLayoutOnPageChangeListener; - - - public ColorClipTabLayout(Context context) { - this(context, null); - } - - public ColorClipTabLayout(Context context, AttributeSet attrs) { - this(context, attrs, 0); - } - - public ColorClipTabLayout(Context context, AttributeSet attrs, int defStyleAttr) { - super(context, attrs, defStyleAttr); - if (attrs != null) { - // Text colors/sizes come from the text appearance first - final TypedArray ta = context.obtainStyledAttributes(attrs, R.styleable.ColorClipTabLayout); - //Tab字体大小 - tabTextSize = ta.getDimensionPixelSize(R.styleable.ColorClipTabLayout_text_size, 72); - //Tab文字颜色 - tabTextColor = ta.getColor(R.styleable.ColorClipTabLayout_text_unselected_color, Color.parseColor("#000000")); - tabSelectedTextColor = ta.getColor(R.styleable.ColorClipTabLayout_text_selected_color, Color.parseColor("#cc0000")); - ta.recycle(); - } - } - - @Override - public void addTab(@NonNull Tab tab, int position, boolean setSelected) { - //通过addTab的方式将colorClipView作为customView传入tab - ColorClipView colorClipView = new ColorClipView(getContext()); - colorClipView.setProgress(setSelected ? 1 : 0); - colorClipView.setText(tab.getText() + ""); - colorClipView.setTextSize(tabTextSize); - colorClipView.setTag(position); - colorClipView.setTextSelectedColor(tabSelectedTextColor); - colorClipView.setTextUnselectColor(tabTextColor); - LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT); - colorClipView.setLayoutParams(layoutParams); - tab.setCustomView(colorClipView); - super.addTab(tab, position, setSelected); - int selectedTabPosition = getSelectedTabPosition(); - if ((selectedTabPosition == INVALID_TAB_POS && position == 0) || (selectedTabPosition == position)) { - setSelectedView(position); - } - - setTabWidth(position, colorClipView); - } - - @Override - public void setupWithViewPager(@Nullable ViewPager viewPager, boolean autoRefresh) { - super.setupWithViewPager(viewPager, autoRefresh); - try { - if (viewPager != null) - this.viewPager = viewPager; - //通过反射找到mPageChangeListener -// Field field = TabLayout.class.getDeclaredField("colorClipTabLayoutOnPageChangeListener"); -// field.setAccessible(true); -// TabLayoutOnPageChangeListener listener = (TabLayoutOnPageChangeListener) field.get(this); -// if (listener != null) { -// //删除自带监听 -// viewPager.removeOnPageChangeListener(listener); - colorClipTabLayoutOnPageChangeListener = new ColorClipTabLayoutOnPageChangeListener(this); - colorClipTabLayoutOnPageChangeListener.reset(); - viewPager.addOnPageChangeListener(colorClipTabLayoutOnPageChangeListener); -// } - } catch (Exception e) { - e.printStackTrace(); - } - } - - @Override - public void removeAllTabs() { - lastSelectedTabPosition = getSelectedTabPosition(); - super.removeAllTabs(); - } - - @Override - public int getSelectedTabPosition() { - final int selectedTabPositionAtParent = super.getSelectedTabPosition(); - return selectedTabPositionAtParent == INVALID_TAB_POS ? - lastSelectedTabPosition : selectedTabPositionAtParent; - } - - public void setLastSelectedTabPosition(int lastSelectedTabPosition) { - lastSelectedTabPosition = lastSelectedTabPosition; - } - - public void setCurrentItem(int position) { - if (viewPager != null) - viewPager.setCurrentItem(position); - } - - private void setTabWidth(int position, ColorClipView colorClipView) { - ViewGroup slidingTabStrip = (ViewGroup) getChildAt(0); - ViewGroup tabView = (ViewGroup) slidingTabStrip.getChildAt(position); - LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.MATCH_PARENT); - - int w = MeasureSpec.makeMeasureSpec(0, - MeasureSpec.UNSPECIFIED); - int h = MeasureSpec.makeMeasureSpec(0, - MeasureSpec.UNSPECIFIED); - //手动测量一下 - colorClipView.measure(w, h); - params.width = colorClipView.getMeasuredWidth() + tabView.getPaddingLeft() + tabView.getPaddingRight(); - //设置tabView的宽度 - tabView.setLayoutParams(params); - } - - private void setSelectedView(int position) { - final int tabCount = getTabCount(); - if (position < tabCount) { - for (int i = 0; i < tabCount; i++) { - getColorClipView(i).setProgress(i == position ? 1 : 0); - } - } - } - - public void tabScrolled(int position, float positionOffset) { - - if (positionOffset == 0.0F) { - return; - } - ColorClipView currentTrackView = getColorClipView(position); - ColorClipView nextTrackView = getColorClipView(position + 1); - currentTrackView.setDirection(1); - currentTrackView.setProgress(1.0F - positionOffset); - nextTrackView.setDirection(0); - nextTrackView.setProgress(positionOffset); - } - - private ColorClipView getColorClipView(int position) { - return (ColorClipView) getTabAt(position).getCustomView(); - } - - public static class ColorClipTabLayoutOnPageChangeListener extends TabLayoutOnPageChangeListener { - - private final WeakReference mTabLayoutRef; - private int mPreviousScrollState; - private int mScrollState; - - public ColorClipTabLayoutOnPageChangeListener(TabLayout tabLayout) { - super(tabLayout); - mTabLayoutRef = new WeakReference<>((ColorClipTabLayout) tabLayout); - } - - @Override - public void onPageScrollStateChanged(final int state) { - mPreviousScrollState = mScrollState; - mScrollState = state; - } - - @Override - public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { - super.onPageScrolled(position, positionOffset, positionOffsetPixels); - ColorClipTabLayout tabLayout = mTabLayoutRef.get(); - if (tabLayout == null) return; - final boolean updateText = mScrollState != SCROLL_STATE_SETTLING || - mPreviousScrollState == SCROLL_STATE_DRAGGING; - if (updateText) { - Log.e("tag1", "positionOffset" + positionOffset); - tabLayout.tabScrolled(position, positionOffset); - } - } - - @Override - public void onPageSelected(int position) { - super.onPageSelected(position); - ColorClipTabLayout tabLayout = mTabLayoutRef.get(); - mPreviousScrollState = SCROLL_STATE_SETTLING; - tabLayout.setSelectedView(position); - } - - void reset() { - mPreviousScrollState = mScrollState = SCROLL_STATE_IDLE; - } - - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/colorfultab/ColorClipTestView.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/colorfultab/ColorClipTestView.java deleted file mode 100644 index bc9d9ce..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/colorfultab/ColorClipTestView.java +++ /dev/null @@ -1,75 +0,0 @@ -package com.android.learn.base.view.colorfultab; - -import android.content.Context; -import android.graphics.Canvas; -import android.graphics.Color; -import android.graphics.Paint; -import android.support.annotation.Nullable; -import android.util.AttributeSet; -import android.util.Log; -import android.view.MotionEvent; -import android.view.View; - -public class ColorClipTestView extends View { - float per = 0; - float x = 0, y = 0; - - public ColorClipTestView(Context context) { - super(context); - } - - public ColorClipTestView(Context context, @Nullable AttributeSet attrs) { - super(context, attrs); - } - - public ColorClipTestView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) { - super(context, attrs, defStyleAttr); - } - - @Override - protected void onDraw(Canvas canvas) { - super.onDraw(canvas); - - Paint paint = new Paint(); - paint.setAntiAlias(true); - paint.setStrokeWidth(80); - paint.setStyle(Paint.Style.FILL); - - paint.setTextSize(68); - canvas.save(); - canvas.drawText("我是火车王", 200, 200, paint); - canvas.restore(); - paint.setColor(Color.RED); - canvas.clipRect(200, 0, 320 * per, 400); - Log.e("per", "per:" + per); - canvas.drawText("我是火车王", 200, 200, paint); - } - - @Override - public boolean onTouchEvent(MotionEvent event) { - switch (event.getAction()) { - case MotionEvent.ACTION_DOWN: - Log.e("log", "ACTION_DOWN"); - x = event.getRawX(); - y = event.getRawY(); - return true; - case MotionEvent.ACTION_MOVE: - Log.e("log", "ACTION_MOVE"); - float currentX = event.getRawX(); - float currentY = event.getRawY(); - if (currentY > y) { - per = ((currentY - y) / y) * 10; - } - invalidate(); - return true; - } - return super.onTouchEvent(event); - } - - private void move(Canvas canvas, Paint paint, float per) { - canvas.save(); - float right = 300 * per; - - canvas.restore(); - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/colorfultab/ColorClipView.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/colorfultab/ColorClipView.java deleted file mode 100644 index a1c4ddd..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/colorfultab/ColorClipView.java +++ /dev/null @@ -1,234 +0,0 @@ -package com.android.learn.base.view.colorfultab; - -import android.content.Context; -import android.content.res.TypedArray; -import android.graphics.Canvas; -import android.graphics.Paint; -import android.graphics.Rect; -import android.util.AttributeSet; -import android.util.Log; -import android.util.TypedValue; -import android.view.View; - -import com.gaolei.basemodule.R; - -/** - * Created by rookie on 2018/4/24. - */ - -public class ColorClipView extends View { - - private Paint paint;//画笔 - private String text = "我是不哦车网";//绘制的文本 - private int textSize = sp2px(18);//文本字体大小 - - private int textWidth;//文本的宽度 - private int textHeight;//文本的高度 - - private int textUnselectColor = R.color.colorPrimary;//文本未选中字体颜色 - private int textSelectedColor = R.color.colorAccent;//文本选中颜色 - - private static final int DIRECTION_LEFT = 0; - private static final int DIRECTION_RIGHT = 1; - private static final int DIRECTION_TOP = 2; - private static final int DIRECTION_BOTTOM = 3; - - private int mDirection = DIRECTION_LEFT; - - private Rect textRect = new Rect();//文本显示区域 - - private int startX;//X轴开始绘制的坐标 - - private int startY;//y轴开始绘制的坐标 - - private int baseLineY;//基线的位置 - - private float progress; - - - public ColorClipView(Context context) { - this(context, null); - } - - public ColorClipView(Context context, AttributeSet attrs) { - super(context, attrs); - - //初始化各个属性包括画笔 - - paint = new Paint(Paint.ANTI_ALIAS_FLAG); - TypedArray ta = context.obtainStyledAttributes(attrs, - R.styleable.ColorClipView); - text = ta.getString(R.styleable.ColorClipView_text); - textSize = ta.getDimensionPixelSize(R.styleable.ColorClipView_text_size, textSize); -// textUnselectColor = ta.getColor(R.styleable.ColorClipView_text_unselected_color, textUnselectColor); -// textSelectedColor = ta.getColor(R.styleable.ColorClipView_text_selected_color, textSelectedColor); - mDirection = ta.getInt(R.styleable.ColorClipView_direction, mDirection); - progress = ta.getFloat(R.styleable.ColorClipView_progress, 0); - ta.recycle();//用完就得收! - paint.setTextSize(textSize); - } - - private int sp2px(float dpVal) { - return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP, - dpVal, getResources().getDisplayMetrics()); - } - - public void setProgress(float progress) { - this.progress = progress; - invalidate(); - } - - public void setTextSize(int mTextSize) { - this.textHeight = mTextSize; - paint.setTextSize(mTextSize); - requestLayout(); - invalidate(); - } - - public void setText(String text) { - this.text = text; - requestLayout(); - invalidate(); - } - - public void setDirection(int direction) { - this.mDirection = direction; - invalidate(); - } - - public void setTextUnselectColor(int unselectColor) { - this.textUnselectColor = unselectColor; - invalidate(); - } - - public void setTextSelectedColor(int selectedColor) { - this.textSelectedColor = selectedColor; - invalidate(); - } - - @Override - protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { - measureText();//测量文本的长宽 - - int width = measureWidth(widthMeasureSpec);//通过模式的不同来测量出实际的宽度 - int height = measureHeight(heightMeasureSpec);//通过模式的不同来测量出实际的高度 - setMeasuredDimension(width, height); - Log.e("tag", "七点" + (getMeasuredWidth() - getPaddingRight() - getPaddingLeft())); - startX = (getMeasuredWidth() - getPaddingRight() - getPaddingLeft()) / 2 - textWidth / 2; - startY = (textHeight - getPaddingBottom() - getPaddingTop()); - } - - private int measureHeight(int heightMeasureSpec) { - int mode = MeasureSpec.getMode(heightMeasureSpec); - int size = MeasureSpec.getSize(heightMeasureSpec); - int realSize = 0; - switch (mode) { - case MeasureSpec.EXACTLY: - realSize = size; - break; - case MeasureSpec.AT_MOST: - case MeasureSpec.UNSPECIFIED: - realSize = textHeight; - realSize += getPaddingTop() + getPaddingBottom(); - break; - } - realSize = mode == MeasureSpec.AT_MOST ? Math.min(realSize, size) : realSize; - return realSize; - } - - private int measureWidth(int widthMeasureSpec) { - int mode = MeasureSpec.getMode(widthMeasureSpec);//通过widthMeasureSpec拿到Mode - int size = MeasureSpec.getSize(widthMeasureSpec);//同理 - int realSize = 0;//最后返回的值 - switch (mode) { - case MeasureSpec.EXACTLY://精确模式下直接用给出的宽度 - realSize = size; - break; - case MeasureSpec.AT_MOST://最大模式 - case MeasureSpec.UNSPECIFIED://未指定模式 - //这两种情况下,用测量出的宽度加上左右padding - realSize = textWidth; - realSize = realSize + getPaddingLeft() + getPaddingRight(); - break; - } - //如果mode为最大模式,不应该大于父类传入的值,所以取最小 - realSize = mode == MeasureSpec.AT_MOST ? Math.min(realSize, size) : realSize; - return realSize; - } - - private void measureText() { - textWidth = (int) paint.measureText(text);//测量文本宽度 - Log.d("tag", "measureText=" + paint.measureText(text)); - - - //直接通过获得文本显示范围,再获得高度 - //参数里,text 是要测量的文字 - //start 和 end 分别是文字的起始和结束位置,textRect 是存储文字显示范围的对象,方法在测算完成之后会把结果写进 textRect。 - paint.getTextBounds(text, 0, text.length(), textRect); - textHeight = textRect.height(); - - //通过文本的descent线与top线的距离来测量文本高度,这是其中一种测量方法 - Paint.FontMetrics fm = paint.getFontMetrics(); - textHeight = (int) Math.ceil(fm.descent - fm.top); - - baseLineY = (int) (textHeight / 2 - (fm.bottom - fm.top) / 2 - fm.top); - } - - @Override - protected void onDraw(Canvas canvas) { - super.onDraw(canvas); - //OK~开始绘制咯~ - //首先先判断方向是左还是右呢? 是上还是下呢? 真期待.... - Log.e("tag", "OnDraw"); - if (mDirection == DIRECTION_LEFT) { - //绘制朝左的选中文字 - drawHorizontalText(canvas, textSelectedColor, startX, - (int) (startX + progress * textWidth)); - //绘制朝左的未选中文字 - drawHorizontalText(canvas, textUnselectColor, (int) (startX + progress - * textWidth), startX + textWidth); - } else if (mDirection == DIRECTION_RIGHT) { - //绘制朝右的选中文字 - drawHorizontalText(canvas, textSelectedColor, - (int) (startX + (1 - progress) * textWidth), startX - + textWidth); - //绘制朝右的未选中文字 - drawHorizontalText(canvas, textUnselectColor, startX, - (int) (startX + (1 - progress) * textWidth)); - } else if (mDirection == DIRECTION_TOP) { - //绘制朝上的选中文字 - drawVerticalText(canvas, textSelectedColor, startY, - (int) (startY + progress * textHeight)); - //绘制朝上的未选中文字 - drawVerticalText(canvas, textUnselectColor, (int) (startY + progress - * textHeight), startY + textHeight); - } else { - //绘制朝下的选中文字 - drawVerticalText(canvas, textSelectedColor, - (int) (startY + (1 - progress) * textHeight), - startY + textHeight); - //绘制朝下的未选中文字 - drawVerticalText(canvas, textUnselectColor, startY, - (int) (startY + (1 - progress) * textHeight)); - } - - } - - private void drawHorizontalText(Canvas canvas, int color, int startX, int endX) { - paint.setColor(color); - canvas.save(); - Log.e("tag", "getMeasuredHeight" + getMeasuredHeight()); - canvas.clipRect(startX, 0, endX, getMeasuredHeight()); - canvas.drawText(text, this.startX, baseLineY, paint); - canvas.restore(); - } - - private void drawVerticalText(Canvas canvas, int color, int startY, int endY) { - paint.setColor(color); - canvas.save(); - canvas.clipRect(0, startY, getMeasuredWidth(), endY);// left, top, - canvas.drawText(text, this.startX, - this.startY, paint); - canvas.restore(); - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/xskin/CustomTitleView.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/xskin/CustomTitleView.java deleted file mode 100644 index 083aa45..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/xskin/CustomTitleView.java +++ /dev/null @@ -1,138 +0,0 @@ -package com.android.learn.base.xskin; - - -import android.content.Context; -import android.content.res.TypedArray; -import android.graphics.Canvas; -import android.graphics.Color; -import android.graphics.Paint; -import android.graphics.Rect; -import android.support.annotation.ColorInt; -import android.util.AttributeSet; -import android.util.TypedValue; -import android.view.View; - -import com.gaolei.basemodule.R; - -/** - * Created by Windy on 2018/1/10. - */ - -public class CustomTitleView extends View { - /** - * 文本 - */ - private String mTitleText; - /** - * 文本的颜色 - */ - private int mTitleTextColor; - /** - * 文本的大小 - */ - private int mTitleTextSize; - - /** - * 绘制时控制文本绘制的范围 - */ - private Rect mBound; - private Paint mPaint; - private Rect mBounds = new Rect(); - - public CustomTitleView(Context context, AttributeSet attrs) { - this(context, attrs, 0); - } - - public CustomTitleView(Context context) { - this(context, null); - } - - /** - * 获得我自定义的样式属性 - * - * @param context - * @param attrs - * @param defStyle - */ - public CustomTitleView(Context context, AttributeSet attrs, int defStyle) { - super(context, attrs, defStyle); - /** - * 获得我们所定义的自定义样式属性 - */ - TypedArray a = context.getTheme().obtainStyledAttributes(attrs, R.styleable.CustomTitleView, defStyle, 0); - int n = a.getIndexCount(); - for (int i = 0; i < n; i++) { - int attr = a.getIndex(i); - - if (attr == R.styleable.CustomTitleView_titleText) { - mTitleText = a.getString(attr); - } - if (attr == R.styleable.CustomTitleView_titleTextColor) { - // 默认颜色设置为黑色 - mTitleTextColor = a.getColor(attr, Color.BLACK); - } - if (attr == R.styleable.CustomTitleView_titleTextSize) { - // 默认设置为16sp,TypeValue也可以把sp转化为px - mTitleTextSize = a.getDimensionPixelSize(attr, (int) TypedValue.applyDimension( - TypedValue.COMPLEX_UNIT_SP, 16, getResources().getDisplayMetrics())); - - } - - } - a.recycle(); - - /** - * 获得绘制文本的宽和高 - */ - mPaint = new Paint(); - mPaint.setTextSize(mTitleTextSize); - // mPaint.setColor(mTitleTextColor); - mBound = new Rect(); - mPaint.getTextBounds(mTitleText, 0, mTitleText.length(), mBound); - - } - - public void setTextColor(@ColorInt int color) { - mTitleTextColor = color; - invalidate(); - } - - @Override - protected void onDraw(Canvas canvas) { - mPaint.setColor(Color.YELLOW); - canvas.drawRect(0, 0, getMeasuredWidth(), getMeasuredHeight(), mPaint); - - mPaint.setColor(mTitleTextColor); - canvas.drawText(mTitleText, getWidth() / 2 - mBound.width() / 2, getHeight() / 2 + mBound.height() / 2, mPaint); - } - - @Override - protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { - int widthMode = MeasureSpec.getMode(widthMeasureSpec); - int widthSize = MeasureSpec.getSize(widthMeasureSpec); - int heightMode = MeasureSpec.getMode(heightMeasureSpec); - int heightSize = MeasureSpec.getSize(heightMeasureSpec); - int width; - int height; - if (widthMode == MeasureSpec.EXACTLY) { - width = widthSize; - } else { - mPaint.setTextSize(mTitleTextSize); - mPaint.getTextBounds(mTitleText, 0, mTitleText.length(), mBounds); - float textWidth = mBounds.width(); - int desired = (int) (getPaddingLeft() + textWidth + getPaddingRight()); - width = desired; - } - - if (heightMode == MeasureSpec.EXACTLY) { - height = heightSize; - } else { - mPaint.setTextSize(mTitleTextSize); - mPaint.getTextBounds(mTitleText, 0, mTitleText.length(), mBounds); - float textHeight = mBounds.height(); - int desired = (int) (getPaddingTop() + textHeight + getPaddingBottom()); - height = desired; - } - setMeasuredDimension(width, height); - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/xskin/CustomViewTextColorResDeployer.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/xskin/CustomViewTextColorResDeployer.java deleted file mode 100644 index 1f1c84f..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/xskin/CustomViewTextColorResDeployer.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.android.learn.base.xskin; - -import android.view.View; - -import com.wind.me.xskinloader.entity.SkinAttr; -import com.wind.me.xskinloader.entity.SkinConfig; -import com.wind.me.xskinloader.skinInterface.ISkinResDeployer; -import com.wind.me.xskinloader.skinInterface.ISkinResourceManager; - -/** - * Created by Windy on 2018/1/10. - */ - -public class CustomViewTextColorResDeployer implements ISkinResDeployer { - - @Override - public void deploy(View view, SkinAttr skinAttr, ISkinResourceManager resource) { - if (!(view instanceof CustomTitleView)) { - return; - } - CustomTitleView titleView = (CustomTitleView) view; - if (SkinConfig.RES_TYPE_NAME_COLOR.equals(skinAttr.attrValueTypeName)) { - titleView.setTextColor(resource.getColor(skinAttr.attrValueRefId)); - } - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/xskin/ExtraAttrRegister.java b/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/xskin/ExtraAttrRegister.java deleted file mode 100644 index f4c37d3..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/xskin/ExtraAttrRegister.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.android.learn.base.xskin; - -import com.wind.me.xskinloader.SkinResDeployerFactory; -import com.wind.me.xskinloader.StyleParserFactory; - - -/** - * 扩展换肤属性和style中的换肤属性 - * Created by Windy on 2018/2/9. - */ - -public class ExtraAttrRegister { - - public static final String CUSTIOM_VIEW_TEXT_COLOR = "titleTextColor"; - - static { - //增加自定义控件的自定义属性的换肤支持 - SkinResDeployerFactory.registerDeployer(CUSTIOM_VIEW_TEXT_COLOR, new CustomViewTextColorResDeployer()); - - //增加xml里的style中指定的View background属性换肤 - StyleParserFactory.addStyleParser(new ViewBackgroundStyleParser()); - } - - //仅仅为了使类的静态方法被加载而已 - public static void init() {} - -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/speechdemo/bean/TalkBackChineseWordVo.java b/AndroidLearnProject/basemodule/src/main/java/com/android/speechdemo/bean/TalkBackChineseWordVo.java deleted file mode 100644 index 9c16442..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/speechdemo/bean/TalkBackChineseWordVo.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.android.speechdemo.bean; - -import java.io.Serializable; - -/** - * Created by LiuXing on 2016/10/27. - */ -public class TalkBackChineseWordVo implements Serializable { - /** - * word,单字 - */ - private String w; - /** - * score,分数 - */ - private int sc; - - public String getW() { - return w; - } - - public void setW(String w) { - this.w = w; - } - - public int getSc() { - return sc; - } - - public void setSc(int sc) { - this.sc = sc; - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/speechdemo/bean/TalkBackVo.java b/AndroidLearnProject/basemodule/src/main/java/com/android/speechdemo/bean/TalkBackVo.java deleted file mode 100644 index dfad4ee..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/speechdemo/bean/TalkBackVo.java +++ /dev/null @@ -1,70 +0,0 @@ -package com.android.speechdemo.bean; - -import java.io.Serializable; -import java.util.List; - -/** - * Created by LiuXing on 2016/10/27. - */ -public class TalkBackVo implements Serializable { - /** - * sentence,第几句 - */ - private int sn; - /** - * last sentence,是否最后一句 - */ - private boolean ls; - /** - * begin,开始 - */ - private int bg; - /** - * end,结束 - */ - private int ed; - /** - * words,词 - */ - private List ws; - - public int getSn() { - return sn; - } - - public void setSn(int sn) { - this.sn = sn; - } - - public boolean isLs() { - return ls; - } - - public void setLs(boolean ls) { - this.ls = ls; - } - - public int getBg() { - return bg; - } - - public void setBg(int bg) { - this.bg = bg; - } - - public int getEd() { - return ed; - } - - public void setEd(int ed) { - this.ed = ed; - } - - public List getWs() { - return ws; - } - - public void setWs(List ws) { - this.ws = ws; - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/speechdemo/bean/TalkBackWordsVo.java b/AndroidLearnProject/basemodule/src/main/java/com/android/speechdemo/bean/TalkBackWordsVo.java deleted file mode 100644 index 31f47ff..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/speechdemo/bean/TalkBackWordsVo.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.android.speechdemo.bean; - -import java.io.Serializable; -import java.util.List; - -/** - * Created by LiuXing on 2016/10/27. - */ -public class TalkBackWordsVo implements Serializable { - /** - * begin,开始 - */ - private int bg; - /** - * chinese word,中文分词 - */ - private List cw; - - public int getBg() { - return bg; - } - - public void setBg(int bg) { - this.bg = bg; - } - - public List getCw() { - return cw; - } - - public void setCw(List cw) { - this.cw = cw; - } -} - diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/speechdemo/xf/JsonParser.java b/AndroidLearnProject/basemodule/src/main/java/com/android/speechdemo/xf/JsonParser.java deleted file mode 100644 index 95b6ae3..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/speechdemo/xf/JsonParser.java +++ /dev/null @@ -1,117 +0,0 @@ -package com.android.speechdemo.xf; - -import org.json.JSONArray; -import org.json.JSONObject; -import org.json.JSONTokener; - -/** - * Json结果解析类 - */ -public class JsonParser { - - public static String parseIatResult(String json) { - StringBuffer ret = new StringBuffer(); - try { - JSONTokener tokener = new JSONTokener(json); - JSONObject joResult = new JSONObject(tokener); - - JSONArray words = joResult.getJSONArray("ws"); - for (int i = 0; i < words.length(); i++) { - // 转写结果词,默认使用第一个结果 - JSONArray items = words.getJSONObject(i).getJSONArray("cw"); - JSONObject obj = items.getJSONObject(0); - ret.append(obj.getString("w")); -// 如果需要多候选结果,解析数组其他字段 -// for(int j = 0; j < items.length(); j++) -// { -// JSONObject obj = items.getJSONObject(j); -// ret.append(obj.getString("w")); -// } - } - } catch (Exception e) { - e.printStackTrace(); - } - return ret.toString(); - } - - public static String parseGrammarResult(String json) { - StringBuffer ret = new StringBuffer(); - try { - JSONTokener tokener = new JSONTokener(json); - JSONObject joResult = new JSONObject(tokener); - - JSONArray words = joResult.getJSONArray("ws"); - for (int i = 0; i < words.length(); i++) { - JSONArray items = words.getJSONObject(i).getJSONArray("cw"); - for(int j = 0; j < items.length(); j++) - { - JSONObject obj = items.getJSONObject(j); - if(obj.getString("w").contains("nomatch")) - { - ret.append("没有匹配结果."); - return ret.toString(); - } - ret.append("【结果】" + obj.getString("w")); - ret.append("【置信度】" + obj.getInt("sc")); - ret.append("\n"); - } - } - } catch (Exception e) { - e.printStackTrace(); - ret.append("没有匹配结果."); - } - return ret.toString(); - } - - public static String parseLocalGrammarResult(String json) { - StringBuffer ret = new StringBuffer(); - try { - JSONTokener tokener = new JSONTokener(json); - JSONObject joResult = new JSONObject(tokener); - - JSONArray words = joResult.getJSONArray("ws"); - for (int i = 0; i < words.length(); i++) { - JSONArray items = words.getJSONObject(i).getJSONArray("cw"); - for(int j = 0; j < items.length(); j++) - { - JSONObject obj = items.getJSONObject(j); - if(obj.getString("w").contains("nomatch")) - { - ret.append("没有匹配结果."); - return ret.toString(); - } - ret.append("【结果】" + obj.getString("w")); - ret.append("\n"); - } - } - ret.append("【置信度】" + joResult.optInt("sc")); - - } catch (Exception e) { - e.printStackTrace(); - ret.append("没有匹配结果."); - } - return ret.toString(); - } - - public static String parseTransResult(String json, String key) { - StringBuffer ret = new StringBuffer(); - try { - JSONTokener tokener = new JSONTokener(json); - JSONObject joResult = new JSONObject(tokener); - String errorCode = joResult.optString("ret"); - if(!errorCode.equals("0")) { - return joResult.optString("errmsg"); - } - JSONObject transResult = joResult.optJSONObject("trans_result"); - ret.append(transResult.optString(key)); - /*JSONArray words = joResult.getJSONArray("results"); - for (int i = 0; i < words.length(); i++) { - JSONObject obj = words.getJSONObject(i); - ret.append(obj.getString(key)); - }*/ - } catch (Exception e) { - e.printStackTrace(); - } - return ret.toString(); - } -} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/speechdemo/xf/SettingTextWatcher.java b/AndroidLearnProject/basemodule/src/main/java/com/android/speechdemo/xf/SettingTextWatcher.java deleted file mode 100644 index 9f90f29..0000000 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/speechdemo/xf/SettingTextWatcher.java +++ /dev/null @@ -1,71 +0,0 @@ -package com.android.speechdemo.xf; - -import android.content.Context; -import android.preference.EditTextPreference; -import android.text.Editable; -import android.text.TextUtils; -import android.text.TextWatcher; -import android.widget.Toast; - -import java.util.regex.Pattern; - -/** - * 输入框输入范围控制 - */ -public class SettingTextWatcher implements TextWatcher { - private int editStart ; - private int editCount ; - private EditTextPreference mEditTextPreference; - int minValue;//最小值 - int maxValue;//最大值 - private Context mContext; - - public SettingTextWatcher(Context context, EditTextPreference e, int min, int max) { - mContext = context; - mEditTextPreference = e; - minValue = min; - maxValue = max; - } - - @Override - public void onTextChanged(CharSequence s, int start, int before, int count) { -// Log.e("demo", "onTextChanged start:"+start+" count:"+count+" before:"+before); - editStart = start; - editCount = count; - } - - @Override - public void beforeTextChanged(CharSequence s, int start, int count, int after) { -// Log.e("demo", "beforeTextChanged start:"+start+" count:"+count+" after:"+after); - } - - @Override - public void afterTextChanged(Editable s) { - if (TextUtils.isEmpty(s)) { - return; - } - String content = s.toString(); -// Log.e("demo", "content:"+content); - if (isNumeric(content)) { - int num = Integer.parseInt(content); - if (num > maxValue || num < minValue) { - s.delete(editStart, editStart+editCount); - mEditTextPreference.getEditText().setText(s); - Toast.makeText(mContext, "超出有效值范围", Toast.LENGTH_SHORT).show(); - } - }else { - s.delete(editStart, editStart+editCount); - mEditTextPreference.getEditText().setText(s); - Toast.makeText(mContext, "只能输入数字哦", Toast.LENGTH_SHORT).show(); - } - } - - /** - * 正则表达式-判断是否为数字 - */ - public static boolean isNumeric(String str){ - Pattern pattern = Pattern.compile("[0-9]*"); - return pattern.matcher(str).matches(); - } - -}; diff --git a/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-52-35-594.json b/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-52-35-594.json deleted file mode 100644 index a90c3fe..0000000 --- a/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-52-35-594.json +++ /dev/null @@ -1 +0,0 @@ -[{"pid":0,"ph":"i","name":"Memory sample","ts":1546433543145000,"args":{"JVM stats":"heap_memory_usage: 288947040\nnon_heap_memory_usage: 231813920\nloaded_class_count: 20024\nthread_count: 28\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433544798000,"args":{"JVM stats":"heap_memory_usage: 395989704\nnon_heap_memory_usage: 233523152\nloaded_class_count: 20111\nthread_count: 32\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433548702000,"args":{"JVM stats":"heap_memory_usage: 434190888\nnon_heap_memory_usage: 233618296\nloaded_class_count: 20111\nthread_count: 32\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433549008000,"args":{"JVM stats":"heap_memory_usage: 437775176\nnon_heap_memory_usage: 233622440\nloaded_class_count: 20111\nthread_count: 32\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433549113000,"args":{"JVM stats":"heap_memory_usage: 439078328\nnon_heap_memory_usage: 233622440\nloaded_class_count: 20111\nthread_count: 32\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433549115000,"args":{"JVM stats":"heap_memory_usage: 439078328\nnon_heap_memory_usage: 233622440\nloaded_class_count: 20111\nthread_count: 32\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433549115001,"args":{"JVM stats":"heap_memory_usage: 439078328\nnon_heap_memory_usage: 233622440\nloaded_class_count: 20111\nthread_count: 32\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433549117000,"args":{"JVM stats":"heap_memory_usage: 439078328\nnon_heap_memory_usage: 233622440\nloaded_class_count: 20111\nthread_count: 32\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433549118000,"args":{"JVM stats":"heap_memory_usage: 439403904\nnon_heap_memory_usage: 233622440\nloaded_class_count: 20111\nthread_count: 32\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433549244000,"args":{"JVM stats":"heap_memory_usage: 444302464\nnon_heap_memory_usage: 233623016\nloaded_class_count: 20111\nthread_count: 32\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433549471000,"args":{"JVM stats":"heap_memory_usage: 458002984\nnon_heap_memory_usage: 233743200\nloaded_class_count: 20111\nthread_count: 32\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433549472000,"args":{"JVM stats":"heap_memory_usage: 458002984\nnon_heap_memory_usage: 233745952\nloaded_class_count: 20111\nthread_count: 32\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433549496000,"args":{"JVM stats":"heap_memory_usage: 459957440\nnon_heap_memory_usage: 233756384\nloaded_class_count: 20111\nthread_count: 32\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433549499000,"args":{"JVM stats":"heap_memory_usage: 459957440\nnon_heap_memory_usage: 233765576\nloaded_class_count: 20111\nthread_count: 32\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433549507000,"args":{"JVM stats":"heap_memory_usage: 460283480\nnon_heap_memory_usage: 233761480\nloaded_class_count: 20111\nthread_count: 32\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433549510000,"args":{"JVM stats":"heap_memory_usage: 460283480\nnon_heap_memory_usage: 233761480\nloaded_class_count: 20111\nthread_count: 32\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433549521000,"args":{"JVM stats":"heap_memory_usage: 460613168\nnon_heap_memory_usage: 233761480\nloaded_class_count: 20111\nthread_count: 32\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433549523000,"args":{"JVM stats":"heap_memory_usage: 460613168\nnon_heap_memory_usage: 233761480\nloaded_class_count: 20111\nthread_count: 32\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433549846000,"args":{"JVM stats":"heap_memory_usage: 488300008\nnon_heap_memory_usage: 234017960\nloaded_class_count: 20111\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433549907000,"args":{"JVM stats":"heap_memory_usage: 492273056\nnon_heap_memory_usage: 234109048\nloaded_class_count: 20121\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433549925000,"args":{"JVM stats":"heap_memory_usage: 493575448\nnon_heap_memory_usage: 234131064\nloaded_class_count: 20121\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433549928000,"args":{"JVM stats":"heap_memory_usage: 493575448\nnon_heap_memory_usage: 234131064\nloaded_class_count: 20121\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433549929000,"args":{"JVM stats":"heap_memory_usage: 493901024\nnon_heap_memory_usage: 234131064\nloaded_class_count: 20121\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433549952000,"args":{"JVM stats":"heap_memory_usage: 494243024\nnon_heap_memory_usage: 234131064\nloaded_class_count: 20121\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433549989000,"args":{"JVM stats":"heap_memory_usage: 496196928\nnon_heap_memory_usage: 234135352\nloaded_class_count: 20121\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433550022000,"args":{"JVM stats":"heap_memory_usage: 498801784\nnon_heap_memory_usage: 234057848\nloaded_class_count: 20121\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433550024000,"args":{"JVM stats":"heap_memory_usage: 499131472\nnon_heap_memory_usage: 234057848\nloaded_class_count: 20121\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433550100000,"args":{"JVM stats":"heap_memory_usage: 504016824\nnon_heap_memory_usage: 234012704\nloaded_class_count: 20121\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433550127000,"args":{"JVM stats":"heap_memory_usage: 505646232\nnon_heap_memory_usage: 234012704\nloaded_class_count: 20121\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433550129000,"args":{"JVM stats":"heap_memory_usage: 505646232\nnon_heap_memory_usage: 234012704\nloaded_class_count: 20121\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433550162000,"args":{"JVM stats":"heap_memory_usage: 507602704\nnon_heap_memory_usage: 233947288\nloaded_class_count: 20121\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433550167000,"args":{"JVM stats":"heap_memory_usage: 508258000\nnon_heap_memory_usage: 233962328\nloaded_class_count: 20121\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433550176000,"args":{"JVM stats":"heap_memory_usage: 508258000\nnon_heap_memory_usage: 233963032\nloaded_class_count: 20121\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433550178000,"args":{"JVM stats":"heap_memory_usage: 508258000\nnon_heap_memory_usage: 233963032\nloaded_class_count: 20121\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433550181000,"args":{"JVM stats":"heap_memory_usage: 508258000\nnon_heap_memory_usage: 233964152\nloaded_class_count: 20121\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433550182000,"args":{"JVM stats":"heap_memory_usage: 508584104\nnon_heap_memory_usage: 233964152\nloaded_class_count: 20121\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433552628000,"args":{"JVM stats":"heap_memory_usage: 343874656\nnon_heap_memory_usage: 234447664\nloaded_class_count: 20121\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 163\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433552638000,"args":{"JVM stats":"heap_memory_usage: 345682224\nnon_heap_memory_usage: 234428792\nloaded_class_count: 20124\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433552756000,"args":{"JVM stats":"heap_memory_usage: 359046352\nnon_heap_memory_usage: 234118448\nloaded_class_count: 20137\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433552769000,"args":{"JVM stats":"heap_memory_usage: 359228648\nnon_heap_memory_usage: 234205552\nloaded_class_count: 20144\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433552774000,"args":{"JVM stats":"heap_memory_usage: 359936656\nnon_heap_memory_usage: 234184112\nloaded_class_count: 20144\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433552775000,"args":{"JVM stats":"heap_memory_usage: 359936656\nnon_heap_memory_usage: 234184112\nloaded_class_count: 20144\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433552777000,"args":{"JVM stats":"heap_memory_usage: 359936656\nnon_heap_memory_usage: 234185096\nloaded_class_count: 20144\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433552778000,"args":{"JVM stats":"heap_memory_usage: 359936656\nnon_heap_memory_usage: 234189064\nloaded_class_count: 20144\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433552854000,"args":{"JVM stats":"heap_memory_usage: 368031904\nnon_heap_memory_usage: 234100696\nloaded_class_count: 20144\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433553269000,"args":{"JVM stats":"heap_memory_usage: 433920512\nnon_heap_memory_usage: 234229800\nloaded_class_count: 20144\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433553270000,"args":{"JVM stats":"heap_memory_usage: 433920512\nnon_heap_memory_usage: 234229800\nloaded_class_count: 20144\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433555577000,"args":{"JVM stats":"heap_memory_usage: 444221928\nnon_heap_memory_usage: 234487136\nloaded_class_count: 20155\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433555595000,"args":{"JVM stats":"heap_memory_usage: 452096416\nnon_heap_memory_usage: 234482432\nloaded_class_count: 20155\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":1,"tid":12,"id":2,"name":"base plugin project configure","args":{"span_id":"2","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433543148000,"dur":70000},{"pid":1,"tid":12,"id":3,"name":"base plugin project base extension creation","args":{"span_id":"3","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433543218000,"dur":33000},{"pid":1,"tid":12,"id":5,"name":"task manager create tasks","args":{"span_id":"5","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433543251000,"dur":9000},{"pid":1,"tid":12,"id":4,"name":"base plugin project tasks creation","args":{"span_id":"4","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433543251000,"dur":9000},{"pid":1,"tid":12,"id":8,"name":"variant manager create variants","args":{"span_id":"8","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544017000,"dur":61000},{"pid":1,"tid":12,"id":9,"name":"variant manager create tests tasks","args":{"span_id":"9","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544078000,"dur":10000},{"pid":1,"tid":12,"id":11,"name":"app task manager create merge manifest task","args":{"span_id":"11","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544094000,"dur":11000},{"pid":1,"tid":12,"id":12,"name":"app task manager create generate res values task","args":{"span_id":"12","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544105000,"dur":1000},{"pid":1,"tid":12,"id":13,"name":"app task manager create create renderscript task","args":{"span_id":"13","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544106000,"dur":4000},{"pid":1,"tid":12,"id":14,"name":"app task manager create merge resources task","args":{"span_id":"14","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544110000,"dur":3000},{"pid":1,"tid":12,"id":15,"name":"app task manager create merge assets task","args":{"span_id":"15","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544113000,"dur":2000},{"pid":1,"tid":12,"id":16,"name":"app task manager create build config task","args":{"span_id":"16","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544115000,"dur":1000},{"pid":1,"tid":12,"id":17,"name":"app task manager create process res task","args":{"span_id":"17","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544116000,"dur":11000},{"pid":1,"tid":12,"id":18,"name":"app task manager create aidl task","args":{"span_id":"18","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544127000,"dur":1000},{"pid":1,"tid":12,"id":19,"name":"app task manager create shader task","args":{"span_id":"19","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544128000,"dur":1000},{"pid":1,"tid":12,"id":20,"name":"app task manager create ndk task","args":{"span_id":"20","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544129000,"dur":1000},{"pid":1,"tid":12,"id":21,"name":"app task manager create external native build task","args":{"span_id":"21","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544130000,"dur":100},{"pid":1,"tid":12,"id":22,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"22","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544130000,"dur":3000},{"pid":1,"tid":12,"id":23,"name":"app task manager create compile task","args":{"span_id":"23","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544133000,"dur":12000},{"pid":1,"tid":12,"id":24,"name":"app task manager create packaging task","args":{"span_id":"24","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544145000,"dur":6000},{"pid":1,"tid":12,"id":25,"name":"app task manager create lint task","args":{"span_id":"25","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544151000,"dur":1000},{"pid":1,"tid":12,"id":10,"name":"variant manager create tasks for variant","args":{"span_id":"10","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544088000,"dur":64000},{"pid":1,"tid":12,"id":26,"name":"variant manager create tasks for variant","args":{"span_id":"26","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544152000,"dur":14000},{"pid":1,"tid":12,"id":28,"name":"app task manager create merge manifest task","args":{"span_id":"28","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544168000,"dur":1000},{"pid":1,"tid":12,"id":29,"name":"app task manager create generate res values task","args":{"span_id":"29","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544169000,"dur":100},{"pid":1,"tid":12,"id":30,"name":"app task manager create create renderscript task","args":{"span_id":"30","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544169000,"dur":100},{"pid":1,"tid":12,"id":31,"name":"app task manager create merge resources task","args":{"span_id":"31","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544169000,"dur":1000},{"pid":1,"tid":12,"id":32,"name":"app task manager create merge assets task","args":{"span_id":"32","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544170000,"dur":100},{"pid":1,"tid":12,"id":33,"name":"app task manager create build config task","args":{"span_id":"33","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544171000,"dur":100},{"pid":1,"tid":12,"id":34,"name":"app task manager create process res task","args":{"span_id":"34","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544171000,"dur":2000},{"pid":1,"tid":12,"id":35,"name":"app task manager create aidl task","args":{"span_id":"35","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544173000,"dur":100},{"pid":1,"tid":12,"id":36,"name":"app task manager create shader task","args":{"span_id":"36","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544173000,"dur":3000},{"pid":1,"tid":12,"id":37,"name":"app task manager create ndk task","args":{"span_id":"37","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544176000,"dur":2000},{"pid":1,"tid":12,"id":38,"name":"app task manager create external native build task","args":{"span_id":"38","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544178000,"dur":100},{"pid":1,"tid":12,"id":39,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"39","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544178000,"dur":1000},{"pid":1,"tid":12,"id":40,"name":"app task manager create compile task","args":{"span_id":"40","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544179000,"dur":2000},{"pid":1,"tid":12,"id":41,"name":"app task manager create packaging task","args":{"span_id":"41","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544182000,"dur":1000},{"pid":1,"tid":12,"id":42,"name":"app task manager create lint task","args":{"span_id":"42","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544183000,"dur":100},{"pid":1,"tid":12,"id":27,"name":"variant manager create tasks for variant","args":{"span_id":"27","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544166000,"dur":17000},{"pid":1,"tid":12,"id":43,"name":"variant manager create tasks for variant","args":{"span_id":"43","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544183000,"dur":4000},{"pid":1,"tid":12,"id":44,"name":"variant manager create tasks for variant","args":{"span_id":"44","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544187000,"dur":19000},{"pid":1,"tid":12,"id":46,"name":"app task manager create merge manifest task","args":{"span_id":"46","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544207000,"dur":1000},{"pid":1,"tid":12,"id":47,"name":"app task manager create generate res values task","args":{"span_id":"47","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544208000,"dur":100},{"pid":1,"tid":12,"id":48,"name":"app task manager create create renderscript task","args":{"span_id":"48","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544208000,"dur":100},{"pid":1,"tid":12,"id":49,"name":"app task manager create merge resources task","args":{"span_id":"49","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544208000,"dur":1000},{"pid":1,"tid":12,"id":50,"name":"app task manager create merge assets task","args":{"span_id":"50","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544209000,"dur":100},{"pid":1,"tid":12,"id":51,"name":"app task manager create build config task","args":{"span_id":"51","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544209000,"dur":100},{"pid":1,"tid":12,"id":52,"name":"app task manager create process res task","args":{"span_id":"52","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544209000,"dur":2000},{"pid":1,"tid":12,"id":53,"name":"app task manager create aidl task","args":{"span_id":"53","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544211000,"dur":100},{"pid":1,"tid":12,"id":54,"name":"app task manager create shader task","args":{"span_id":"54","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544211000,"dur":100},{"pid":1,"tid":12,"id":55,"name":"app task manager create ndk task","args":{"span_id":"55","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544211000,"dur":100},{"pid":1,"tid":12,"id":56,"name":"app task manager create external native build task","args":{"span_id":"56","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544211000,"dur":100},{"pid":1,"tid":12,"id":57,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"57","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544211000,"dur":1000},{"pid":1,"tid":12,"id":58,"name":"app task manager create compile task","args":{"span_id":"58","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544212000,"dur":2000},{"pid":1,"tid":12,"id":59,"name":"app task manager create packaging task","args":{"span_id":"59","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544214000,"dur":2000},{"pid":1,"tid":12,"id":60,"name":"app task manager create lint task","args":{"span_id":"60","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544216000,"dur":100},{"pid":1,"tid":12,"id":45,"name":"variant manager create tasks for variant","args":{"span_id":"45","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544206000,"dur":10000},{"pid":1,"tid":12,"id":61,"name":"variant manager create tasks for variant","args":{"span_id":"61","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544216000,"dur":6000},{"pid":1,"tid":12,"id":63,"name":"app task manager create merge manifest task","args":{"span_id":"63","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544223000,"dur":100},{"pid":1,"tid":12,"id":64,"name":"app task manager create generate res values task","args":{"span_id":"64","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544223000,"dur":100},{"pid":1,"tid":12,"id":65,"name":"app task manager create create renderscript task","args":{"span_id":"65","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544223000,"dur":1000},{"pid":1,"tid":12,"id":66,"name":"app task manager create merge resources task","args":{"span_id":"66","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544224000,"dur":100},{"pid":1,"tid":12,"id":67,"name":"app task manager create merge assets task","args":{"span_id":"67","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544224000,"dur":100},{"pid":1,"tid":12,"id":68,"name":"app task manager create build config task","args":{"span_id":"68","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544224000,"dur":100},{"pid":1,"tid":12,"id":69,"name":"app task manager create process res task","args":{"span_id":"69","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544224000,"dur":1000},{"pid":1,"tid":12,"id":70,"name":"app task manager create aidl task","args":{"span_id":"70","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544225000,"dur":1000},{"pid":1,"tid":12,"id":71,"name":"app task manager create shader task","args":{"span_id":"71","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544226000,"dur":100},{"pid":1,"tid":12,"id":72,"name":"app task manager create ndk task","args":{"span_id":"72","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544226000,"dur":100},{"pid":1,"tid":12,"id":73,"name":"app task manager create external native build task","args":{"span_id":"73","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544226000,"dur":100},{"pid":1,"tid":12,"id":74,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"74","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544226000,"dur":1000},{"pid":1,"tid":12,"id":75,"name":"app task manager create compile task","args":{"span_id":"75","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544227000,"dur":2000},{"pid":1,"tid":12,"id":76,"name":"app task manager create packaging task","args":{"span_id":"76","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544229000,"dur":1000},{"pid":1,"tid":12,"id":77,"name":"app task manager create lint task","args":{"span_id":"77","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544230000,"dur":100},{"pid":1,"tid":12,"id":62,"name":"variant manager create tasks for variant","args":{"span_id":"62","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544222000,"dur":8000},{"pid":1,"tid":12,"id":78,"name":"variant manager create tasks for variant","args":{"span_id":"78","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544230000,"dur":5000},{"pid":1,"tid":12,"id":79,"name":"variant manager create tasks for variant","args":{"span_id":"79","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544235000,"dur":11000},{"pid":1,"tid":12,"id":81,"name":"app task manager create merge manifest task","args":{"span_id":"81","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544248000,"dur":2000},{"pid":1,"tid":12,"id":82,"name":"app task manager create generate res values task","args":{"span_id":"82","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544250000,"dur":100},{"pid":1,"tid":12,"id":83,"name":"app task manager create create renderscript task","args":{"span_id":"83","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544250000,"dur":100},{"pid":1,"tid":12,"id":84,"name":"app task manager create merge resources task","args":{"span_id":"84","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544250000,"dur":1000},{"pid":1,"tid":12,"id":85,"name":"app task manager create merge assets task","args":{"span_id":"85","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544251000,"dur":100},{"pid":1,"tid":12,"id":86,"name":"app task manager create build config task","args":{"span_id":"86","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544251000,"dur":100},{"pid":1,"tid":12,"id":87,"name":"app task manager create process res task","args":{"span_id":"87","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544251000,"dur":2000},{"pid":1,"tid":12,"id":88,"name":"app task manager create aidl task","args":{"span_id":"88","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544253000,"dur":1000},{"pid":1,"tid":12,"id":89,"name":"app task manager create shader task","args":{"span_id":"89","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544254000,"dur":100},{"pid":1,"tid":12,"id":90,"name":"app task manager create ndk task","args":{"span_id":"90","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544254000,"dur":1000},{"pid":1,"tid":12,"id":91,"name":"app task manager create external native build task","args":{"span_id":"91","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544255000,"dur":100},{"pid":1,"tid":12,"id":92,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"92","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544255000,"dur":100},{"pid":1,"tid":12,"id":93,"name":"app task manager create compile task","args":{"span_id":"93","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544255000,"dur":1000},{"pid":1,"tid":12,"id":94,"name":"app task manager create packaging task","args":{"span_id":"94","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544256000,"dur":1000},{"pid":1,"tid":12,"id":95,"name":"app task manager create lint task","args":{"span_id":"95","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544258000,"dur":100},{"pid":1,"tid":12,"id":80,"name":"variant manager create tasks for variant","args":{"span_id":"80","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544246000,"dur":12000},{"pid":1,"tid":12,"id":96,"name":"variant manager create tasks for variant","args":{"span_id":"96","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544258000,"dur":5000},{"pid":1,"tid":12,"id":98,"name":"app task manager create merge manifest task","args":{"span_id":"98","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544264000,"dur":1000},{"pid":1,"tid":12,"id":99,"name":"app task manager create generate res values task","args":{"span_id":"99","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544265000,"dur":1000},{"pid":1,"tid":12,"id":100,"name":"app task manager create create renderscript task","args":{"span_id":"100","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544266000,"dur":100},{"pid":1,"tid":12,"id":101,"name":"app task manager create merge resources task","args":{"span_id":"101","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544266000,"dur":100},{"pid":1,"tid":12,"id":102,"name":"app task manager create merge assets task","args":{"span_id":"102","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544266000,"dur":1000},{"pid":1,"tid":12,"id":103,"name":"app task manager create build config task","args":{"span_id":"103","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544267000,"dur":100},{"pid":1,"tid":12,"id":104,"name":"app task manager create process res task","args":{"span_id":"104","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544267000,"dur":3000},{"pid":1,"tid":12,"id":105,"name":"app task manager create aidl task","args":{"span_id":"105","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544270000,"dur":100},{"pid":1,"tid":12,"id":106,"name":"app task manager create shader task","args":{"span_id":"106","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544270000,"dur":1000},{"pid":1,"tid":12,"id":107,"name":"app task manager create ndk task","args":{"span_id":"107","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544271000,"dur":100},{"pid":1,"tid":12,"id":108,"name":"app task manager create external native build task","args":{"span_id":"108","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544271000,"dur":100},{"pid":1,"tid":12,"id":109,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"109","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544271000,"dur":100},{"pid":1,"tid":12,"id":110,"name":"app task manager create compile task","args":{"span_id":"110","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544271000,"dur":3000},{"pid":1,"tid":12,"id":111,"name":"app task manager create packaging task","args":{"span_id":"111","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544275000,"dur":100},{"pid":1,"tid":12,"id":112,"name":"app task manager create lint task","args":{"span_id":"112","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544276000,"dur":100},{"pid":1,"tid":12,"id":97,"name":"variant manager create tasks for variant","args":{"span_id":"97","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544263000,"dur":13000},{"pid":1,"tid":12,"id":113,"name":"variant manager create tasks for variant","args":{"span_id":"113","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544276000,"dur":5000},{"pid":1,"tid":12,"id":114,"name":"variant manager create tasks for variant","args":{"span_id":"114","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544281000,"dur":11000},{"pid":1,"tid":12,"id":116,"name":"app task manager create merge manifest task","args":{"span_id":"116","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544294000,"dur":100},{"pid":1,"tid":12,"id":117,"name":"app task manager create generate res values task","args":{"span_id":"117","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544294000,"dur":100},{"pid":1,"tid":12,"id":118,"name":"app task manager create create renderscript task","args":{"span_id":"118","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544294000,"dur":1000},{"pid":1,"tid":12,"id":119,"name":"app task manager create merge resources task","args":{"span_id":"119","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544295000,"dur":100},{"pid":1,"tid":12,"id":120,"name":"app task manager create merge assets task","args":{"span_id":"120","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544295000,"dur":100},{"pid":1,"tid":12,"id":121,"name":"app task manager create build config task","args":{"span_id":"121","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544295000,"dur":100},{"pid":1,"tid":12,"id":122,"name":"app task manager create process res task","args":{"span_id":"122","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544295000,"dur":1000},{"pid":1,"tid":12,"id":123,"name":"app task manager create aidl task","args":{"span_id":"123","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544296000,"dur":100},{"pid":1,"tid":12,"id":124,"name":"app task manager create shader task","args":{"span_id":"124","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544296000,"dur":1000},{"pid":1,"tid":12,"id":125,"name":"app task manager create ndk task","args":{"span_id":"125","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544297000,"dur":100},{"pid":1,"tid":12,"id":126,"name":"app task manager create external native build task","args":{"span_id":"126","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544297000,"dur":100},{"pid":1,"tid":12,"id":127,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"127","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544297000,"dur":100},{"pid":1,"tid":12,"id":128,"name":"app task manager create compile task","args":{"span_id":"128","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544297000,"dur":5000},{"pid":1,"tid":12,"id":129,"name":"app task manager create packaging task","args":{"span_id":"129","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544302000,"dur":2000},{"pid":1,"tid":12,"id":130,"name":"app task manager create lint task","args":{"span_id":"130","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544304000,"dur":100},{"pid":1,"tid":12,"id":115,"name":"variant manager create tasks for variant","args":{"span_id":"115","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544292000,"dur":12000},{"pid":1,"tid":12,"id":131,"name":"variant manager create tasks for variant","args":{"span_id":"131","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544304000,"dur":4000},{"pid":1,"tid":12,"id":133,"name":"app task manager create merge manifest task","args":{"span_id":"133","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544309000,"dur":1000},{"pid":1,"tid":12,"id":134,"name":"app task manager create generate res values task","args":{"span_id":"134","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544310000,"dur":100},{"pid":1,"tid":12,"id":135,"name":"app task manager create create renderscript task","args":{"span_id":"135","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544310000,"dur":100},{"pid":1,"tid":12,"id":136,"name":"app task manager create merge resources task","args":{"span_id":"136","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544310000,"dur":100},{"pid":1,"tid":12,"id":137,"name":"app task manager create merge assets task","args":{"span_id":"137","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544310000,"dur":1000},{"pid":1,"tid":12,"id":138,"name":"app task manager create build config task","args":{"span_id":"138","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544311000,"dur":100},{"pid":1,"tid":12,"id":139,"name":"app task manager create process res task","args":{"span_id":"139","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544311000,"dur":2000},{"pid":1,"tid":12,"id":140,"name":"app task manager create aidl task","args":{"span_id":"140","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544313000,"dur":100},{"pid":1,"tid":12,"id":141,"name":"app task manager create shader task","args":{"span_id":"141","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544313000,"dur":100},{"pid":1,"tid":12,"id":142,"name":"app task manager create ndk task","args":{"span_id":"142","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544313000,"dur":1000},{"pid":1,"tid":12,"id":143,"name":"app task manager create external native build task","args":{"span_id":"143","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544314000,"dur":100},{"pid":1,"tid":12,"id":144,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"144","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544314000,"dur":100},{"pid":1,"tid":12,"id":145,"name":"app task manager create compile task","args":{"span_id":"145","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544314000,"dur":3000},{"pid":1,"tid":12,"id":146,"name":"app task manager create packaging task","args":{"span_id":"146","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544317000,"dur":1000},{"pid":1,"tid":12,"id":147,"name":"app task manager create lint task","args":{"span_id":"147","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544318000,"dur":100},{"pid":1,"tid":12,"id":132,"name":"variant manager create tasks for variant","args":{"span_id":"132","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544308000,"dur":10000},{"pid":1,"tid":12,"id":148,"name":"variant manager create tasks for variant","args":{"span_id":"148","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544318000,"dur":9000},{"pid":1,"tid":12,"id":149,"name":"variant manager create tasks for variant","args":{"span_id":"149","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544327000,"dur":14000},{"pid":1,"tid":12,"id":151,"name":"app task manager create merge manifest task","args":{"span_id":"151","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544342000,"dur":100},{"pid":1,"tid":12,"id":152,"name":"app task manager create generate res values task","args":{"span_id":"152","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544342000,"dur":1000},{"pid":1,"tid":12,"id":153,"name":"app task manager create create renderscript task","args":{"span_id":"153","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544343000,"dur":100},{"pid":1,"tid":12,"id":154,"name":"app task manager create merge resources task","args":{"span_id":"154","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544343000,"dur":100},{"pid":1,"tid":12,"id":155,"name":"app task manager create merge assets task","args":{"span_id":"155","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544343000,"dur":100},{"pid":1,"tid":12,"id":156,"name":"app task manager create build config task","args":{"span_id":"156","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544343000,"dur":100},{"pid":1,"tid":12,"id":157,"name":"app task manager create process res task","args":{"span_id":"157","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544343000,"dur":2000},{"pid":1,"tid":12,"id":158,"name":"app task manager create aidl task","args":{"span_id":"158","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544345000,"dur":100},{"pid":1,"tid":12,"id":159,"name":"app task manager create shader task","args":{"span_id":"159","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544345000,"dur":100},{"pid":1,"tid":12,"id":160,"name":"app task manager create ndk task","args":{"span_id":"160","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544345000,"dur":100},{"pid":1,"tid":12,"id":161,"name":"app task manager create external native build task","args":{"span_id":"161","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544345000,"dur":100},{"pid":1,"tid":12,"id":162,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"162","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544345000,"dur":1000},{"pid":1,"tid":12,"id":163,"name":"app task manager create compile task","args":{"span_id":"163","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544346000,"dur":5000},{"pid":1,"tid":12,"id":164,"name":"app task manager create packaging task","args":{"span_id":"164","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544351000,"dur":2000},{"pid":1,"tid":12,"id":165,"name":"app task manager create lint task","args":{"span_id":"165","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544353000,"dur":100},{"pid":1,"tid":12,"id":150,"name":"variant manager create tasks for variant","args":{"span_id":"150","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544341000,"dur":12000},{"pid":1,"tid":12,"id":166,"name":"variant manager create tasks for variant","args":{"span_id":"166","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544353000,"dur":5000},{"pid":1,"tid":12,"id":168,"name":"app task manager create merge manifest task","args":{"span_id":"168","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544359000,"dur":100},{"pid":1,"tid":12,"id":169,"name":"app task manager create generate res values task","args":{"span_id":"169","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544360000,"dur":100},{"pid":1,"tid":12,"id":170,"name":"app task manager create create renderscript task","args":{"span_id":"170","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544360000,"dur":100},{"pid":1,"tid":12,"id":171,"name":"app task manager create merge resources task","args":{"span_id":"171","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544360000,"dur":100},{"pid":1,"tid":12,"id":172,"name":"app task manager create merge assets task","args":{"span_id":"172","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544360000,"dur":100},{"pid":1,"tid":12,"id":173,"name":"app task manager create build config task","args":{"span_id":"173","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544360000,"dur":100},{"pid":1,"tid":12,"id":174,"name":"app task manager create process res task","args":{"span_id":"174","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544360000,"dur":2000},{"pid":1,"tid":12,"id":175,"name":"app task manager create aidl task","args":{"span_id":"175","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544362000,"dur":100},{"pid":1,"tid":12,"id":176,"name":"app task manager create shader task","args":{"span_id":"176","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544362000,"dur":100},{"pid":1,"tid":12,"id":177,"name":"app task manager create ndk task","args":{"span_id":"177","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544362000,"dur":100},{"pid":1,"tid":12,"id":178,"name":"app task manager create external native build task","args":{"span_id":"178","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544362000,"dur":100},{"pid":1,"tid":12,"id":179,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"179","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544362000,"dur":1000},{"pid":1,"tid":12,"id":180,"name":"app task manager create compile task","args":{"span_id":"180","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544363000,"dur":3000},{"pid":1,"tid":12,"id":181,"name":"app task manager create packaging task","args":{"span_id":"181","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544366000,"dur":1000},{"pid":1,"tid":12,"id":182,"name":"app task manager create lint task","args":{"span_id":"182","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544367000,"dur":1000},{"pid":1,"tid":12,"id":167,"name":"variant manager create tasks for variant","args":{"span_id":"167","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544358000,"dur":10000},{"pid":1,"tid":12,"id":183,"name":"variant manager create tasks for variant","args":{"span_id":"183","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544368000,"dur":5000},{"pid":1,"tid":12,"id":184,"name":"variant manager create tasks for variant","args":{"span_id":"184","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544373000,"dur":12000},{"pid":1,"tid":12,"id":7,"name":"variant manager create android tasks","args":{"span_id":"7","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544015000,"dur":378000},{"pid":1,"tid":12,"id":185,"name":"variant manager external native config values","args":{"span_id":"185","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544394000,"dur":100},{"pid":1,"tid":12,"id":6,"name":"base plugin create android tasks","args":{"span_id":"6","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433543291000,"dur":1103000},{"pid":1,"tid":12,"id":186,"name":"base plugin project configure","args":{"span_id":"186","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544406000,"dur":5000},{"pid":1,"tid":12,"id":187,"name":"base plugin project base extension creation","args":{"span_id":"187","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544411000,"dur":8000},{"pid":1,"tid":12,"id":189,"name":"task manager create tasks","args":{"span_id":"189","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544419000,"dur":1000},{"pid":1,"tid":12,"id":188,"name":"base plugin project tasks creation","args":{"span_id":"188","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544419000,"dur":1000},{"pid":1,"tid":12,"id":192,"name":"variant manager create variants","args":{"span_id":"192","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544432000,"dur":6000},{"pid":1,"tid":12,"id":193,"name":"variant manager create tests tasks","args":{"span_id":"193","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544438000,"dur":100},{"pid":1,"tid":12,"id":195,"name":"lib task manager create generate res values task","args":{"span_id":"195","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544439000,"dur":100},{"pid":1,"tid":12,"id":196,"name":"lib task manager create merge manifest task","args":{"span_id":"196","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544439000,"dur":2000},{"pid":1,"tid":12,"id":197,"name":"lib task manager create create renderscript task","args":{"span_id":"197","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544441000,"dur":100},{"pid":1,"tid":12,"id":198,"name":"lib task manager create merge resources task","args":{"span_id":"198","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544441000,"dur":1000},{"pid":1,"tid":12,"id":199,"name":"lib task manager create merge assets task","args":{"span_id":"199","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544442000,"dur":100},{"pid":1,"tid":12,"id":200,"name":"lib task manager create build config task","args":{"span_id":"200","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544442000,"dur":100},{"pid":1,"tid":12,"id":201,"name":"lib task manager create process res task","args":{"span_id":"201","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544442000,"dur":4000},{"pid":1,"tid":12,"id":202,"name":"lib task manager create aidl task","args":{"span_id":"202","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544446000,"dur":100},{"pid":1,"tid":12,"id":203,"name":"lib task manager create shader task","args":{"span_id":"203","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544446000,"dur":100},{"pid":1,"tid":12,"id":204,"name":"lib task manager create compile task","args":{"span_id":"204","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544446000,"dur":1000},{"pid":1,"tid":12,"id":205,"name":"lib task manager create ndk task","args":{"span_id":"205","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544447000,"dur":100},{"pid":1,"tid":12,"id":206,"name":"lib task manager create external native build task","args":{"span_id":"206","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544447000,"dur":100},{"pid":1,"tid":12,"id":207,"name":"lib task manager create packaging task","args":{"span_id":"207","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544448000,"dur":100},{"pid":1,"tid":12,"id":208,"name":"lib task manager create merge proguard file task","args":{"span_id":"208","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544448000,"dur":1000},{"pid":1,"tid":12,"id":209,"name":"lib task manager create post compilation task","args":{"span_id":"209","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544454000,"dur":7000},{"pid":1,"tid":12,"id":210,"name":"lib task manager create lint task","args":{"span_id":"210","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544461000,"dur":100},{"pid":1,"tid":12,"id":194,"name":"variant manager create tasks for variant","args":{"span_id":"194","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544438000,"dur":23000},{"pid":1,"tid":12,"id":211,"name":"variant manager create tasks for variant","args":{"span_id":"211","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544461000,"dur":21000},{"pid":1,"tid":12,"id":213,"name":"lib task manager create generate res values task","args":{"span_id":"213","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544485000,"dur":100},{"pid":1,"tid":12,"id":214,"name":"lib task manager create merge manifest task","args":{"span_id":"214","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544485000,"dur":1000},{"pid":1,"tid":12,"id":215,"name":"lib task manager create create renderscript task","args":{"span_id":"215","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544486000,"dur":100},{"pid":1,"tid":12,"id":216,"name":"lib task manager create merge resources task","args":{"span_id":"216","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544486000,"dur":100},{"pid":1,"tid":12,"id":217,"name":"lib task manager create merge assets task","args":{"span_id":"217","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544487000,"dur":100},{"pid":1,"tid":12,"id":218,"name":"lib task manager create build config task","args":{"span_id":"218","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544487000,"dur":100},{"pid":1,"tid":12,"id":219,"name":"lib task manager create process res task","args":{"span_id":"219","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544487000,"dur":4000},{"pid":1,"tid":12,"id":220,"name":"lib task manager create aidl task","args":{"span_id":"220","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544491000,"dur":100},{"pid":1,"tid":12,"id":221,"name":"lib task manager create shader task","args":{"span_id":"221","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544491000,"dur":1000},{"pid":1,"tid":12,"id":222,"name":"lib task manager create compile task","args":{"span_id":"222","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544492000,"dur":1000},{"pid":1,"tid":12,"id":223,"name":"lib task manager create ndk task","args":{"span_id":"223","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544493000,"dur":100},{"pid":1,"tid":12,"id":224,"name":"lib task manager create external native build task","args":{"span_id":"224","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544493000,"dur":100},{"pid":1,"tid":12,"id":225,"name":"lib task manager create packaging task","args":{"span_id":"225","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544494000,"dur":1000},{"pid":1,"tid":12,"id":226,"name":"lib task manager create merge proguard file task","args":{"span_id":"226","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544495000,"dur":1000},{"pid":1,"tid":12,"id":227,"name":"lib task manager create post compilation task","args":{"span_id":"227","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544496000,"dur":3000},{"pid":1,"tid":12,"id":228,"name":"lib task manager create lint task","args":{"span_id":"228","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544501000,"dur":1000},{"pid":1,"tid":12,"id":212,"name":"variant manager create tasks for variant","args":{"span_id":"212","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544482000,"dur":20000},{"pid":1,"tid":12,"id":229,"name":"variant manager create tasks for variant","args":{"span_id":"229","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544502000,"dur":4000},{"pid":1,"tid":12,"id":230,"name":"variant manager create tasks for variant","args":{"span_id":"230","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544506000,"dur":9000},{"pid":1,"tid":12,"id":191,"name":"variant manager create android tasks","args":{"span_id":"191","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544432000,"dur":84000},{"pid":1,"tid":12,"id":231,"name":"variant manager external native config values","args":{"span_id":"231","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544517000,"dur":100},{"pid":1,"tid":12,"id":190,"name":"base plugin create android tasks","args":{"span_id":"190","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544430000,"dur":87000},{"pid":1,"tid":12,"id":232,"name":"base plugin project configure","args":{"span_id":"232","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544542000,"dur":8000},{"pid":1,"tid":12,"id":233,"name":"base plugin project base extension creation","args":{"span_id":"233","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544550000,"dur":7000},{"pid":1,"tid":12,"id":235,"name":"task manager create tasks","args":{"span_id":"235","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544557000,"dur":1000},{"pid":1,"tid":12,"id":234,"name":"base plugin project tasks creation","args":{"span_id":"234","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544557000,"dur":1000},{"pid":1,"tid":12,"id":238,"name":"variant manager create variants","args":{"span_id":"238","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544561000,"dur":4000},{"pid":1,"tid":12,"id":239,"name":"variant manager create tests tasks","args":{"span_id":"239","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544565000,"dur":100},{"pid":1,"tid":12,"id":241,"name":"lib task manager create generate res values task","args":{"span_id":"241","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544567000,"dur":100},{"pid":1,"tid":12,"id":242,"name":"lib task manager create merge manifest task","args":{"span_id":"242","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544567000,"dur":100},{"pid":1,"tid":12,"id":243,"name":"lib task manager create create renderscript task","args":{"span_id":"243","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544567000,"dur":100},{"pid":1,"tid":12,"id":244,"name":"lib task manager create merge resources task","args":{"span_id":"244","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544567000,"dur":1000},{"pid":1,"tid":12,"id":245,"name":"lib task manager create merge assets task","args":{"span_id":"245","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544568000,"dur":100},{"pid":1,"tid":12,"id":246,"name":"lib task manager create build config task","args":{"span_id":"246","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544568000,"dur":100},{"pid":1,"tid":12,"id":247,"name":"lib task manager create process res task","args":{"span_id":"247","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544568000,"dur":4000},{"pid":1,"tid":12,"id":248,"name":"lib task manager create aidl task","args":{"span_id":"248","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544572000,"dur":1000},{"pid":1,"tid":12,"id":249,"name":"lib task manager create shader task","args":{"span_id":"249","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544573000,"dur":100},{"pid":1,"tid":12,"id":250,"name":"lib task manager create compile task","args":{"span_id":"250","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544573000,"dur":1000},{"pid":1,"tid":12,"id":251,"name":"lib task manager create ndk task","args":{"span_id":"251","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544574000,"dur":100},{"pid":1,"tid":12,"id":252,"name":"lib task manager create external native build task","args":{"span_id":"252","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544574000,"dur":100},{"pid":1,"tid":12,"id":253,"name":"lib task manager create packaging task","args":{"span_id":"253","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544574000,"dur":1000},{"pid":1,"tid":12,"id":254,"name":"lib task manager create merge proguard file task","args":{"span_id":"254","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544575000,"dur":100},{"pid":1,"tid":12,"id":255,"name":"lib task manager create post compilation task","args":{"span_id":"255","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544575000,"dur":2000},{"pid":1,"tid":12,"id":256,"name":"lib task manager create lint task","args":{"span_id":"256","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544577000,"dur":100},{"pid":1,"tid":12,"id":240,"name":"variant manager create tasks for variant","args":{"span_id":"240","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544565000,"dur":12000},{"pid":1,"tid":12,"id":257,"name":"variant manager create tasks for variant","args":{"span_id":"257","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544577000,"dur":6000},{"pid":1,"tid":12,"id":259,"name":"lib task manager create generate res values task","args":{"span_id":"259","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544589000,"dur":100},{"pid":1,"tid":12,"id":260,"name":"lib task manager create merge manifest task","args":{"span_id":"260","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544589000,"dur":1000},{"pid":1,"tid":12,"id":261,"name":"lib task manager create create renderscript task","args":{"span_id":"261","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544590000,"dur":100},{"pid":1,"tid":12,"id":262,"name":"lib task manager create merge resources task","args":{"span_id":"262","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544590000,"dur":1000},{"pid":1,"tid":12,"id":263,"name":"lib task manager create merge assets task","args":{"span_id":"263","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544591000,"dur":2000},{"pid":1,"tid":12,"id":264,"name":"lib task manager create build config task","args":{"span_id":"264","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544593000,"dur":1000},{"pid":1,"tid":12,"id":265,"name":"lib task manager create process res task","args":{"span_id":"265","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544594000,"dur":2000},{"pid":1,"tid":12,"id":266,"name":"lib task manager create aidl task","args":{"span_id":"266","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544596000,"dur":100},{"pid":1,"tid":12,"id":267,"name":"lib task manager create shader task","args":{"span_id":"267","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544596000,"dur":100},{"pid":1,"tid":12,"id":268,"name":"lib task manager create compile task","args":{"span_id":"268","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544596000,"dur":1000},{"pid":1,"tid":12,"id":269,"name":"lib task manager create ndk task","args":{"span_id":"269","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544597000,"dur":100},{"pid":1,"tid":12,"id":270,"name":"lib task manager create external native build task","args":{"span_id":"270","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544597000,"dur":100},{"pid":1,"tid":12,"id":271,"name":"lib task manager create packaging task","args":{"span_id":"271","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544599000,"dur":1000},{"pid":1,"tid":12,"id":272,"name":"lib task manager create merge proguard file task","args":{"span_id":"272","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544600000,"dur":1000},{"pid":1,"tid":12,"id":273,"name":"lib task manager create post compilation task","args":{"span_id":"273","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544603000,"dur":3000},{"pid":1,"tid":12,"id":274,"name":"lib task manager create lint task","args":{"span_id":"274","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544607000,"dur":100},{"pid":1,"tid":12,"id":258,"name":"variant manager create tasks for variant","args":{"span_id":"258","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433544583000,"dur":24000},{"pid":1,"tid":12,"id":275,"name":"variant manager create tasks for variant","args":{"span_id":"275","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544607000,"dur":4000},{"pid":1,"tid":12,"id":276,"name":"variant manager create tasks for variant","args":{"span_id":"276","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544611000,"dur":11000},{"pid":1,"tid":12,"id":237,"name":"variant manager create android tasks","args":{"span_id":"237","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544561000,"dur":62000},{"pid":1,"tid":12,"id":277,"name":"variant manager external native config values","args":{"span_id":"277","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544623000,"dur":100},{"pid":1,"tid":12,"id":236,"name":"base plugin create android tasks","args":{"span_id":"236","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433544560000,"dur":63000},{"pid":1,"tid":0,"id":278,"name":"task: delete","args":{"span_id":"278","task":"type: 104\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433544748000,"dur":48000},{"pid":1,"tid":0,"id":279,"name":"task: delete","args":{"span_id":"279","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 104\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433544798000,"dur":3904000},{"pid":1,"tid":0,"id":280,"name":"task: delete","args":{"span_id":"280","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 104\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433548706000,"dur":302000},{"pid":1,"tid":0,"id":281,"name":"task: delete","args":{"span_id":"281","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 104\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433549009000,"dur":104000},{"pid":1,"tid":0,"id":282,"name":"task: unknown task type","args":{"span_id":"282","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433549114000,"dur":1000},{"pid":1,"tid":0,"id":283,"name":"task: unknown task type","args":{"span_id":"283","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433549115000,"dur":100},{"pid":1,"tid":0,"id":284,"name":"task: unknown task type","args":{"span_id":"284","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433549117000,"dur":100},{"pid":1,"tid":0,"id":285,"name":"task: unknown task type","args":{"span_id":"285","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433549117000,"dur":100},{"pid":1,"tid":0,"id":286,"name":"task: aidl compile","args":{"span_id":"286","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433549120000,"dur":124000},{"pid":1,"tid":0,"id":287,"name":"task: aidl compile","args":{"span_id":"287","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433549245000,"dur":226000},{"pid":1,"tid":0,"id":288,"name":"task: unknown task type","args":{"span_id":"288","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433549471000,"dur":1000},{"pid":1,"tid":0,"id":289,"name":"task: renderscript compile","args":{"span_id":"289","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433549474000,"dur":22000},{"pid":1,"tid":0,"id":290,"name":"task: check manifest","args":{"span_id":"290","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433549496000,"dur":3000},{"pid":1,"tid":0,"id":291,"name":"task: generate build config","args":{"span_id":"291","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433549500000,"dur":6000},{"pid":1,"tid":0,"id":292,"name":"task: prepare lint jar","args":{"span_id":"292","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 119\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433549507000,"dur":3000},{"pid":1,"tid":0,"id":293,"name":"task: generate res values","args":{"span_id":"293","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433549517000,"dur":4000},{"pid":1,"tid":0,"id":294,"name":"task: unknown task type","args":{"span_id":"294","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433549523000,"dur":100},{"pid":1,"tid":0,"id":295,"name":"task: merge resources","args":{"span_id":"295","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433549529000,"dur":317000},{"pid":1,"tid":0,"id":297,"name":"task: process manifest","args":{"span_id":"297","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 52\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433549867000,"dur":40000},{"pid":1,"tid":0,"id":298,"name":"task: renderscript compile","args":{"span_id":"298","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433549909000,"dur":16000},{"pid":1,"tid":0,"id":299,"name":"task: generate res values","args":{"span_id":"299","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433549926000,"dur":2000},{"pid":1,"tid":0,"id":300,"name":"task: unknown task type","args":{"span_id":"300","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433549929000,"dur":100},{"pid":1,"tid":0,"id":301,"name":"task: merge resources","args":{"span_id":"301","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433549930000,"dur":22000},{"pid":1,"tid":0,"id":303,"name":"task: check manifest","args":{"span_id":"303","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433549976000,"dur":13000},{"pid":1,"tid":0,"id":304,"name":"task: process manifest","args":{"span_id":"304","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 52\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433549991000,"dur":31000},{"pid":1,"tid":0,"id":305,"name":"task: unknown task type","args":{"span_id":"305","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433550024000,"dur":100},{"pid":1,"tid":0,"id":306,"name":"task: app pre build","args":{"span_id":"306","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 92\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433550025000,"dur":75000},{"pid":1,"tid":0,"id":307,"name":"task: aidl compile","args":{"span_id":"307","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433550102000,"dur":25000},{"pid":1,"tid":0,"id":308,"name":"task: unknown task type","args":{"span_id":"308","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433550128000,"dur":1000},{"pid":1,"tid":0,"id":309,"name":"task: renderscript compile","args":{"span_id":"309","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433550132000,"dur":30000},{"pid":1,"tid":0,"id":310,"name":"task: check manifest","args":{"span_id":"310","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433550163000,"dur":4000},{"pid":1,"tid":0,"id":311,"name":"task: generate build config","args":{"span_id":"311","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433550168000,"dur":8000},{"pid":1,"tid":0,"id":312,"name":"task: prepare lint jar","args":{"span_id":"312","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 119\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433550177000,"dur":1000},{"pid":1,"tid":0,"id":313,"name":"task: generate res values","args":{"span_id":"313","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433550179000,"dur":2000},{"pid":1,"tid":0,"id":314,"name":"task: unknown task type","args":{"span_id":"314","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433550182000,"dur":100},{"pid":1,"tid":0,"id":315,"name":"task: merge resources","args":{"span_id":"315","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433550184000,"dur":2444000},{"pid":1,"tid":0,"id":316,"name":"task: compatible screens manifest","args":{"span_id":"316","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 9\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433552629000,"dur":9000},{"pid":1,"tid":0,"id":317,"name":"task: merge manifests","args":{"span_id":"317","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 39\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433552640000,"dur":116000},{"pid":1,"tid":0,"id":318,"name":"task: splits discovery","args":{"span_id":"318","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 87\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433552758000,"dur":10000},{"pid":1,"tid":0,"id":319,"name":"task: generate build config","args":{"span_id":"319","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433552770000,"dur":4000},{"pid":1,"tid":0,"id":320,"name":"task: prepare lint jar","args":{"span_id":"320","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 119\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433552775000,"dur":100},{"pid":1,"tid":0,"id":296,"name":"task: platform attr extractor","args":{"span_id":"296","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 109\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433549847000,"dur":2930000},{"pid":1,"tid":0,"id":302,"name":"task: platform attr extractor","args":{"span_id":"302","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 109\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433549954000,"dur":2824000},{"pid":1,"tid":0,"id":321,"name":"task: process android resources","args":{"span_id":"321","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433552780000,"dur":74000},{"pid":1,"tid":0,"id":322,"name":"task: process android resources","args":{"span_id":"322","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433552856000,"dur":413000},{"pid":1,"tid":0,"id":323,"name":"task: unknown task type","args":{"span_id":"323","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433553269000,"dur":100},{"pid":1,"tid":0,"id":324,"name":"task: process android resources","args":{"span_id":"324","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: true\n"},"ph":"X","ts":1546433553272000,"dur":2305000},{"pid":1,"tid":12,"id":325,"name":"base plugin build finished","args":{"span_id":"325","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433555585000,"dur":1000},{"pid":1,"tid":12,"id":326,"name":"base plugin build finished","args":{"span_id":"326","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433555586000,"dur":100},{"pid":1,"tid":12,"id":327,"name":"base plugin build finished","args":{"span_id":"327","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433555586000,"dur":100}] \ No newline at end of file diff --git a/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-52-35-594.rawproto b/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-52-35-594.rawproto deleted file mode 100644 index 61a6184..0000000 Binary files a/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-52-35-594.rawproto and /dev/null differ diff --git a/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-53-15-453.json b/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-53-15-453.json deleted file mode 100644 index e5b6469..0000000 --- a/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-53-15-453.json +++ /dev/null @@ -1 +0,0 @@ -[{"pid":0,"ph":"i","name":"Memory sample","ts":1546433590458000,"args":{"JVM stats":"heap_memory_usage: 469224968\nnon_heap_memory_usage: 234688920\nloaded_class_count: 20162\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433591670000,"args":{"JVM stats":"heap_memory_usage: 495681776\nnon_heap_memory_usage: 235575248\nloaded_class_count: 20164\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433591692000,"args":{"JVM stats":"heap_memory_usage: 495977760\nnon_heap_memory_usage: 235599184\nloaded_class_count: 20164\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433591699000,"args":{"JVM stats":"heap_memory_usage: 495977760\nnon_heap_memory_usage: 235610160\nloaded_class_count: 20164\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433591703000,"args":{"JVM stats":"heap_memory_usage: 496273776\nnon_heap_memory_usage: 235610544\nloaded_class_count: 20164\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433591715000,"args":{"JVM stats":"heap_memory_usage: 496569792\nnon_heap_memory_usage: 235611824\nloaded_class_count: 20164\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433591719000,"args":{"JVM stats":"heap_memory_usage: 496569792\nnon_heap_memory_usage: 235608304\nloaded_class_count: 20164\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433591719001,"args":{"JVM stats":"heap_memory_usage: 496569792\nnon_heap_memory_usage: 235608304\nloaded_class_count: 20164\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433591778000,"args":{"JVM stats":"heap_memory_usage: 502788616\nnon_heap_memory_usage: 235581032\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433591789000,"args":{"JVM stats":"heap_memory_usage: 503380608\nnon_heap_memory_usage: 235579752\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433591794000,"args":{"JVM stats":"heap_memory_usage: 503380608\nnon_heap_memory_usage: 235578088\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433591795000,"args":{"JVM stats":"heap_memory_usage: 503380608\nnon_heap_memory_usage: 235578088\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433591802000,"args":{"JVM stats":"heap_memory_usage: 503677008\nnon_heap_memory_usage: 235582248\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433592543000,"args":{"JVM stats":"heap_memory_usage: 207514608\nnon_heap_memory_usage: 235467560\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 359\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433592544000,"args":{"JVM stats":"heap_memory_usage: 207514608\nnon_heap_memory_usage: 235467560\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433592545000,"args":{"JVM stats":"heap_memory_usage: 207514608\nnon_heap_memory_usage: 235472936\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433592545001,"args":{"JVM stats":"heap_memory_usage: 207514608\nnon_heap_memory_usage: 235473896\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433592548000,"args":{"JVM stats":"heap_memory_usage: 207514608\nnon_heap_memory_usage: 235467752\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433592553000,"args":{"JVM stats":"heap_memory_usage: 207514608\nnon_heap_memory_usage: 235455424\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433592554000,"args":{"JVM stats":"heap_memory_usage: 207514608\nnon_heap_memory_usage: 235458048\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433592555000,"args":{"JVM stats":"heap_memory_usage: 207514608\nnon_heap_memory_usage: 235458048\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433592557000,"args":{"JVM stats":"heap_memory_usage: 207728024\nnon_heap_memory_usage: 235458048\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433592560000,"args":{"JVM stats":"heap_memory_usage: 207728024\nnon_heap_memory_usage: 235453760\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433592592000,"args":{"JVM stats":"heap_memory_usage: 210748208\nnon_heap_memory_usage: 235472960\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433592604000,"args":{"JVM stats":"heap_memory_usage: 210748208\nnon_heap_memory_usage: 235472576\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433592606000,"args":{"JVM stats":"heap_memory_usage: 210748208\nnon_heap_memory_usage: 235468960\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433592773000,"args":{"JVM stats":"heap_memory_usage: 223403032\nnon_heap_memory_usage: 235437096\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433592775000,"args":{"JVM stats":"heap_memory_usage: 223403032\nnon_heap_memory_usage: 235516200\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433592777000,"args":{"JVM stats":"heap_memory_usage: 223403032\nnon_heap_memory_usage: 235516200\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433592809000,"args":{"JVM stats":"heap_memory_usage: 224088128\nnon_heap_memory_usage: 235512552\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433592812000,"args":{"JVM stats":"heap_memory_usage: 224088128\nnon_heap_memory_usage: 235512552\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433592816000,"args":{"JVM stats":"heap_memory_usage: 224088128\nnon_heap_memory_usage: 235512552\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433592834000,"args":{"JVM stats":"heap_memory_usage: 226623624\nnon_heap_memory_usage: 235521136\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433592837000,"args":{"JVM stats":"heap_memory_usage: 226623624\nnon_heap_memory_usage: 235521136\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433592838000,"args":{"JVM stats":"heap_memory_usage: 226623624\nnon_heap_memory_usage: 235521136\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433592857000,"args":{"JVM stats":"heap_memory_usage: 227097032\nnon_heap_memory_usage: 235521136\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433592942000,"args":{"JVM stats":"heap_memory_usage: 230453064\nnon_heap_memory_usage: 235525424\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433592948000,"args":{"JVM stats":"heap_memory_usage: 230610848\nnon_heap_memory_usage: 235525424\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433592948001,"args":{"JVM stats":"heap_memory_usage: 230610848\nnon_heap_memory_usage: 235525424\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433592953000,"args":{"JVM stats":"heap_memory_usage: 230768616\nnon_heap_memory_usage: 235525424\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433593189000,"args":{"JVM stats":"heap_memory_usage: 236336632\nnon_heap_memory_usage: 235525424\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433593190000,"args":{"JVM stats":"heap_memory_usage: 236494416\nnon_heap_memory_usage: 235525648\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433593192000,"args":{"JVM stats":"heap_memory_usage: 236494416\nnon_heap_memory_usage: 235525648\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433593194000,"args":{"JVM stats":"heap_memory_usage: 236494416\nnon_heap_memory_usage: 235525648\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433593362000,"args":{"JVM stats":"heap_memory_usage: 245751864\nnon_heap_memory_usage: 235602256\nloaded_class_count: 20164\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433594184000,"args":{"JVM stats":"heap_memory_usage: 312005848\nnon_heap_memory_usage: 235769024\nloaded_class_count: 20165\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433595417000,"args":{"JVM stats":"heap_memory_usage: 322381440\nnon_heap_memory_usage: 235486104\nloaded_class_count: 20171\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433595424000,"args":{"JVM stats":"heap_memory_usage: 323850400\nnon_heap_memory_usage: 235472056\nloaded_class_count: 20171\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433595454000,"args":{"JVM stats":"heap_memory_usage: 326258856\nnon_heap_memory_usage: 235454760\nloaded_class_count: 20171\nthread_count: 39\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":1,"tid":12,"id":2,"name":"base plugin project configure","args":{"span_id":"2","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433590479000,"dur":47000},{"pid":1,"tid":12,"id":3,"name":"base plugin project base extension creation","args":{"span_id":"3","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433590526000,"dur":15000},{"pid":1,"tid":12,"id":5,"name":"task manager create tasks","args":{"span_id":"5","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433590541000,"dur":31000},{"pid":1,"tid":12,"id":4,"name":"base plugin project tasks creation","args":{"span_id":"4","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433590541000,"dur":31000},{"pid":1,"tid":12,"id":8,"name":"variant manager create variants","args":{"span_id":"8","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433590631000,"dur":17000},{"pid":1,"tid":12,"id":9,"name":"variant manager create tests tasks","args":{"span_id":"9","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433590648000,"dur":3000},{"pid":1,"tid":12,"id":11,"name":"app task manager create merge manifest task","args":{"span_id":"11","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433590660000,"dur":3000},{"pid":1,"tid":12,"id":12,"name":"app task manager create generate res values task","args":{"span_id":"12","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433590664000,"dur":1000},{"pid":1,"tid":12,"id":13,"name":"app task manager create create renderscript task","args":{"span_id":"13","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433590665000,"dur":5000},{"pid":1,"tid":12,"id":14,"name":"app task manager create merge resources task","args":{"span_id":"14","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433590670000,"dur":3000},{"pid":1,"tid":12,"id":15,"name":"app task manager create merge assets task","args":{"span_id":"15","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433590673000,"dur":2000},{"pid":1,"tid":12,"id":16,"name":"app task manager create build config task","args":{"span_id":"16","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433590675000,"dur":100},{"pid":1,"tid":12,"id":17,"name":"app task manager create process res task","args":{"span_id":"17","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433590675000,"dur":24000},{"pid":1,"tid":12,"id":18,"name":"app task manager create aidl task","args":{"span_id":"18","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433590699000,"dur":1000},{"pid":1,"tid":12,"id":19,"name":"app task manager create shader task","args":{"span_id":"19","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433590700000,"dur":1000},{"pid":1,"tid":12,"id":20,"name":"app task manager create ndk task","args":{"span_id":"20","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433590701000,"dur":1000},{"pid":1,"tid":12,"id":21,"name":"app task manager create external native build task","args":{"span_id":"21","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433590702000,"dur":100},{"pid":1,"tid":12,"id":22,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"22","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433590702000,"dur":32000},{"pid":1,"tid":12,"id":23,"name":"app task manager create compile task","args":{"span_id":"23","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433590734000,"dur":26000},{"pid":1,"tid":12,"id":24,"name":"app task manager create packaging task","args":{"span_id":"24","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433590760000,"dur":9000},{"pid":1,"tid":12,"id":25,"name":"app task manager create lint task","args":{"span_id":"25","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433590769000,"dur":100},{"pid":1,"tid":12,"id":10,"name":"variant manager create tasks for variant","args":{"span_id":"10","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433590651000,"dur":118000},{"pid":1,"tid":12,"id":26,"name":"variant manager create tasks for variant","args":{"span_id":"26","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433590769000,"dur":16000},{"pid":1,"tid":12,"id":27,"name":"variant manager create tasks for variant","args":{"span_id":"27","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433590785000,"dur":92000},{"pid":1,"tid":12,"id":7,"name":"variant manager create android tasks","args":{"span_id":"7","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433590626000,"dur":340000},{"pid":1,"tid":12,"id":28,"name":"variant manager external native config values","args":{"span_id":"28","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433590967000,"dur":1000},{"pid":1,"tid":12,"id":6,"name":"base plugin create android tasks","args":{"span_id":"6","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433590607000,"dur":361000},{"pid":1,"tid":12,"id":29,"name":"base plugin project configure","args":{"span_id":"29","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433591000000,"dur":11000},{"pid":1,"tid":12,"id":30,"name":"base plugin project base extension creation","args":{"span_id":"30","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433591011000,"dur":15000},{"pid":1,"tid":12,"id":32,"name":"task manager create tasks","args":{"span_id":"32","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433591026000,"dur":7000},{"pid":1,"tid":12,"id":31,"name":"base plugin project tasks creation","args":{"span_id":"31","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433591026000,"dur":7000},{"pid":1,"tid":12,"id":35,"name":"variant manager create variants","args":{"span_id":"35","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433591171000,"dur":8000},{"pid":1,"tid":12,"id":36,"name":"variant manager create tests tasks","args":{"span_id":"36","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433591179000,"dur":3000},{"pid":1,"tid":12,"id":38,"name":"lib task manager create generate res values task","args":{"span_id":"38","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591187000,"dur":100},{"pid":1,"tid":12,"id":39,"name":"lib task manager create merge manifest task","args":{"span_id":"39","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591187000,"dur":1000},{"pid":1,"tid":12,"id":40,"name":"lib task manager create create renderscript task","args":{"span_id":"40","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591188000,"dur":1000},{"pid":1,"tid":12,"id":41,"name":"lib task manager create merge resources task","args":{"span_id":"41","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591189000,"dur":1000},{"pid":1,"tid":12,"id":42,"name":"lib task manager create merge assets task","args":{"span_id":"42","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591190000,"dur":100},{"pid":1,"tid":12,"id":43,"name":"lib task manager create build config task","args":{"span_id":"43","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591190000,"dur":100},{"pid":1,"tid":12,"id":44,"name":"lib task manager create process res task","args":{"span_id":"44","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591191000,"dur":14000},{"pid":1,"tid":12,"id":45,"name":"lib task manager create aidl task","args":{"span_id":"45","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591205000,"dur":100},{"pid":1,"tid":12,"id":46,"name":"lib task manager create shader task","args":{"span_id":"46","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591205000,"dur":1000},{"pid":1,"tid":12,"id":47,"name":"lib task manager create compile task","args":{"span_id":"47","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591206000,"dur":1000},{"pid":1,"tid":12,"id":48,"name":"lib task manager create ndk task","args":{"span_id":"48","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591207000,"dur":100},{"pid":1,"tid":12,"id":49,"name":"lib task manager create external native build task","args":{"span_id":"49","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591207000,"dur":100},{"pid":1,"tid":12,"id":50,"name":"lib task manager create packaging task","args":{"span_id":"50","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591208000,"dur":1000},{"pid":1,"tid":12,"id":51,"name":"lib task manager create merge proguard file task","args":{"span_id":"51","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591209000,"dur":100},{"pid":1,"tid":12,"id":52,"name":"lib task manager create post compilation task","args":{"span_id":"52","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591212000,"dur":5000},{"pid":1,"tid":12,"id":53,"name":"lib task manager create lint task","args":{"span_id":"53","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591218000,"dur":100},{"pid":1,"tid":12,"id":37,"name":"variant manager create tasks for variant","args":{"span_id":"37","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591182000,"dur":36000},{"pid":1,"tid":12,"id":54,"name":"variant manager create tasks for variant","args":{"span_id":"54","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433591218000,"dur":5000},{"pid":1,"tid":12,"id":56,"name":"lib task manager create generate res values task","args":{"span_id":"56","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591224000,"dur":1000},{"pid":1,"tid":12,"id":57,"name":"lib task manager create merge manifest task","args":{"span_id":"57","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591225000,"dur":1000},{"pid":1,"tid":12,"id":58,"name":"lib task manager create create renderscript task","args":{"span_id":"58","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591226000,"dur":100},{"pid":1,"tid":12,"id":59,"name":"lib task manager create merge resources task","args":{"span_id":"59","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591226000,"dur":1000},{"pid":1,"tid":12,"id":60,"name":"lib task manager create merge assets task","args":{"span_id":"60","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591227000,"dur":1000},{"pid":1,"tid":12,"id":61,"name":"lib task manager create build config task","args":{"span_id":"61","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591228000,"dur":100},{"pid":1,"tid":12,"id":62,"name":"lib task manager create process res task","args":{"span_id":"62","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591228000,"dur":18000},{"pid":1,"tid":12,"id":63,"name":"lib task manager create aidl task","args":{"span_id":"63","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591246000,"dur":5000},{"pid":1,"tid":12,"id":64,"name":"lib task manager create shader task","args":{"span_id":"64","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591251000,"dur":1000},{"pid":1,"tid":12,"id":65,"name":"lib task manager create compile task","args":{"span_id":"65","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591252000,"dur":3000},{"pid":1,"tid":12,"id":66,"name":"lib task manager create ndk task","args":{"span_id":"66","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591255000,"dur":100},{"pid":1,"tid":12,"id":67,"name":"lib task manager create external native build task","args":{"span_id":"67","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591255000,"dur":100},{"pid":1,"tid":12,"id":68,"name":"lib task manager create packaging task","args":{"span_id":"68","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591256000,"dur":1000},{"pid":1,"tid":12,"id":69,"name":"lib task manager create merge proguard file task","args":{"span_id":"69","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591257000,"dur":2000},{"pid":1,"tid":12,"id":70,"name":"lib task manager create post compilation task","args":{"span_id":"70","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591259000,"dur":3000},{"pid":1,"tid":12,"id":71,"name":"lib task manager create lint task","args":{"span_id":"71","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591263000,"dur":100},{"pid":1,"tid":12,"id":55,"name":"variant manager create tasks for variant","args":{"span_id":"55","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591223000,"dur":40000},{"pid":1,"tid":12,"id":72,"name":"variant manager create tasks for variant","args":{"span_id":"72","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433591263000,"dur":16000},{"pid":1,"tid":12,"id":73,"name":"variant manager create tasks for variant","args":{"span_id":"73","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433591279000,"dur":38000},{"pid":1,"tid":12,"id":34,"name":"variant manager create android tasks","args":{"span_id":"34","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433591171000,"dur":147000},{"pid":1,"tid":12,"id":74,"name":"variant manager external native config values","args":{"span_id":"74","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433591319000,"dur":100},{"pid":1,"tid":12,"id":33,"name":"base plugin create android tasks","args":{"span_id":"33","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433591169000,"dur":150000},{"pid":1,"tid":12,"id":75,"name":"base plugin project configure","args":{"span_id":"75","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433591354000,"dur":20000},{"pid":1,"tid":12,"id":76,"name":"base plugin project base extension creation","args":{"span_id":"76","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433591374000,"dur":17000},{"pid":1,"tid":12,"id":78,"name":"task manager create tasks","args":{"span_id":"78","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433591391000,"dur":2000},{"pid":1,"tid":12,"id":77,"name":"base plugin project tasks creation","args":{"span_id":"77","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433591391000,"dur":2000},{"pid":1,"tid":12,"id":81,"name":"variant manager create variants","args":{"span_id":"81","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433591402000,"dur":8000},{"pid":1,"tid":12,"id":82,"name":"variant manager create tests tasks","args":{"span_id":"82","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433591410000,"dur":1000},{"pid":1,"tid":12,"id":84,"name":"lib task manager create generate res values task","args":{"span_id":"84","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591411000,"dur":1000},{"pid":1,"tid":12,"id":85,"name":"lib task manager create merge manifest task","args":{"span_id":"85","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591412000,"dur":100},{"pid":1,"tid":12,"id":86,"name":"lib task manager create create renderscript task","args":{"span_id":"86","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591412000,"dur":1000},{"pid":1,"tid":12,"id":87,"name":"lib task manager create merge resources task","args":{"span_id":"87","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591413000,"dur":1000},{"pid":1,"tid":12,"id":88,"name":"lib task manager create merge assets task","args":{"span_id":"88","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591414000,"dur":100},{"pid":1,"tid":12,"id":89,"name":"lib task manager create build config task","args":{"span_id":"89","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591414000,"dur":100},{"pid":1,"tid":12,"id":90,"name":"lib task manager create process res task","args":{"span_id":"90","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591414000,"dur":5000},{"pid":1,"tid":12,"id":91,"name":"lib task manager create aidl task","args":{"span_id":"91","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591419000,"dur":100},{"pid":1,"tid":12,"id":92,"name":"lib task manager create shader task","args":{"span_id":"92","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591419000,"dur":2000},{"pid":1,"tid":12,"id":93,"name":"lib task manager create compile task","args":{"span_id":"93","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591421000,"dur":1000},{"pid":1,"tid":12,"id":94,"name":"lib task manager create ndk task","args":{"span_id":"94","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591422000,"dur":100},{"pid":1,"tid":12,"id":95,"name":"lib task manager create external native build task","args":{"span_id":"95","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591422000,"dur":100},{"pid":1,"tid":12,"id":96,"name":"lib task manager create packaging task","args":{"span_id":"96","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591423000,"dur":1000},{"pid":1,"tid":12,"id":97,"name":"lib task manager create merge proguard file task","args":{"span_id":"97","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591424000,"dur":100},{"pid":1,"tid":12,"id":98,"name":"lib task manager create post compilation task","args":{"span_id":"98","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591425000,"dur":2000},{"pid":1,"tid":12,"id":99,"name":"lib task manager create lint task","args":{"span_id":"99","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591427000,"dur":1000},{"pid":1,"tid":12,"id":83,"name":"variant manager create tasks for variant","args":{"span_id":"83","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591411000,"dur":17000},{"pid":1,"tid":12,"id":100,"name":"variant manager create tasks for variant","args":{"span_id":"100","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433591428000,"dur":12000},{"pid":1,"tid":12,"id":102,"name":"lib task manager create generate res values task","args":{"span_id":"102","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591441000,"dur":1000},{"pid":1,"tid":12,"id":103,"name":"lib task manager create merge manifest task","args":{"span_id":"103","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591442000,"dur":100},{"pid":1,"tid":12,"id":104,"name":"lib task manager create create renderscript task","args":{"span_id":"104","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591442000,"dur":100},{"pid":1,"tid":12,"id":105,"name":"lib task manager create merge resources task","args":{"span_id":"105","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591442000,"dur":2000},{"pid":1,"tid":12,"id":106,"name":"lib task manager create merge assets task","args":{"span_id":"106","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591444000,"dur":100},{"pid":1,"tid":12,"id":107,"name":"lib task manager create build config task","args":{"span_id":"107","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591444000,"dur":1000},{"pid":1,"tid":12,"id":108,"name":"lib task manager create process res task","args":{"span_id":"108","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591445000,"dur":1000},{"pid":1,"tid":12,"id":109,"name":"lib task manager create aidl task","args":{"span_id":"109","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591446000,"dur":1000},{"pid":1,"tid":12,"id":110,"name":"lib task manager create shader task","args":{"span_id":"110","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591447000,"dur":100},{"pid":1,"tid":12,"id":111,"name":"lib task manager create compile task","args":{"span_id":"111","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591447000,"dur":2000},{"pid":1,"tid":12,"id":112,"name":"lib task manager create ndk task","args":{"span_id":"112","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591449000,"dur":100},{"pid":1,"tid":12,"id":113,"name":"lib task manager create external native build task","args":{"span_id":"113","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591450000,"dur":100},{"pid":1,"tid":12,"id":114,"name":"lib task manager create packaging task","args":{"span_id":"114","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591451000,"dur":1000},{"pid":1,"tid":12,"id":115,"name":"lib task manager create merge proguard file task","args":{"span_id":"115","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591452000,"dur":100},{"pid":1,"tid":12,"id":116,"name":"lib task manager create post compilation task","args":{"span_id":"116","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591453000,"dur":2000},{"pid":1,"tid":12,"id":117,"name":"lib task manager create lint task","args":{"span_id":"117","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591455000,"dur":100},{"pid":1,"tid":12,"id":101,"name":"variant manager create tasks for variant","args":{"span_id":"101","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433591441000,"dur":14000},{"pid":1,"tid":12,"id":118,"name":"variant manager create tasks for variant","args":{"span_id":"118","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433591455000,"dur":5000},{"pid":1,"tid":12,"id":119,"name":"variant manager create tasks for variant","args":{"span_id":"119","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433591460000,"dur":29000},{"pid":1,"tid":12,"id":80,"name":"variant manager create android tasks","args":{"span_id":"80","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433591401000,"dur":89000},{"pid":1,"tid":12,"id":120,"name":"variant manager external native config values","args":{"span_id":"120","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433591490000,"dur":100},{"pid":1,"tid":12,"id":79,"name":"base plugin create android tasks","args":{"span_id":"79","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433591399000,"dur":91000},{"pid":1,"tid":0,"id":121,"name":"task: build info loader","args":{"span_id":"121","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 7\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433591667000,"dur":3000},{"pid":1,"tid":0,"id":122,"name":"task: merge source set folders","args":{"span_id":"122","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433591672000,"dur":20000},{"pid":1,"tid":0,"id":123,"name":"task: shader compile","args":{"span_id":"123","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433591693000,"dur":5000},{"pid":1,"tid":0,"id":124,"name":"task: unknown task type","args":{"span_id":"124","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433591701000,"dur":1000},{"pid":1,"tid":0,"id":125,"name":"task: merge source set folders","args":{"span_id":"125","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433591703000,"dur":12000},{"pid":1,"tid":0,"id":126,"name":"task: shader compile","args":{"span_id":"126","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433591716000,"dur":2000},{"pid":1,"tid":0,"id":127,"name":"task: unknown task type","args":{"span_id":"127","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433591719000,"dur":100},{"pid":1,"tid":0,"id":128,"name":"task: merge source set folders","args":{"span_id":"128","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433591720000,"dur":58000},{"pid":1,"tid":0,"id":129,"name":"task: merge source set folders","args":{"span_id":"129","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433591783000,"dur":6000},{"pid":1,"tid":0,"id":130,"name":"task: shader compile","args":{"span_id":"130","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433591790000,"dur":4000},{"pid":1,"tid":0,"id":131,"name":"task: unknown task type","args":{"span_id":"131","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433591794000,"dur":100},{"pid":1,"tid":0,"id":132,"name":"task: merge source set folders","args":{"span_id":"132","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433591795000,"dur":7000},{"pid":1,"tid":0,"id":133,"name":"task: merge source set folders","args":{"span_id":"133","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433591805000,"dur":738000},{"pid":1,"tid":0,"id":134,"name":"task: unknown task type","args":{"span_id":"134","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433592543000,"dur":1000},{"pid":1,"tid":0,"id":135,"name":"task: unknown task type","args":{"span_id":"135","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433592544000,"dur":100},{"pid":1,"tid":0,"id":136,"name":"task: unknown task type","args":{"span_id":"136","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433592545000,"dur":100},{"pid":1,"tid":0,"id":137,"name":"task: check manifest","args":{"span_id":"137","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433592546000,"dur":2000},{"pid":1,"tid":0,"id":138,"name":"task: process manifest","args":{"span_id":"138","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 52\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433592550000,"dur":3000},{"pid":1,"tid":0,"id":139,"name":"task: unknown task type","args":{"span_id":"139","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433592553000,"dur":1000},{"pid":1,"tid":0,"id":140,"name":"task: unknown task type","args":{"span_id":"140","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433592554000,"dur":100},{"pid":1,"tid":0,"id":141,"name":"task: check manifest","args":{"span_id":"141","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433592555000,"dur":1000},{"pid":1,"tid":0,"id":142,"name":"task: process manifest","args":{"span_id":"142","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 52\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433592557000,"dur":3000},{"pid":1,"tid":0,"id":143,"name":"task: app pre build","args":{"span_id":"143","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 92\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433592561000,"dur":31000},{"pid":1,"tid":0,"id":144,"name":"task: check manifest","args":{"span_id":"144","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433592603000,"dur":1000},{"pid":1,"tid":0,"id":145,"name":"task: compatible screens manifest","args":{"span_id":"145","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 9\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433592604000,"dur":2000},{"pid":1,"tid":0,"id":146,"name":"task: merge manifests","args":{"span_id":"146","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 39\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433592607000,"dur":165000},{"pid":1,"tid":0,"id":147,"name":"task: unknown task type","args":{"span_id":"147","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433592774000,"dur":1000},{"pid":1,"tid":0,"id":148,"name":"task: unknown task type","args":{"span_id":"148","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433592776000,"dur":1000},{"pid":1,"tid":0,"id":149,"name":"task: renderscript compile","args":{"span_id":"149","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433592778000,"dur":31000},{"pid":1,"tid":0,"id":150,"name":"task: generate res values","args":{"span_id":"150","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433592812000,"dur":100},{"pid":1,"tid":0,"id":151,"name":"task: unknown task type","args":{"span_id":"151","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433592815000,"dur":1000},{"pid":1,"tid":0,"id":152,"name":"task: renderscript compile","args":{"span_id":"152","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433592817000,"dur":17000},{"pid":1,"tid":0,"id":153,"name":"task: generate res values","args":{"span_id":"153","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433592835000,"dur":2000},{"pid":1,"tid":0,"id":154,"name":"task: unknown task type","args":{"span_id":"154","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433592837000,"dur":1000},{"pid":1,"tid":0,"id":155,"name":"task: merge resources","args":{"span_id":"155","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433592839000,"dur":18000},{"pid":1,"tid":0,"id":156,"name":"task: renderscript compile","args":{"span_id":"156","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433592858000,"dur":84000},{"pid":1,"tid":0,"id":157,"name":"task: generate res values","args":{"span_id":"157","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433592946000,"dur":1000},{"pid":1,"tid":0,"id":158,"name":"task: unknown task type","args":{"span_id":"158","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433592948000,"dur":100},{"pid":1,"tid":0,"id":159,"name":"task: merge resources","args":{"span_id":"159","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433592950000,"dur":3000},{"pid":1,"tid":0,"id":160,"name":"task: merge resources","args":{"span_id":"160","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433592953000,"dur":235000},{"pid":1,"tid":0,"id":161,"name":"task: splits discovery","args":{"span_id":"161","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 87\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433593189000,"dur":1000},{"pid":1,"tid":0,"id":162,"name":"task: platform attr extractor","args":{"span_id":"162","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 109\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433593191000,"dur":1000},{"pid":1,"tid":0,"id":163,"name":"task: platform attr extractor","args":{"span_id":"163","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 109\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433593193000,"dur":1000},{"pid":1,"tid":0,"id":164,"name":"task: process android resources","args":{"span_id":"164","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433593195000,"dur":167000},{"pid":1,"tid":0,"id":165,"name":"task: process android resources","args":{"span_id":"165","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433593369000,"dur":815000},{"pid":1,"tid":0,"id":166,"name":"task: process android resources","args":{"span_id":"166","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: true\n"},"ph":"X","ts":1546433594186000,"dur":1231000},{"pid":1,"tid":0,"id":167,"name":"task: build info writer","args":{"span_id":"167","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 70\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433595422000,"dur":2000},{"pid":1,"tid":12,"id":168,"name":"base plugin build finished","args":{"span_id":"168","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433595435000,"dur":100},{"pid":1,"tid":12,"id":169,"name":"base plugin build finished","args":{"span_id":"169","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433595435000,"dur":100},{"pid":1,"tid":12,"id":170,"name":"base plugin build finished","args":{"span_id":"170","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433595436000,"dur":100}] \ No newline at end of file diff --git a/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-53-15-453.rawproto b/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-53-15-453.rawproto deleted file mode 100644 index 5d51c03..0000000 Binary files a/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-53-15-453.rawproto and /dev/null differ diff --git a/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-54-49-885.json b/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-54-49-885.json deleted file mode 100644 index f800400..0000000 --- a/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-54-49-885.json +++ /dev/null @@ -1 +0,0 @@ -[{"pid":0,"ph":"i","name":"Memory sample","ts":1546433648964000,"args":{"JVM stats":"heap_memory_usage: 341604480\nnon_heap_memory_usage: 235664952\nloaded_class_count: 20172\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649383000,"args":{"JVM stats":"heap_memory_usage: 368875128\nnon_heap_memory_usage: 236385256\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649388000,"args":{"JVM stats":"heap_memory_usage: 369137016\nnon_heap_memory_usage: 236390632\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649390000,"args":{"JVM stats":"heap_memory_usage: 369137016\nnon_heap_memory_usage: 236386664\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649391000,"args":{"JVM stats":"heap_memory_usage: 369137016\nnon_heap_memory_usage: 236386664\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649394000,"args":{"JVM stats":"heap_memory_usage: 369137016\nnon_heap_memory_usage: 236386664\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649397000,"args":{"JVM stats":"heap_memory_usage: 369398752\nnon_heap_memory_usage: 236398056\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649398000,"args":{"JVM stats":"heap_memory_usage: 369398752\nnon_heap_memory_usage: 236398056\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649403000,"args":{"JVM stats":"heap_memory_usage: 369398752\nnon_heap_memory_usage: 236403496\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649405000,"args":{"JVM stats":"heap_memory_usage: 369398752\nnon_heap_memory_usage: 236404200\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649407000,"args":{"JVM stats":"heap_memory_usage: 369660520\nnon_heap_memory_usage: 236404200\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649408000,"args":{"JVM stats":"heap_memory_usage: 369660520\nnon_heap_memory_usage: 236404200\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649411000,"args":{"JVM stats":"heap_memory_usage: 369660520\nnon_heap_memory_usage: 236408680\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649593000,"args":{"JVM stats":"heap_memory_usage: 384094704\nnon_heap_memory_usage: 236515016\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649594000,"args":{"JVM stats":"heap_memory_usage: 384094704\nnon_heap_memory_usage: 236516360\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649594001,"args":{"JVM stats":"heap_memory_usage: 384094704\nnon_heap_memory_usage: 236516360\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649594000,"args":{"JVM stats":"heap_memory_usage: 384094704\nnon_heap_memory_usage: 236516360\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649595000,"args":{"JVM stats":"heap_memory_usage: 384094704\nnon_heap_memory_usage: 236516360\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649598000,"args":{"JVM stats":"heap_memory_usage: 384356440\nnon_heap_memory_usage: 236516360\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649598001,"args":{"JVM stats":"heap_memory_usage: 384356440\nnon_heap_memory_usage: 236516360\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649599000,"args":{"JVM stats":"heap_memory_usage: 384356440\nnon_heap_memory_usage: 236516360\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649601000,"args":{"JVM stats":"heap_memory_usage: 384356440\nnon_heap_memory_usage: 236527752\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649605000,"args":{"JVM stats":"heap_memory_usage: 384356440\nnon_heap_memory_usage: 236516936\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649632000,"args":{"JVM stats":"heap_memory_usage: 387238112\nnon_heap_memory_usage: 236524872\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649633000,"args":{"JVM stats":"heap_memory_usage: 387238112\nnon_heap_memory_usage: 236524872\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649635000,"args":{"JVM stats":"heap_memory_usage: 387238112\nnon_heap_memory_usage: 236524872\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649647000,"args":{"JVM stats":"heap_memory_usage: 388023416\nnon_heap_memory_usage: 236540648\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649648000,"args":{"JVM stats":"heap_memory_usage: 388023416\nnon_heap_memory_usage: 236545576\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649649000,"args":{"JVM stats":"heap_memory_usage: 388023416\nnon_heap_memory_usage: 236547000\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649661000,"args":{"JVM stats":"heap_memory_usage: 389070520\nnon_heap_memory_usage: 236569336\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649662000,"args":{"JVM stats":"heap_memory_usage: 389332280\nnon_heap_memory_usage: 236579896\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649663000,"args":{"JVM stats":"heap_memory_usage: 389334536\nnon_heap_memory_usage: 236579896\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649694000,"args":{"JVM stats":"heap_memory_usage: 391167928\nnon_heap_memory_usage: 236611112\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649696000,"args":{"JVM stats":"heap_memory_usage: 391167928\nnon_heap_memory_usage: 236611112\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649696001,"args":{"JVM stats":"heap_memory_usage: 391167928\nnon_heap_memory_usage: 236611112\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649710000,"args":{"JVM stats":"heap_memory_usage: 391691704\nnon_heap_memory_usage: 236617832\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649775000,"args":{"JVM stats":"heap_memory_usage: 394842520\nnon_heap_memory_usage: 236643368\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649776000,"args":{"JVM stats":"heap_memory_usage: 394842520\nnon_heap_memory_usage: 236637992\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649777000,"args":{"JVM stats":"heap_memory_usage: 394842520\nnon_heap_memory_usage: 236637992\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433649779000,"args":{"JVM stats":"heap_memory_usage: 395104256\nnon_heap_memory_usage: 236637992\nloaded_class_count: 20191\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433650491000,"args":{"JVM stats":"heap_memory_usage: 434149928\nnon_heap_memory_usage: 237191432\nloaded_class_count: 20193\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433650495000,"args":{"JVM stats":"heap_memory_usage: 434149928\nnon_heap_memory_usage: 237191432\nloaded_class_count: 20193\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433650503000,"args":{"JVM stats":"heap_memory_usage: 434411696\nnon_heap_memory_usage: 237191432\nloaded_class_count: 20193\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433650505000,"args":{"JVM stats":"heap_memory_usage: 434411696\nnon_heap_memory_usage: 237191432\nloaded_class_count: 20193\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433650521000,"args":{"JVM stats":"heap_memory_usage: 435764368\nnon_heap_memory_usage: 237139248\nloaded_class_count: 20193\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433650640000,"args":{"JVM stats":"heap_memory_usage: 438661360\nnon_heap_memory_usage: 236870384\nloaded_class_count: 20193\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433652735000,"args":{"JVM stats":"heap_memory_usage: 479500384\nnon_heap_memory_usage: 237015912\nloaded_class_count: 20193\nthread_count: 38\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433653310000,"args":{"JVM stats":"heap_memory_usage: 298852488\nnon_heap_memory_usage: 236986936\nloaded_class_count: 20193\nthread_count: 38\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 2\n gc_time: 221\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433653322000,"args":{"JVM stats":"heap_memory_usage: 302225160\nnon_heap_memory_usage: 236986936\nloaded_class_count: 20193\nthread_count: 38\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433653330000,"args":{"JVM stats":"heap_memory_usage: 302857752\nnon_heap_memory_usage: 236986936\nloaded_class_count: 20193\nthread_count: 38\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433653338000,"args":{"JVM stats":"heap_memory_usage: 303779592\nnon_heap_memory_usage: 236988984\nloaded_class_count: 20193\nthread_count: 38\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433653339000,"args":{"JVM stats":"heap_memory_usage: 303779592\nnon_heap_memory_usage: 236984696\nloaded_class_count: 20193\nthread_count: 38\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433653341000,"args":{"JVM stats":"heap_memory_usage: 303916144\nnon_heap_memory_usage: 236980472\nloaded_class_count: 20193\nthread_count: 38\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433653341001,"args":{"JVM stats":"heap_memory_usage: 303916144\nnon_heap_memory_usage: 236976504\nloaded_class_count: 20193\nthread_count: 38\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433653342000,"args":{"JVM stats":"heap_memory_usage: 303916144\nnon_heap_memory_usage: 236978680\nloaded_class_count: 20193\nthread_count: 38\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433653344000,"args":{"JVM stats":"heap_memory_usage: 304052736\nnon_heap_memory_usage: 236978680\nloaded_class_count: 20193\nthread_count: 38\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433653344001,"args":{"JVM stats":"heap_memory_usage: 304052736\nnon_heap_memory_usage: 236978680\nloaded_class_count: 20193\nthread_count: 38\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433653419000,"args":{"JVM stats":"heap_memory_usage: 307515272\nnon_heap_memory_usage: 236983264\nloaded_class_count: 20198\nthread_count: 38\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433657430000,"args":{"JVM stats":"heap_memory_usage: 387719736\nnon_heap_memory_usage: 250195768\nloaded_class_count: 21496\nthread_count: 38\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433657433000,"args":{"JVM stats":"heap_memory_usage: 387822608\nnon_heap_memory_usage: 250195768\nloaded_class_count: 21496\nthread_count: 38\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433657434000,"args":{"JVM stats":"heap_memory_usage: 387822608\nnon_heap_memory_usage: 250195768\nloaded_class_count: 21496\nthread_count: 38\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433657434001,"args":{"JVM stats":"heap_memory_usage: 387822608\nnon_heap_memory_usage: 250195768\nloaded_class_count: 21496\nthread_count: 38\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433657458000,"args":{"JVM stats":"heap_memory_usage: 388344528\nnon_heap_memory_usage: 250197176\nloaded_class_count: 21496\nthread_count: 38\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433658191000,"args":{"JVM stats":"heap_memory_usage: 425307528\nnon_heap_memory_usage: 250140288\nloaded_class_count: 21497\nthread_count: 39\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433658193000,"args":{"JVM stats":"heap_memory_usage: 426099880\nnon_heap_memory_usage: 250140288\nloaded_class_count: 21497\nthread_count: 39\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433658219000,"args":{"JVM stats":"heap_memory_usage: 427498264\nnon_heap_memory_usage: 250147064\nloaded_class_count: 21497\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433658344000,"args":{"JVM stats":"heap_memory_usage: 432207088\nnon_heap_memory_usage: 250170488\nloaded_class_count: 21497\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433665326000,"args":{"JVM stats":"heap_memory_usage: 402229624\nnon_heap_memory_usage: 255285448\nloaded_class_count: 21847\nthread_count: 39\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 428\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433665328000,"args":{"JVM stats":"heap_memory_usage: 406231240\nnon_heap_memory_usage: 255285448\nloaded_class_count: 21847\nthread_count: 39\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433665413000,"args":{"JVM stats":"heap_memory_usage: 411884720\nnon_heap_memory_usage: 255285448\nloaded_class_count: 21847\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433665520000,"args":{"JVM stats":"heap_memory_usage: 415232856\nnon_heap_memory_usage: 255285448\nloaded_class_count: 21847\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433670337000,"args":{"JVM stats":"heap_memory_usage: 410532160\nnon_heap_memory_usage: 256890880\nloaded_class_count: 21973\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 240\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433670345000,"args":{"JVM stats":"heap_memory_usage: 414694128\nnon_heap_memory_usage: 256890880\nloaded_class_count: 21973\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433670429000,"args":{"JVM stats":"heap_memory_usage: 421264408\nnon_heap_memory_usage: 256936032\nloaded_class_count: 21974\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433671147000,"args":{"JVM stats":"heap_memory_usage: 451259576\nnon_heap_memory_usage: 256315776\nloaded_class_count: 21975\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433671163000,"args":{"JVM stats":"heap_memory_usage: 454659112\nnon_heap_memory_usage: 256315776\nloaded_class_count: 21975\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433671166000,"args":{"JVM stats":"heap_memory_usage: 454659112\nnon_heap_memory_usage: 256315808\nloaded_class_count: 21975\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433671175000,"args":{"JVM stats":"heap_memory_usage: 454667336\nnon_heap_memory_usage: 256325856\nloaded_class_count: 21975\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433671176000,"args":{"JVM stats":"heap_memory_usage: 454775240\nnon_heap_memory_usage: 256325856\nloaded_class_count: 21975\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433671235000,"args":{"JVM stats":"heap_memory_usage: 457072384\nnon_heap_memory_usage: 256382176\nloaded_class_count: 21975\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433671268000,"args":{"JVM stats":"heap_memory_usage: 457373232\nnon_heap_memory_usage: 256471440\nloaded_class_count: 21976\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433671296000,"args":{"JVM stats":"heap_memory_usage: 457429216\nnon_heap_memory_usage: 256471440\nloaded_class_count: 21976\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433671298000,"args":{"JVM stats":"heap_memory_usage: 457537096\nnon_heap_memory_usage: 256471440\nloaded_class_count: 21976\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433671303000,"args":{"JVM stats":"heap_memory_usage: 457537096\nnon_heap_memory_usage: 256471440\nloaded_class_count: 21976\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433671312000,"args":{"JVM stats":"heap_memory_usage: 457644952\nnon_heap_memory_usage: 256472368\nloaded_class_count: 21976\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433671317000,"args":{"JVM stats":"heap_memory_usage: 457765184\nnon_heap_memory_usage: 256477808\nloaded_class_count: 21976\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433671954000,"args":{"JVM stats":"heap_memory_usage: 559329272\nnon_heap_memory_usage: 256687360\nloaded_class_count: 21976\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433671956000,"args":{"JVM stats":"heap_memory_usage: 559428984\nnon_heap_memory_usage: 256687360\nloaded_class_count: 21976\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433672811000,"args":{"JVM stats":"heap_memory_usage: 350236808\nnon_heap_memory_usage: 257005640\nloaded_class_count: 21976\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 91\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433672818000,"args":{"JVM stats":"heap_memory_usage: 353846464\nnon_heap_memory_usage: 257022776\nloaded_class_count: 21976\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433674134000,"args":{"JVM stats":"heap_memory_usage: 276473664\nnon_heap_memory_usage: 258085360\nloaded_class_count: 21990\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 61\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433674140000,"args":{"JVM stats":"heap_memory_usage: 280469544\nnon_heap_memory_usage: 258086256\nloaded_class_count: 21990\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433674141000,"args":{"JVM stats":"heap_memory_usage: 280701608\nnon_heap_memory_usage: 258086256\nloaded_class_count: 21990\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433674142000,"args":{"JVM stats":"heap_memory_usage: 280904784\nnon_heap_memory_usage: 258086256\nloaded_class_count: 21990\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433674162000,"args":{"JVM stats":"heap_memory_usage: 280956664\nnon_heap_memory_usage: 258090744\nloaded_class_count: 21991\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433674168000,"args":{"JVM stats":"heap_memory_usage: 281031592\nnon_heap_memory_usage: 258090776\nloaded_class_count: 21991\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433674864000,"args":{"JVM stats":"heap_memory_usage: 312220312\nnon_heap_memory_usage: 258285536\nloaded_class_count: 21991\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433683272000,"args":{"JVM stats":"heap_memory_usage: 341967848\nnon_heap_memory_usage: 259707984\nloaded_class_count: 21992\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 7\n gc_time: 531\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433686906000,"args":{"JVM stats":"heap_memory_usage: 393580304\nnon_heap_memory_usage: 260937520\nloaded_class_count: 21993\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 3\n gc_time: 487\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433687479000,"args":{"JVM stats":"heap_memory_usage: 486521296\nnon_heap_memory_usage: 261229408\nloaded_class_count: 21995\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 77\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433687480000,"args":{"JVM stats":"heap_memory_usage: 488930160\nnon_heap_memory_usage: 261229408\nloaded_class_count: 21995\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433688471000,"args":{"JVM stats":"heap_memory_usage: 564582424\nnon_heap_memory_usage: 261338504\nloaded_class_count: 21995\nthread_count: 46\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433689250000,"args":{"JVM stats":"heap_memory_usage: 449378072\nnon_heap_memory_usage: 261097784\nloaded_class_count: 21997\nthread_count: 51\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 76\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433689838000,"args":{"JVM stats":"heap_memory_usage: 406007512\nnon_heap_memory_usage: 259896896\nloaded_class_count: 21997\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 3\n gc_time: 158\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433689843000,"args":{"JVM stats":"heap_memory_usage: 407092736\nnon_heap_memory_usage: 259904384\nloaded_class_count: 21997\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433689844000,"args":{"JVM stats":"heap_memory_usage: 407092736\nnon_heap_memory_usage: 259904384\nloaded_class_count: 21997\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433689844001,"args":{"JVM stats":"heap_memory_usage: 407092736\nnon_heap_memory_usage: 259904384\nloaded_class_count: 21997\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433689886000,"args":{"JVM stats":"heap_memory_usage: 408978312\nnon_heap_memory_usage: 259941776\nloaded_class_count: 22010\nthread_count: 39\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":1,"tid":12,"id":2,"name":"base plugin project configure","args":{"span_id":"2","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433648964000,"dur":9000},{"pid":1,"tid":12,"id":3,"name":"base plugin project base extension creation","args":{"span_id":"3","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433648973000,"dur":9000},{"pid":1,"tid":12,"id":5,"name":"task manager create tasks","args":{"span_id":"5","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433648982000,"dur":2000},{"pid":1,"tid":12,"id":4,"name":"base plugin project tasks creation","args":{"span_id":"4","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433648982000,"dur":2000},{"pid":1,"tid":12,"id":8,"name":"variant manager create variants","args":{"span_id":"8","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649016000,"dur":14000},{"pid":1,"tid":12,"id":9,"name":"variant manager create tests tasks","args":{"span_id":"9","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649030000,"dur":4000},{"pid":1,"tid":12,"id":11,"name":"app task manager create merge manifest task","args":{"span_id":"11","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649037000,"dur":3000},{"pid":1,"tid":12,"id":12,"name":"app task manager create generate res values task","args":{"span_id":"12","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649040000,"dur":100},{"pid":1,"tid":12,"id":13,"name":"app task manager create create renderscript task","args":{"span_id":"13","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649040000,"dur":1000},{"pid":1,"tid":12,"id":14,"name":"app task manager create merge resources task","args":{"span_id":"14","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649041000,"dur":3000},{"pid":1,"tid":12,"id":15,"name":"app task manager create merge assets task","args":{"span_id":"15","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649044000,"dur":1000},{"pid":1,"tid":12,"id":16,"name":"app task manager create build config task","args":{"span_id":"16","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649045000,"dur":1000},{"pid":1,"tid":12,"id":17,"name":"app task manager create process res task","args":{"span_id":"17","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649046000,"dur":6000},{"pid":1,"tid":12,"id":18,"name":"app task manager create aidl task","args":{"span_id":"18","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649052000,"dur":100},{"pid":1,"tid":12,"id":19,"name":"app task manager create shader task","args":{"span_id":"19","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649052000,"dur":3000},{"pid":1,"tid":12,"id":20,"name":"app task manager create ndk task","args":{"span_id":"20","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649055000,"dur":5000},{"pid":1,"tid":12,"id":21,"name":"app task manager create external native build task","args":{"span_id":"21","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649061000,"dur":100},{"pid":1,"tid":12,"id":22,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"22","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649061000,"dur":6000},{"pid":1,"tid":12,"id":23,"name":"app task manager create compile task","args":{"span_id":"23","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649067000,"dur":24000},{"pid":1,"tid":12,"id":24,"name":"app task manager create packaging task","args":{"span_id":"24","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649091000,"dur":8000},{"pid":1,"tid":12,"id":25,"name":"app task manager create lint task","args":{"span_id":"25","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649099000,"dur":1000},{"pid":1,"tid":12,"id":10,"name":"variant manager create tasks for variant","args":{"span_id":"10","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649034000,"dur":66000},{"pid":1,"tid":12,"id":26,"name":"variant manager create tasks for variant","args":{"span_id":"26","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649100000,"dur":6000},{"pid":1,"tid":12,"id":27,"name":"variant manager create tasks for variant","args":{"span_id":"27","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649106000,"dur":11000},{"pid":1,"tid":12,"id":7,"name":"variant manager create android tasks","args":{"span_id":"7","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649015000,"dur":104000},{"pid":1,"tid":12,"id":28,"name":"variant manager external native config values","args":{"span_id":"28","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649120000,"dur":100},{"pid":1,"tid":12,"id":6,"name":"base plugin create android tasks","args":{"span_id":"6","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649011000,"dur":109000},{"pid":1,"tid":12,"id":29,"name":"base plugin project configure","args":{"span_id":"29","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649127000,"dur":6000},{"pid":1,"tid":12,"id":30,"name":"base plugin project base extension creation","args":{"span_id":"30","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649133000,"dur":11000},{"pid":1,"tid":12,"id":32,"name":"task manager create tasks","args":{"span_id":"32","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649144000,"dur":1000},{"pid":1,"tid":12,"id":31,"name":"base plugin project tasks creation","args":{"span_id":"31","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649144000,"dur":1000},{"pid":1,"tid":12,"id":35,"name":"variant manager create variants","args":{"span_id":"35","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649160000,"dur":4000},{"pid":1,"tid":12,"id":36,"name":"variant manager create tests tasks","args":{"span_id":"36","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649164000,"dur":100},{"pid":1,"tid":12,"id":38,"name":"lib task manager create generate res values task","args":{"span_id":"38","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649165000,"dur":100},{"pid":1,"tid":12,"id":39,"name":"lib task manager create merge manifest task","args":{"span_id":"39","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649165000,"dur":1000},{"pid":1,"tid":12,"id":40,"name":"lib task manager create create renderscript task","args":{"span_id":"40","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649166000,"dur":1000},{"pid":1,"tid":12,"id":41,"name":"lib task manager create merge resources task","args":{"span_id":"41","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649167000,"dur":100},{"pid":1,"tid":12,"id":42,"name":"lib task manager create merge assets task","args":{"span_id":"42","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649167000,"dur":100},{"pid":1,"tid":12,"id":43,"name":"lib task manager create build config task","args":{"span_id":"43","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649167000,"dur":100},{"pid":1,"tid":12,"id":44,"name":"lib task manager create process res task","args":{"span_id":"44","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649167000,"dur":4000},{"pid":1,"tid":12,"id":45,"name":"lib task manager create aidl task","args":{"span_id":"45","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649171000,"dur":1000},{"pid":1,"tid":12,"id":46,"name":"lib task manager create shader task","args":{"span_id":"46","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649172000,"dur":100},{"pid":1,"tid":12,"id":47,"name":"lib task manager create compile task","args":{"span_id":"47","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649172000,"dur":3000},{"pid":1,"tid":12,"id":48,"name":"lib task manager create ndk task","args":{"span_id":"48","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649175000,"dur":100},{"pid":1,"tid":12,"id":49,"name":"lib task manager create external native build task","args":{"span_id":"49","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649175000,"dur":100},{"pid":1,"tid":12,"id":50,"name":"lib task manager create packaging task","args":{"span_id":"50","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649175000,"dur":4000},{"pid":1,"tid":12,"id":51,"name":"lib task manager create merge proguard file task","args":{"span_id":"51","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649179000,"dur":100},{"pid":1,"tid":12,"id":52,"name":"lib task manager create post compilation task","args":{"span_id":"52","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649181000,"dur":7000},{"pid":1,"tid":12,"id":53,"name":"lib task manager create lint task","args":{"span_id":"53","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649189000,"dur":100},{"pid":1,"tid":12,"id":37,"name":"variant manager create tasks for variant","args":{"span_id":"37","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649164000,"dur":25000},{"pid":1,"tid":12,"id":54,"name":"variant manager create tasks for variant","args":{"span_id":"54","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649189000,"dur":3000},{"pid":1,"tid":12,"id":56,"name":"lib task manager create generate res values task","args":{"span_id":"56","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649193000,"dur":100},{"pid":1,"tid":12,"id":57,"name":"lib task manager create merge manifest task","args":{"span_id":"57","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649193000,"dur":2000},{"pid":1,"tid":12,"id":58,"name":"lib task manager create create renderscript task","args":{"span_id":"58","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649195000,"dur":100},{"pid":1,"tid":12,"id":59,"name":"lib task manager create merge resources task","args":{"span_id":"59","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649195000,"dur":2000},{"pid":1,"tid":12,"id":60,"name":"lib task manager create merge assets task","args":{"span_id":"60","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649197000,"dur":100},{"pid":1,"tid":12,"id":61,"name":"lib task manager create build config task","args":{"span_id":"61","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649197000,"dur":1000},{"pid":1,"tid":12,"id":62,"name":"lib task manager create process res task","args":{"span_id":"62","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649199000,"dur":2000},{"pid":1,"tid":12,"id":63,"name":"lib task manager create aidl task","args":{"span_id":"63","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649201000,"dur":1000},{"pid":1,"tid":12,"id":64,"name":"lib task manager create shader task","args":{"span_id":"64","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649202000,"dur":100},{"pid":1,"tid":12,"id":65,"name":"lib task manager create compile task","args":{"span_id":"65","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649202000,"dur":1000},{"pid":1,"tid":12,"id":66,"name":"lib task manager create ndk task","args":{"span_id":"66","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649203000,"dur":100},{"pid":1,"tid":12,"id":67,"name":"lib task manager create external native build task","args":{"span_id":"67","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649203000,"dur":100},{"pid":1,"tid":12,"id":68,"name":"lib task manager create packaging task","args":{"span_id":"68","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649204000,"dur":100},{"pid":1,"tid":12,"id":69,"name":"lib task manager create merge proguard file task","args":{"span_id":"69","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649204000,"dur":100},{"pid":1,"tid":12,"id":70,"name":"lib task manager create post compilation task","args":{"span_id":"70","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649205000,"dur":1000},{"pid":1,"tid":12,"id":71,"name":"lib task manager create lint task","args":{"span_id":"71","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649206000,"dur":100},{"pid":1,"tid":12,"id":55,"name":"variant manager create tasks for variant","args":{"span_id":"55","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649192000,"dur":14000},{"pid":1,"tid":12,"id":72,"name":"variant manager create tasks for variant","args":{"span_id":"72","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649206000,"dur":4000},{"pid":1,"tid":12,"id":73,"name":"variant manager create tasks for variant","args":{"span_id":"73","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649210000,"dur":10000},{"pid":1,"tid":12,"id":34,"name":"variant manager create android tasks","args":{"span_id":"34","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649160000,"dur":61000},{"pid":1,"tid":12,"id":74,"name":"variant manager external native config values","args":{"span_id":"74","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649221000,"dur":100},{"pid":1,"tid":12,"id":33,"name":"base plugin create android tasks","args":{"span_id":"33","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649159000,"dur":62000},{"pid":1,"tid":12,"id":75,"name":"base plugin project configure","args":{"span_id":"75","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649236000,"dur":5000},{"pid":1,"tid":12,"id":76,"name":"base plugin project base extension creation","args":{"span_id":"76","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649241000,"dur":5000},{"pid":1,"tid":12,"id":78,"name":"task manager create tasks","args":{"span_id":"78","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649246000,"dur":1000},{"pid":1,"tid":12,"id":77,"name":"base plugin project tasks creation","args":{"span_id":"77","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649246000,"dur":1000},{"pid":1,"tid":12,"id":81,"name":"variant manager create variants","args":{"span_id":"81","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649251000,"dur":4000},{"pid":1,"tid":12,"id":82,"name":"variant manager create tests tasks","args":{"span_id":"82","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649255000,"dur":1000},{"pid":1,"tid":12,"id":84,"name":"lib task manager create generate res values task","args":{"span_id":"84","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649256000,"dur":100},{"pid":1,"tid":12,"id":85,"name":"lib task manager create merge manifest task","args":{"span_id":"85","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649256000,"dur":1000},{"pid":1,"tid":12,"id":86,"name":"lib task manager create create renderscript task","args":{"span_id":"86","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649257000,"dur":100},{"pid":1,"tid":12,"id":87,"name":"lib task manager create merge resources task","args":{"span_id":"87","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649257000,"dur":100},{"pid":1,"tid":12,"id":88,"name":"lib task manager create merge assets task","args":{"span_id":"88","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649257000,"dur":1000},{"pid":1,"tid":12,"id":89,"name":"lib task manager create build config task","args":{"span_id":"89","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649258000,"dur":100},{"pid":1,"tid":12,"id":90,"name":"lib task manager create process res task","args":{"span_id":"90","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649258000,"dur":5000},{"pid":1,"tid":12,"id":91,"name":"lib task manager create aidl task","args":{"span_id":"91","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649263000,"dur":100},{"pid":1,"tid":12,"id":92,"name":"lib task manager create shader task","args":{"span_id":"92","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649263000,"dur":2000},{"pid":1,"tid":12,"id":93,"name":"lib task manager create compile task","args":{"span_id":"93","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649265000,"dur":1000},{"pid":1,"tid":12,"id":94,"name":"lib task manager create ndk task","args":{"span_id":"94","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649266000,"dur":100},{"pid":1,"tid":12,"id":95,"name":"lib task manager create external native build task","args":{"span_id":"95","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649266000,"dur":1000},{"pid":1,"tid":12,"id":96,"name":"lib task manager create packaging task","args":{"span_id":"96","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649267000,"dur":1000},{"pid":1,"tid":12,"id":97,"name":"lib task manager create merge proguard file task","args":{"span_id":"97","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649268000,"dur":100},{"pid":1,"tid":12,"id":98,"name":"lib task manager create post compilation task","args":{"span_id":"98","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649269000,"dur":2000},{"pid":1,"tid":12,"id":99,"name":"lib task manager create lint task","args":{"span_id":"99","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649271000,"dur":100},{"pid":1,"tid":12,"id":83,"name":"variant manager create tasks for variant","args":{"span_id":"83","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649256000,"dur":15000},{"pid":1,"tid":12,"id":100,"name":"variant manager create tasks for variant","args":{"span_id":"100","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649271000,"dur":4000},{"pid":1,"tid":12,"id":102,"name":"lib task manager create generate res values task","args":{"span_id":"102","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649275000,"dur":1000},{"pid":1,"tid":12,"id":103,"name":"lib task manager create merge manifest task","args":{"span_id":"103","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649276000,"dur":100},{"pid":1,"tid":12,"id":104,"name":"lib task manager create create renderscript task","args":{"span_id":"104","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649276000,"dur":1000},{"pid":1,"tid":12,"id":105,"name":"lib task manager create merge resources task","args":{"span_id":"105","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649277000,"dur":1000},{"pid":1,"tid":12,"id":106,"name":"lib task manager create merge assets task","args":{"span_id":"106","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649278000,"dur":100},{"pid":1,"tid":12,"id":107,"name":"lib task manager create build config task","args":{"span_id":"107","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649278000,"dur":100},{"pid":1,"tid":12,"id":108,"name":"lib task manager create process res task","args":{"span_id":"108","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649278000,"dur":3000},{"pid":1,"tid":12,"id":109,"name":"lib task manager create aidl task","args":{"span_id":"109","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649281000,"dur":100},{"pid":1,"tid":12,"id":110,"name":"lib task manager create shader task","args":{"span_id":"110","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649281000,"dur":100},{"pid":1,"tid":12,"id":111,"name":"lib task manager create compile task","args":{"span_id":"111","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649281000,"dur":1000},{"pid":1,"tid":12,"id":112,"name":"lib task manager create ndk task","args":{"span_id":"112","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649282000,"dur":100},{"pid":1,"tid":12,"id":113,"name":"lib task manager create external native build task","args":{"span_id":"113","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649282000,"dur":1000},{"pid":1,"tid":12,"id":114,"name":"lib task manager create packaging task","args":{"span_id":"114","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649283000,"dur":100},{"pid":1,"tid":12,"id":115,"name":"lib task manager create merge proguard file task","args":{"span_id":"115","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649283000,"dur":1000},{"pid":1,"tid":12,"id":116,"name":"lib task manager create post compilation task","args":{"span_id":"116","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649284000,"dur":2000},{"pid":1,"tid":12,"id":117,"name":"lib task manager create lint task","args":{"span_id":"117","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649287000,"dur":100},{"pid":1,"tid":12,"id":101,"name":"variant manager create tasks for variant","args":{"span_id":"101","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433649275000,"dur":12000},{"pid":1,"tid":12,"id":118,"name":"variant manager create tasks for variant","args":{"span_id":"118","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649287000,"dur":6000},{"pid":1,"tid":12,"id":119,"name":"variant manager create tasks for variant","args":{"span_id":"119","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649293000,"dur":13000},{"pid":1,"tid":12,"id":80,"name":"variant manager create android tasks","args":{"span_id":"80","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649251000,"dur":56000},{"pid":1,"tid":12,"id":120,"name":"variant manager external native config values","args":{"span_id":"120","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649307000,"dur":100},{"pid":1,"tid":12,"id":79,"name":"base plugin create android tasks","args":{"span_id":"79","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433649250000,"dur":57000},{"pid":1,"tid":0,"id":121,"name":"task: build info loader","args":{"span_id":"121","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 7\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433649378000,"dur":5000},{"pid":1,"tid":0,"id":122,"name":"task: merge source set folders","args":{"span_id":"122","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649384000,"dur":3000},{"pid":1,"tid":0,"id":123,"name":"task: shader compile","args":{"span_id":"123","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649389000,"dur":1000},{"pid":1,"tid":0,"id":124,"name":"task: unknown task type","args":{"span_id":"124","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649391000,"dur":100},{"pid":1,"tid":0,"id":125,"name":"task: merge source set folders","args":{"span_id":"125","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649392000,"dur":2000},{"pid":1,"tid":0,"id":126,"name":"task: shader compile","args":{"span_id":"126","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649396000,"dur":1000},{"pid":1,"tid":0,"id":127,"name":"task: unknown task type","args":{"span_id":"127","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649397000,"dur":1000},{"pid":1,"tid":0,"id":128,"name":"task: merge source set folders","args":{"span_id":"128","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649398000,"dur":5000},{"pid":1,"tid":0,"id":129,"name":"task: merge source set folders","args":{"span_id":"129","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649404000,"dur":1000},{"pid":1,"tid":0,"id":130,"name":"task: shader compile","args":{"span_id":"130","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649406000,"dur":1000},{"pid":1,"tid":0,"id":131,"name":"task: unknown task type","args":{"span_id":"131","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649408000,"dur":100},{"pid":1,"tid":0,"id":132,"name":"task: merge source set folders","args":{"span_id":"132","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649409000,"dur":2000},{"pid":1,"tid":0,"id":133,"name":"task: merge source set folders","args":{"span_id":"133","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649412000,"dur":181000},{"pid":1,"tid":0,"id":134,"name":"task: unknown task type","args":{"span_id":"134","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649593000,"dur":1000},{"pid":1,"tid":0,"id":135,"name":"task: unknown task type","args":{"span_id":"135","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649594000,"dur":100},{"pid":1,"tid":0,"id":136,"name":"task: unknown task type","args":{"span_id":"136","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649594000,"dur":100},{"pid":1,"tid":0,"id":137,"name":"task: check manifest","args":{"span_id":"137","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649595000,"dur":100},{"pid":1,"tid":0,"id":138,"name":"task: process manifest","args":{"span_id":"138","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 52\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649596000,"dur":1000},{"pid":1,"tid":0,"id":139,"name":"task: unknown task type","args":{"span_id":"139","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649598000,"dur":100},{"pid":1,"tid":0,"id":140,"name":"task: unknown task type","args":{"span_id":"140","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649599000,"dur":100},{"pid":1,"tid":0,"id":141,"name":"task: check manifest","args":{"span_id":"141","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649600000,"dur":1000},{"pid":1,"tid":0,"id":142,"name":"task: process manifest","args":{"span_id":"142","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 52\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649603000,"dur":2000},{"pid":1,"tid":0,"id":143,"name":"task: app pre build","args":{"span_id":"143","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 92\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649605000,"dur":27000},{"pid":1,"tid":0,"id":144,"name":"task: check manifest","args":{"span_id":"144","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649632000,"dur":1000},{"pid":1,"tid":0,"id":145,"name":"task: compatible screens manifest","args":{"span_id":"145","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 9\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649634000,"dur":1000},{"pid":1,"tid":0,"id":146,"name":"task: merge manifests","args":{"span_id":"146","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 39\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649636000,"dur":11000},{"pid":1,"tid":0,"id":147,"name":"task: unknown task type","args":{"span_id":"147","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433649647000,"dur":1000},{"pid":1,"tid":0,"id":148,"name":"task: unknown task type","args":{"span_id":"148","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433649648000,"dur":1000},{"pid":1,"tid":0,"id":149,"name":"task: renderscript compile","args":{"span_id":"149","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649650000,"dur":11000},{"pid":1,"tid":0,"id":150,"name":"task: generate res values","args":{"span_id":"150","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649661000,"dur":1000},{"pid":1,"tid":0,"id":151,"name":"task: unknown task type","args":{"span_id":"151","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649662000,"dur":1000},{"pid":1,"tid":0,"id":152,"name":"task: renderscript compile","args":{"span_id":"152","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649664000,"dur":30000},{"pid":1,"tid":0,"id":153,"name":"task: generate res values","args":{"span_id":"153","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649695000,"dur":100},{"pid":1,"tid":0,"id":154,"name":"task: unknown task type","args":{"span_id":"154","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649696000,"dur":100},{"pid":1,"tid":0,"id":155,"name":"task: merge resources","args":{"span_id":"155","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649697000,"dur":13000},{"pid":1,"tid":0,"id":156,"name":"task: renderscript compile","args":{"span_id":"156","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649711000,"dur":64000},{"pid":1,"tid":0,"id":157,"name":"task: generate res values","args":{"span_id":"157","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649775000,"dur":1000},{"pid":1,"tid":0,"id":158,"name":"task: unknown task type","args":{"span_id":"158","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649776000,"dur":1000},{"pid":1,"tid":0,"id":159,"name":"task: merge resources","args":{"span_id":"159","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433649777000,"dur":2000},{"pid":1,"tid":0,"id":160,"name":"task: merge resources","args":{"span_id":"160","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433649780000,"dur":711000},{"pid":1,"tid":0,"id":161,"name":"task: splits discovery","args":{"span_id":"161","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 87\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433650494000,"dur":1000},{"pid":1,"tid":0,"id":162,"name":"task: platform attr extractor","args":{"span_id":"162","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 109\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433650502000,"dur":1000},{"pid":1,"tid":0,"id":163,"name":"task: platform attr extractor","args":{"span_id":"163","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 109\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433650504000,"dur":1000},{"pid":1,"tid":0,"id":164,"name":"task: process android resources","args":{"span_id":"164","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433650507000,"dur":14000},{"pid":1,"tid":0,"id":165,"name":"task: process android resources","args":{"span_id":"165","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433650522000,"dur":118000},{"pid":1,"tid":0,"id":166,"name":"task: process android resources","args":{"span_id":"166","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433650641000,"dur":2094000},{"pid":1,"tid":0,"id":167,"name":"task: package application","args":{"span_id":"167","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 45\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433652736000,"dur":574000},{"pid":1,"tid":0,"id":168,"name":"task: aidl compile","args":{"span_id":"168","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433653316000,"dur":6000},{"pid":1,"tid":0,"id":169,"name":"task: aidl compile","args":{"span_id":"169","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433653323000,"dur":7000},{"pid":1,"tid":0,"id":170,"name":"task: aidl compile","args":{"span_id":"170","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433653331000,"dur":7000},{"pid":1,"tid":0,"id":171,"name":"task: generate build config","args":{"span_id":"171","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433653338000,"dur":1000},{"pid":1,"tid":0,"id":172,"name":"task: prepare lint jar","args":{"span_id":"172","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 119\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433653340000,"dur":1000},{"pid":1,"tid":0,"id":173,"name":"task: unknown task type","args":{"span_id":"173","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433653341000,"dur":100},{"pid":1,"tid":0,"id":174,"name":"task: generate build config","args":{"span_id":"174","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433653341000,"dur":1000},{"pid":1,"tid":0,"id":175,"name":"task: prepare lint jar","args":{"span_id":"175","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 119\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433653343000,"dur":1000},{"pid":1,"tid":0,"id":176,"name":"task: unknown task type","args":{"span_id":"176","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433653344000,"dur":100},{"pid":1,"tid":0,"id":177,"name":"task: unknown task type","args":{"span_id":"177","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433653345000,"dur":74000},{"pid":1,"tid":0,"id":178,"name":"task: unknown task type","args":{"span_id":"178","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433653424000,"dur":4006000},{"pid":1,"tid":0,"id":179,"name":"task: generate build config","args":{"span_id":"179","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433657431000,"dur":2000},{"pid":1,"tid":0,"id":180,"name":"task: prepare lint jar","args":{"span_id":"180","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 119\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433657433000,"dur":1000},{"pid":1,"tid":0,"id":181,"name":"task: unknown task type","args":{"span_id":"181","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433657434000,"dur":100},{"pid":1,"tid":0,"id":182,"name":"task: java pre compile","args":{"span_id":"182","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 76\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433657435000,"dur":23000},{"pid":1,"tid":0,"id":183,"name":"task: android java compile","args":{"span_id":"183","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 3\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433657462000,"dur":729000},{"pid":1,"tid":0,"id":184,"name":"task: unknown task type","args":{"span_id":"184","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433658191000,"dur":2000},{"pid":1,"tid":12,"id":186,"name":"transform prep: unknown transform type","args":{"span_id":"186","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 0\nis_incremental: false\n"},"ph":"X","ts":1546433658197000,"dur":100},{"pid":1,"tid":12,"id":187,"name":"transform: unknown transform type","args":{"span_id":"187","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 0\nis_incremental: false\n"},"ph":"X","ts":1546433658197000,"dur":14000},{"pid":1,"tid":0,"id":185,"name":"task: transform","args":{"span_id":"185","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433658195000,"dur":24000},{"pid":1,"tid":0,"id":188,"name":"task: java pre compile","args":{"span_id":"188","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 76\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433658220000,"dur":124000},{"pid":1,"tid":0,"id":189,"name":"task: android java compile","args":{"span_id":"189","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 3\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433658345000,"dur":6981000},{"pid":1,"tid":0,"id":190,"name":"task: unknown task type","args":{"span_id":"190","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433665327000,"dur":1000},{"pid":1,"tid":13,"id":192,"name":"transform prep: unknown transform type","args":{"span_id":"192","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 0\nis_incremental: false\n"},"ph":"X","ts":1546433665333000,"dur":1000},{"pid":1,"tid":13,"id":193,"name":"transform: unknown transform type","args":{"span_id":"193","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 0\nis_incremental: false\n"},"ph":"X","ts":1546433665334000,"dur":75000},{"pid":1,"tid":0,"id":191,"name":"task: transform","args":{"span_id":"191","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433665329000,"dur":84000},{"pid":1,"tid":0,"id":194,"name":"task: java pre compile","args":{"span_id":"194","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 76\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433665414000,"dur":105000},{"pid":1,"tid":0,"id":195,"name":"task: android java compile","args":{"span_id":"195","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 3\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433665520000,"dur":4817000},{"pid":1,"tid":0,"id":196,"name":"task: check manifest in instant run mode","args":{"span_id":"196","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 72\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433670338000,"dur":7000},{"pid":1,"tid":14,"id":198,"name":"transform prep: extract jars","args":{"span_id":"198","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 2\nis_incremental: false\n"},"ph":"X","ts":1546433670350000,"dur":100},{"pid":1,"tid":14,"id":199,"name":"transform: extract jars","args":{"span_id":"199","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 2\nis_incremental: false\n"},"ph":"X","ts":1546433670350000,"dur":57000},{"pid":1,"tid":0,"id":197,"name":"task: transform","args":{"span_id":"197","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433670346000,"dur":83000},{"pid":1,"tid":14,"id":201,"name":"transform prep: instant run verifier","args":{"span_id":"201","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 20\nis_incremental: false\n"},"ph":"X","ts":1546433670451000,"dur":1000},{"pid":1,"tid":14,"id":202,"name":"transform: instant run verifier","args":{"span_id":"202","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 20\nis_incremental: false\n"},"ph":"X","ts":1546433670452000,"dur":616000},{"pid":1,"tid":0,"id":200,"name":"task: transform","args":{"span_id":"200","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433670430000,"dur":717000},{"pid":1,"tid":0,"id":203,"name":"task: transform","args":{"span_id":"203","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433671147000,"dur":16000},{"pid":1,"tid":0,"id":204,"name":"task: ndk compile","args":{"span_id":"204","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 43\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433671164000,"dur":2000},{"pid":1,"tid":0,"id":205,"name":"task: merge source set folders","args":{"span_id":"205","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433671167000,"dur":8000},{"pid":1,"tid":0,"id":206,"name":"task: ndk compile","args":{"span_id":"206","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 43\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433671176000,"dur":100},{"pid":1,"tid":0,"id":207,"name":"task: merge source set folders","args":{"span_id":"207","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433671177000,"dur":58000},{"pid":1,"tid":13,"id":209,"name":"transform prep: merge java resources","args":{"span_id":"209","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 13\nis_incremental: false\n"},"ph":"X","ts":1546433671240000,"dur":1000},{"pid":1,"tid":13,"id":210,"name":"transform: merge java resources","args":{"span_id":"210","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 13\nis_incremental: false\n"},"ph":"X","ts":1546433671241000,"dur":14000},{"pid":1,"tid":0,"id":208,"name":"task: transform","args":{"span_id":"208","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433671236000,"dur":32000},{"pid":1,"tid":12,"id":212,"name":"transform prep: library jni libs","args":{"span_id":"212","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 12\nis_incremental: false\n"},"ph":"X","ts":1546433671272000,"dur":100},{"pid":1,"tid":12,"id":213,"name":"transform: library jni libs","args":{"span_id":"213","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 12\nis_incremental: false\n"},"ph":"X","ts":1546433671272000,"dur":12000},{"pid":1,"tid":0,"id":211,"name":"task: transform","args":{"span_id":"211","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433671269000,"dur":27000},{"pid":1,"tid":0,"id":214,"name":"task: ndk compile","args":{"span_id":"214","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 43\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433671297000,"dur":1000},{"pid":1,"tid":0,"id":215,"name":"task: merge source set folders","args":{"span_id":"215","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433671299000,"dur":4000},{"pid":1,"tid":12,"id":217,"name":"transform prep: merge java resources","args":{"span_id":"217","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 13\nis_incremental: false\n"},"ph":"X","ts":1546433671306000,"dur":1000},{"pid":1,"tid":12,"id":218,"name":"transform: merge java resources","args":{"span_id":"218","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 13\nis_incremental: false\n"},"ph":"X","ts":1546433671307000,"dur":4000},{"pid":1,"tid":0,"id":216,"name":"task: transform","args":{"span_id":"216","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433671304000,"dur":8000},{"pid":1,"tid":12,"id":220,"name":"transform prep: library jni libs","args":{"span_id":"220","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 12\nis_incremental: false\n"},"ph":"X","ts":1546433671316000,"dur":100},{"pid":1,"tid":12,"id":221,"name":"transform: library jni libs","args":{"span_id":"221","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 12\nis_incremental: false\n"},"ph":"X","ts":1546433671316000,"dur":100},{"pid":1,"tid":0,"id":219,"name":"task: transform","args":{"span_id":"219","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433671312000,"dur":5000},{"pid":1,"tid":12,"id":223,"name":"transform prep: merge java resources","args":{"span_id":"223","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 13\nis_incremental: false\n"},"ph":"X","ts":1546433671352000,"dur":18000},{"pid":1,"tid":12,"id":224,"name":"transform: merge java resources","args":{"span_id":"224","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 13\nis_incremental: false\n"},"ph":"X","ts":1546433671370000,"dur":525000},{"pid":1,"tid":0,"id":222,"name":"task: transform","args":{"span_id":"222","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433671318000,"dur":636000},{"pid":1,"tid":0,"id":225,"name":"task: unknown task type","args":{"span_id":"225","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433671955000,"dur":1000},{"pid":1,"tid":12,"id":227,"name":"transform prep: merge java resources","args":{"span_id":"227","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 13\nis_incremental: false\n"},"ph":"X","ts":1546433671982000,"dur":1000},{"pid":1,"tid":12,"id":228,"name":"transform: merge java resources","args":{"span_id":"228","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 13\nis_incremental: false\n"},"ph":"X","ts":1546433671983000,"dur":783000},{"pid":1,"tid":0,"id":226,"name":"task: transform","args":{"span_id":"226","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433671957000,"dur":854000},{"pid":1,"tid":12,"id":230,"name":"transform prep: no changes verifier","args":{"span_id":"230","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 16\nis_incremental: true\n"},"ph":"X","ts":1546433672815000,"dur":1000},{"pid":1,"tid":12,"id":231,"name":"transform: no changes verifier","args":{"span_id":"231","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 16\nis_incremental: true\n"},"ph":"X","ts":1546433672816000,"dur":100},{"pid":1,"tid":0,"id":229,"name":"task: transform","args":{"span_id":"229","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433672811000,"dur":6000},{"pid":1,"tid":13,"id":233,"name":"transform prep: instant run","args":{"span_id":"233","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 5\nis_incremental: false\n"},"ph":"X","ts":1546433672879000,"dur":27000},{"pid":1,"tid":13,"id":234,"name":"transform: instant run","args":{"span_id":"234","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 5\nis_incremental: false\n"},"ph":"X","ts":1546433672906000,"dur":1162000},{"pid":1,"tid":0,"id":232,"name":"task: transform","args":{"span_id":"232","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433672819000,"dur":1315000},{"pid":1,"tid":13,"id":236,"name":"transform prep: instant run dex","args":{"span_id":"236","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 3\nis_incremental: false\n"},"ph":"X","ts":1546433674137000,"dur":1000},{"pid":1,"tid":13,"id":237,"name":"transform: instant run dex","args":{"span_id":"237","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 3\nis_incremental: false\n"},"ph":"X","ts":1546433674138000,"dur":100},{"pid":1,"tid":0,"id":235,"name":"task: transform","args":{"span_id":"235","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433674135000,"dur":5000},{"pid":1,"tid":0,"id":238,"name":"task: unknown task type","args":{"span_id":"238","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433674141000,"dur":100},{"pid":1,"tid":0,"id":239,"name":"task: pre cold swap","args":{"span_id":"239","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 48\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433674142000,"dur":100},{"pid":1,"tid":0,"id":240,"name":"task: fast deploy runtime extractor","args":{"span_id":"240","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 21\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433674143000,"dur":19000},{"pid":1,"tid":0,"id":241,"name":"task: generate instant run app info","args":{"span_id":"241","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 25\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433674163000,"dur":5000},{"pid":1,"tid":12,"id":243,"name":"transform prep: instant run slicer","args":{"span_id":"243","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 4\nis_incremental: false\n"},"ph":"X","ts":1546433674187000,"dur":3000},{"pid":1,"tid":12,"id":244,"name":"transform: instant run slicer","args":{"span_id":"244","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 4\nis_incremental: false\n"},"ph":"X","ts":1546433674190000,"dur":583000},{"pid":1,"tid":0,"id":242,"name":"task: transform","args":{"span_id":"242","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433674169000,"dur":695000},{"pid":1,"tid":12,"id":246,"name":"transform prep: dex archive builder","args":{"span_id":"246","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 29\nis_incremental: false\n"},"ph":"X","ts":1546433674916000,"dur":3000},{"pid":1,"tid":12,"id":247,"name":"transform: dex archive builder","args":{"span_id":"247","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 29\nis_incremental: false\n"},"ph":"X","ts":1546433674919000,"dur":8133000},{"pid":1,"tid":0,"id":245,"name":"task: transform","args":{"span_id":"245","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433674864000,"dur":8408000},{"pid":1,"tid":12,"id":249,"name":"transform prep: external libs merger","args":{"span_id":"249","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 34\nis_incremental: false\n"},"ph":"X","ts":1546433683309000,"dur":6000},{"pid":1,"tid":12,"id":250,"name":"transform: external libs merger","args":{"span_id":"250","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 34\nis_incremental: false\n"},"ph":"X","ts":1546433683315000,"dur":3547000},{"pid":1,"tid":0,"id":248,"name":"task: transform","args":{"span_id":"248","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433683273000,"dur":3633000},{"pid":1,"tid":13,"id":252,"name":"transform prep: dex merger","args":{"span_id":"252","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 30\nis_incremental: false\n"},"ph":"X","ts":1546433686931000,"dur":2000},{"pid":1,"tid":13,"id":253,"name":"transform: dex merger","args":{"span_id":"253","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 30\nis_incremental: false\n"},"ph":"X","ts":1546433686933000,"dur":482000},{"pid":1,"tid":0,"id":251,"name":"task: transform","args":{"span_id":"251","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433686907000,"dur":572000},{"pid":1,"tid":0,"id":254,"name":"task: validate signing","args":{"span_id":"254","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 67\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433687479000,"dur":1000},{"pid":1,"tid":13,"id":256,"name":"transform prep: instant run dependencies apk builder","args":{"span_id":"256","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 23\nis_incremental: false\n"},"ph":"X","ts":1546433687484000,"dur":2000},{"pid":1,"tid":13,"id":257,"name":"transform: instant run dependencies apk builder","args":{"span_id":"257","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 23\nis_incremental: false\n"},"ph":"X","ts":1546433687486000,"dur":984000},{"pid":1,"tid":0,"id":255,"name":"task: transform","args":{"span_id":"255","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433687481000,"dur":990000},{"pid":1,"tid":13,"id":259,"name":"transform prep: instant run slice split apk builder","args":{"span_id":"259","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 24\nis_incremental: false\n"},"ph":"X","ts":1546433688475000,"dur":1000},{"pid":1,"tid":13,"id":260,"name":"transform: instant run slice split apk builder","args":{"span_id":"260","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 24\nis_incremental: false\n"},"ph":"X","ts":1546433688476000,"dur":773000},{"pid":1,"tid":0,"id":258,"name":"task: transform","args":{"span_id":"258","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433688472000,"dur":778000},{"pid":1,"tid":0,"id":261,"name":"task: package application","args":{"span_id":"261","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 45\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433689250000,"dur":588000},{"pid":1,"tid":0,"id":262,"name":"task: build info writer","args":{"span_id":"262","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 70\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433689841000,"dur":2000},{"pid":1,"tid":0,"id":263,"name":"task: unknown task type","args":{"span_id":"263","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433689844000,"dur":100},{"pid":1,"tid":0,"id":264,"name":"task: unknown task type","args":{"span_id":"264","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433689844000,"dur":100},{"pid":1,"tid":12,"id":265,"name":"base plugin build finished","args":{"span_id":"265","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 173295\n apk_size: 4609905\n resources_ap_size: 1462623\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433689869000,"dur":2000},{"pid":1,"tid":12,"id":266,"name":"base plugin build finished","args":{"span_id":"266","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433689871000,"dur":100},{"pid":1,"tid":12,"id":267,"name":"base plugin build finished","args":{"span_id":"267","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433689871000,"dur":100}] \ No newline at end of file diff --git a/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-54-49-885.rawproto b/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-54-49-885.rawproto deleted file mode 100644 index 3220a15..0000000 Binary files a/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-54-49-885.rawproto and /dev/null differ diff --git a/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-56-30-797.json b/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-56-30-797.json deleted file mode 100644 index 4d055c9..0000000 --- a/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-56-30-797.json +++ /dev/null @@ -1 +0,0 @@ -[{"pid":0,"ph":"i","name":"Memory sample","ts":1546433782765000,"args":{"JVM stats":"heap_memory_usage: 428723520\nnon_heap_memory_usage: 259185456\nloaded_class_count: 22011\nthread_count: 28\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783294000,"args":{"JVM stats":"heap_memory_usage: 456166520\nnon_heap_memory_usage: 259511408\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783301000,"args":{"JVM stats":"heap_memory_usage: 456166520\nnon_heap_memory_usage: 259502960\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783303000,"args":{"JVM stats":"heap_memory_usage: 456166520\nnon_heap_memory_usage: 259502960\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783303001,"args":{"JVM stats":"heap_memory_usage: 456166520\nnon_heap_memory_usage: 259502960\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783305000,"args":{"JVM stats":"heap_memory_usage: 456684536\nnon_heap_memory_usage: 259505200\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783306000,"args":{"JVM stats":"heap_memory_usage: 456684536\nnon_heap_memory_usage: 259505200\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783307000,"args":{"JVM stats":"heap_memory_usage: 456684536\nnon_heap_memory_usage: 259505200\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783311000,"args":{"JVM stats":"heap_memory_usage: 456684536\nnon_heap_memory_usage: 259508080\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783313000,"args":{"JVM stats":"heap_memory_usage: 456684536\nnon_heap_memory_usage: 259510192\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783316000,"args":{"JVM stats":"heap_memory_usage: 456684536\nnon_heap_memory_usage: 259510192\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783316001,"args":{"JVM stats":"heap_memory_usage: 456684536\nnon_heap_memory_usage: 259510192\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783319000,"args":{"JVM stats":"heap_memory_usage: 456684536\nnon_heap_memory_usage: 259510192\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783536000,"args":{"JVM stats":"heap_memory_usage: 470686552\nnon_heap_memory_usage: 259640424\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783537000,"args":{"JVM stats":"heap_memory_usage: 470686552\nnon_heap_memory_usage: 259640424\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783537001,"args":{"JVM stats":"heap_memory_usage: 470686552\nnon_heap_memory_usage: 259640424\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783538000,"args":{"JVM stats":"heap_memory_usage: 470686552\nnon_heap_memory_usage: 259640424\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783539000,"args":{"JVM stats":"heap_memory_usage: 470686552\nnon_heap_memory_usage: 259640424\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783542000,"args":{"JVM stats":"heap_memory_usage: 470686552\nnon_heap_memory_usage: 259643048\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783543000,"args":{"JVM stats":"heap_memory_usage: 470686552\nnon_heap_memory_usage: 259643048\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783543001,"args":{"JVM stats":"heap_memory_usage: 470686552\nnon_heap_memory_usage: 259643048\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783544000,"args":{"JVM stats":"heap_memory_usage: 470686552\nnon_heap_memory_usage: 259655272\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783547000,"args":{"JVM stats":"heap_memory_usage: 470686552\nnon_heap_memory_usage: 259645928\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783574000,"args":{"JVM stats":"heap_memory_usage: 473275880\nnon_heap_memory_usage: 259664744\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783576000,"args":{"JVM stats":"heap_memory_usage: 473275880\nnon_heap_memory_usage: 259664744\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783577000,"args":{"JVM stats":"heap_memory_usage: 473275880\nnon_heap_memory_usage: 259665448\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783602000,"args":{"JVM stats":"heap_memory_usage: 474830200\nnon_heap_memory_usage: 259665448\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783603000,"args":{"JVM stats":"heap_memory_usage: 474830200\nnon_heap_memory_usage: 259665448\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783605000,"args":{"JVM stats":"heap_memory_usage: 474830200\nnon_heap_memory_usage: 259665448\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783615000,"args":{"JVM stats":"heap_memory_usage: 475865784\nnon_heap_memory_usage: 259666088\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783616000,"args":{"JVM stats":"heap_memory_usage: 475865784\nnon_heap_memory_usage: 259666088\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783617000,"args":{"JVM stats":"heap_memory_usage: 475865784\nnon_heap_memory_usage: 259666088\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783638000,"args":{"JVM stats":"heap_memory_usage: 477420560\nnon_heap_memory_usage: 259679784\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783641000,"args":{"JVM stats":"heap_memory_usage: 477420560\nnon_heap_memory_usage: 259702632\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783642000,"args":{"JVM stats":"heap_memory_usage: 477420560\nnon_heap_memory_usage: 259693088\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783656000,"args":{"JVM stats":"heap_memory_usage: 477938312\nnon_heap_memory_usage: 259702112\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783723000,"args":{"JVM stats":"heap_memory_usage: 481564032\nnon_heap_memory_usage: 259726208\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783725000,"args":{"JVM stats":"heap_memory_usage: 481564032\nnon_heap_memory_usage: 259726208\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783726000,"args":{"JVM stats":"heap_memory_usage: 481564032\nnon_heap_memory_usage: 259729280\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783746000,"args":{"JVM stats":"heap_memory_usage: 481564032\nnon_heap_memory_usage: 259730688\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783833000,"args":{"JVM stats":"heap_memory_usage: 487261768\nnon_heap_memory_usage: 259739456\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783835000,"args":{"JVM stats":"heap_memory_usage: 487261768\nnon_heap_memory_usage: 259739456\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783837000,"args":{"JVM stats":"heap_memory_usage: 487261768\nnon_heap_memory_usage: 259739456\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783837001,"args":{"JVM stats":"heap_memory_usage: 487261768\nnon_heap_memory_usage: 259757440\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783855000,"args":{"JVM stats":"heap_memory_usage: 488297496\nnon_heap_memory_usage: 259774112\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783887000,"args":{"JVM stats":"heap_memory_usage: 489850856\nnon_heap_memory_usage: 259797304\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783906000,"args":{"JVM stats":"heap_memory_usage: 491921984\nnon_heap_memory_usage: 259791608\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783912000,"args":{"JVM stats":"heap_memory_usage: 492439840\nnon_heap_memory_usage: 259806136\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783918000,"args":{"JVM stats":"heap_memory_usage: 492439840\nnon_heap_memory_usage: 259807224\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783931000,"args":{"JVM stats":"heap_memory_usage: 493994232\nnon_heap_memory_usage: 259816600\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783943000,"args":{"JVM stats":"heap_memory_usage: 494511984\nnon_heap_memory_usage: 259820056\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783945000,"args":{"JVM stats":"heap_memory_usage: 494511984\nnon_heap_memory_usage: 259820632\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783947000,"args":{"JVM stats":"heap_memory_usage: 495029744\nnon_heap_memory_usage: 259821656\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783947001,"args":{"JVM stats":"heap_memory_usage: 495029744\nnon_heap_memory_usage: 259821656\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783949000,"args":{"JVM stats":"heap_memory_usage: 495029744\nnon_heap_memory_usage: 259821656\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783951000,"args":{"JVM stats":"heap_memory_usage: 495029744\nnon_heap_memory_usage: 259821656\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433783952000,"args":{"JVM stats":"heap_memory_usage: 495029744\nnon_heap_memory_usage: 259821656\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433784020000,"args":{"JVM stats":"heap_memory_usage: 495547472\nnon_heap_memory_usage: 259836824\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433784057000,"args":{"JVM stats":"heap_memory_usage: 496065232\nnon_heap_memory_usage: 259828760\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433784058000,"args":{"JVM stats":"heap_memory_usage: 496065232\nnon_heap_memory_usage: 259823576\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433784060000,"args":{"JVM stats":"heap_memory_usage: 496065232\nnon_heap_memory_usage: 259823576\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433784060001,"args":{"JVM stats":"heap_memory_usage: 496065232\nnon_heap_memory_usage: 259823576\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433784065000,"args":{"JVM stats":"heap_memory_usage: 496582984\nnon_heap_memory_usage: 259820056\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433784090000,"args":{"JVM stats":"heap_memory_usage: 497100736\nnon_heap_memory_usage: 259823384\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433784091000,"args":{"JVM stats":"heap_memory_usage: 497100736\nnon_heap_memory_usage: 259823384\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433784092000,"args":{"JVM stats":"heap_memory_usage: 497100736\nnon_heap_memory_usage: 259823384\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433784132000,"args":{"JVM stats":"heap_memory_usage: 501251216\nnon_heap_memory_usage: 259809968\nloaded_class_count: 22013\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433787986000,"args":{"JVM stats":"heap_memory_usage: 597228064\nnon_heap_memory_usage: 263741704\nloaded_class_count: 22363\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 790\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433787989000,"args":{"JVM stats":"heap_memory_usage: 598539448\nnon_heap_memory_usage: 263741704\nloaded_class_count: 22363\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433788250000,"args":{"JVM stats":"heap_memory_usage: 377470672\nnon_heap_memory_usage: 263817408\nloaded_class_count: 22363\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 211\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433788296000,"args":{"JVM stats":"heap_memory_usage: 385043256\nnon_heap_memory_usage: 263877024\nloaded_class_count: 22363\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433788376000,"args":{"JVM stats":"heap_memory_usage: 395496536\nnon_heap_memory_usage: 263925128\nloaded_class_count: 22363\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433788384000,"args":{"JVM stats":"heap_memory_usage: 395496536\nnon_heap_memory_usage: 263925128\nloaded_class_count: 22363\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433788509000,"args":{"JVM stats":"heap_memory_usage: 401416736\nnon_heap_memory_usage: 263944264\nloaded_class_count: 22363\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433788597000,"args":{"JVM stats":"heap_memory_usage: 405737304\nnon_heap_memory_usage: 263983696\nloaded_class_count: 22363\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433788610000,"args":{"JVM stats":"heap_memory_usage: 409125960\nnon_heap_memory_usage: 263983696\nloaded_class_count: 22363\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433788616000,"args":{"JVM stats":"heap_memory_usage: 409125960\nnon_heap_memory_usage: 263983696\nloaded_class_count: 22363\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433788621000,"args":{"JVM stats":"heap_memory_usage: 409125960\nnon_heap_memory_usage: 263985296\nloaded_class_count: 22363\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433788630000,"args":{"JVM stats":"heap_memory_usage: 409125960\nnon_heap_memory_usage: 264001528\nloaded_class_count: 22363\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433788633000,"args":{"JVM stats":"heap_memory_usage: 409125960\nnon_heap_memory_usage: 264002064\nloaded_class_count: 22363\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433788638000,"args":{"JVM stats":"heap_memory_usage: 409502696\nnon_heap_memory_usage: 264011624\nloaded_class_count: 22363\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433788643000,"args":{"JVM stats":"heap_memory_usage: 409502696\nnon_heap_memory_usage: 264012520\nloaded_class_count: 22363\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433788644000,"args":{"JVM stats":"heap_memory_usage: 409502696\nnon_heap_memory_usage: 264012520\nloaded_class_count: 22363\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433788645000,"args":{"JVM stats":"heap_memory_usage: 409502696\nnon_heap_memory_usage: 264012520\nloaded_class_count: 22363\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433788647000,"args":{"JVM stats":"heap_memory_usage: 409879432\nnon_heap_memory_usage: 264014824\nloaded_class_count: 22363\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433788648000,"args":{"JVM stats":"heap_memory_usage: 409879432\nnon_heap_memory_usage: 264014824\nloaded_class_count: 22363\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433788675000,"args":{"JVM stats":"heap_memory_usage: 413137840\nnon_heap_memory_usage: 264034456\nloaded_class_count: 22363\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433788677000,"args":{"JVM stats":"heap_memory_usage: 413137840\nnon_heap_memory_usage: 264034456\nloaded_class_count: 22363\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433788718000,"args":{"JVM stats":"heap_memory_usage: 416397208\nnon_heap_memory_usage: 264054104\nloaded_class_count: 22363\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433788722000,"args":{"JVM stats":"heap_memory_usage: 416397208\nnon_heap_memory_usage: 264059736\nloaded_class_count: 22363\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433789059000,"args":{"JVM stats":"heap_memory_usage: 429502488\nnon_heap_memory_usage: 264114056\nloaded_class_count: 22363\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433789066000,"args":{"JVM stats":"heap_memory_usage: 430366936\nnon_heap_memory_usage: 264114056\nloaded_class_count: 22363\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433789066001,"args":{"JVM stats":"heap_memory_usage: 430548720\nnon_heap_memory_usage: 264114056\nloaded_class_count: 22363\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433789067000,"args":{"JVM stats":"heap_memory_usage: 430548720\nnon_heap_memory_usage: 264114056\nloaded_class_count: 22363\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433789072000,"args":{"JVM stats":"heap_memory_usage: 431194744\nnon_heap_memory_usage: 264114056\nloaded_class_count: 22363\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433789075000,"args":{"JVM stats":"heap_memory_usage: 431194744\nnon_heap_memory_usage: 264116416\nloaded_class_count: 22364\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433789186000,"args":{"JVM stats":"heap_memory_usage: 436556560\nnon_heap_memory_usage: 264116416\nloaded_class_count: 22364\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433789394000,"args":{"JVM stats":"heap_memory_usage: 468581400\nnon_heap_memory_usage: 264149616\nloaded_class_count: 22364\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433789439000,"args":{"JVM stats":"heap_memory_usage: 471310288\nnon_heap_memory_usage: 264155200\nloaded_class_count: 22364\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433789508000,"args":{"JVM stats":"heap_memory_usage: 476234152\nnon_heap_memory_usage: 264160848\nloaded_class_count: 22364\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433789510000,"args":{"JVM stats":"heap_memory_usage: 476803064\nnon_heap_memory_usage: 264160848\nloaded_class_count: 22364\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433789521000,"args":{"JVM stats":"heap_memory_usage: 477044800\nnon_heap_memory_usage: 264167608\nloaded_class_count: 22364\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433790694000,"args":{"JVM stats":"heap_memory_usage: 488944432\nnon_heap_memory_usage: 264383584\nloaded_class_count: 22364\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433790747000,"args":{"JVM stats":"heap_memory_usage: 489428016\nnon_heap_memory_usage: 264278272\nloaded_class_count: 22369\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433790755000,"args":{"JVM stats":"heap_memory_usage: 489669752\nnon_heap_memory_usage: 264272832\nloaded_class_count: 22369\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433790758000,"args":{"JVM stats":"heap_memory_usage: 489669752\nnon_heap_memory_usage: 264272832\nloaded_class_count: 22369\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433790758001,"args":{"JVM stats":"heap_memory_usage: 489669752\nnon_heap_memory_usage: 264272832\nloaded_class_count: 22369\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433790798000,"args":{"JVM stats":"heap_memory_usage: 491814288\nnon_heap_memory_usage: 264260376\nloaded_class_count: 22369\nthread_count: 36\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":1,"tid":15,"id":2,"name":"base plugin project configure","args":{"span_id":"2","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433782766000,"dur":21000},{"pid":1,"tid":15,"id":3,"name":"base plugin project base extension creation","args":{"span_id":"3","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433782787000,"dur":12000},{"pid":1,"tid":15,"id":5,"name":"task manager create tasks","args":{"span_id":"5","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433782799000,"dur":3000},{"pid":1,"tid":15,"id":4,"name":"base plugin project tasks creation","args":{"span_id":"4","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433782799000,"dur":3000},{"pid":1,"tid":15,"id":8,"name":"variant manager create variants","args":{"span_id":"8","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433782829000,"dur":10000},{"pid":1,"tid":15,"id":9,"name":"variant manager create tests tasks","args":{"span_id":"9","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433782839000,"dur":2000},{"pid":1,"tid":15,"id":11,"name":"app task manager create merge manifest task","args":{"span_id":"11","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433782843000,"dur":1000},{"pid":1,"tid":15,"id":12,"name":"app task manager create generate res values task","args":{"span_id":"12","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433782844000,"dur":1000},{"pid":1,"tid":15,"id":13,"name":"app task manager create create renderscript task","args":{"span_id":"13","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433782845000,"dur":1000},{"pid":1,"tid":15,"id":14,"name":"app task manager create merge resources task","args":{"span_id":"14","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433782846000,"dur":6000},{"pid":1,"tid":15,"id":15,"name":"app task manager create merge assets task","args":{"span_id":"15","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433782852000,"dur":4000},{"pid":1,"tid":15,"id":16,"name":"app task manager create build config task","args":{"span_id":"16","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433782856000,"dur":1000},{"pid":1,"tid":15,"id":17,"name":"app task manager create process res task","args":{"span_id":"17","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433782857000,"dur":6000},{"pid":1,"tid":15,"id":18,"name":"app task manager create aidl task","args":{"span_id":"18","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433782863000,"dur":2000},{"pid":1,"tid":15,"id":19,"name":"app task manager create shader task","args":{"span_id":"19","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433782865000,"dur":1000},{"pid":1,"tid":15,"id":20,"name":"app task manager create ndk task","args":{"span_id":"20","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433782866000,"dur":1000},{"pid":1,"tid":15,"id":21,"name":"app task manager create external native build task","args":{"span_id":"21","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433782867000,"dur":100},{"pid":1,"tid":15,"id":22,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"22","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433782867000,"dur":3000},{"pid":1,"tid":15,"id":23,"name":"app task manager create compile task","args":{"span_id":"23","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433782870000,"dur":18000},{"pid":1,"tid":15,"id":24,"name":"app task manager create packaging task","args":{"span_id":"24","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433782888000,"dur":8000},{"pid":1,"tid":15,"id":25,"name":"app task manager create lint task","args":{"span_id":"25","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433782897000,"dur":1000},{"pid":1,"tid":15,"id":10,"name":"variant manager create tasks for variant","args":{"span_id":"10","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433782841000,"dur":57000},{"pid":1,"tid":15,"id":26,"name":"variant manager create tasks for variant","args":{"span_id":"26","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433782898000,"dur":8000},{"pid":1,"tid":15,"id":27,"name":"variant manager create tasks for variant","args":{"span_id":"27","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433782906000,"dur":13000},{"pid":1,"tid":15,"id":7,"name":"variant manager create android tasks","args":{"span_id":"7","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433782828000,"dur":100000},{"pid":1,"tid":15,"id":28,"name":"variant manager external native config values","args":{"span_id":"28","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433782929000,"dur":100},{"pid":1,"tid":15,"id":6,"name":"base plugin create android tasks","args":{"span_id":"6","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433782823000,"dur":106000},{"pid":1,"tid":15,"id":29,"name":"base plugin project configure","args":{"span_id":"29","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433782942000,"dur":5000},{"pid":1,"tid":15,"id":30,"name":"base plugin project base extension creation","args":{"span_id":"30","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433782947000,"dur":16000},{"pid":1,"tid":15,"id":32,"name":"task manager create tasks","args":{"span_id":"32","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433782963000,"dur":2000},{"pid":1,"tid":15,"id":31,"name":"base plugin project tasks creation","args":{"span_id":"31","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433782963000,"dur":2000},{"pid":1,"tid":15,"id":35,"name":"variant manager create variants","args":{"span_id":"35","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433782987000,"dur":9000},{"pid":1,"tid":15,"id":36,"name":"variant manager create tests tasks","args":{"span_id":"36","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433782996000,"dur":1000},{"pid":1,"tid":15,"id":38,"name":"lib task manager create generate res values task","args":{"span_id":"38","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433782998000,"dur":100},{"pid":1,"tid":15,"id":39,"name":"lib task manager create merge manifest task","args":{"span_id":"39","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433782998000,"dur":4000},{"pid":1,"tid":15,"id":40,"name":"lib task manager create create renderscript task","args":{"span_id":"40","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783002000,"dur":100},{"pid":1,"tid":15,"id":41,"name":"lib task manager create merge resources task","args":{"span_id":"41","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783002000,"dur":1000},{"pid":1,"tid":15,"id":42,"name":"lib task manager create merge assets task","args":{"span_id":"42","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783003000,"dur":100},{"pid":1,"tid":15,"id":43,"name":"lib task manager create build config task","args":{"span_id":"43","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783003000,"dur":100},{"pid":1,"tid":15,"id":44,"name":"lib task manager create process res task","args":{"span_id":"44","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783003000,"dur":18000},{"pid":1,"tid":15,"id":45,"name":"lib task manager create aidl task","args":{"span_id":"45","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783021000,"dur":1000},{"pid":1,"tid":15,"id":46,"name":"lib task manager create shader task","args":{"span_id":"46","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783022000,"dur":1000},{"pid":1,"tid":15,"id":47,"name":"lib task manager create compile task","args":{"span_id":"47","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783023000,"dur":1000},{"pid":1,"tid":15,"id":48,"name":"lib task manager create ndk task","args":{"span_id":"48","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783024000,"dur":100},{"pid":1,"tid":15,"id":49,"name":"lib task manager create external native build task","args":{"span_id":"49","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783024000,"dur":100},{"pid":1,"tid":15,"id":50,"name":"lib task manager create packaging task","args":{"span_id":"50","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783025000,"dur":1000},{"pid":1,"tid":15,"id":51,"name":"lib task manager create merge proguard file task","args":{"span_id":"51","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783026000,"dur":1000},{"pid":1,"tid":15,"id":52,"name":"lib task manager create post compilation task","args":{"span_id":"52","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783029000,"dur":3000},{"pid":1,"tid":15,"id":53,"name":"lib task manager create lint task","args":{"span_id":"53","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783032000,"dur":1000},{"pid":1,"tid":15,"id":37,"name":"variant manager create tasks for variant","args":{"span_id":"37","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433782998000,"dur":35000},{"pid":1,"tid":15,"id":54,"name":"variant manager create tasks for variant","args":{"span_id":"54","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433783033000,"dur":4000},{"pid":1,"tid":15,"id":56,"name":"lib task manager create generate res values task","args":{"span_id":"56","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783038000,"dur":100},{"pid":1,"tid":15,"id":57,"name":"lib task manager create merge manifest task","args":{"span_id":"57","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783038000,"dur":100},{"pid":1,"tid":15,"id":58,"name":"lib task manager create create renderscript task","args":{"span_id":"58","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783038000,"dur":1000},{"pid":1,"tid":15,"id":59,"name":"lib task manager create merge resources task","args":{"span_id":"59","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783039000,"dur":100},{"pid":1,"tid":15,"id":60,"name":"lib task manager create merge assets task","args":{"span_id":"60","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783039000,"dur":1000},{"pid":1,"tid":15,"id":61,"name":"lib task manager create build config task","args":{"span_id":"61","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783040000,"dur":100},{"pid":1,"tid":15,"id":62,"name":"lib task manager create process res task","args":{"span_id":"62","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783040000,"dur":3000},{"pid":1,"tid":15,"id":63,"name":"lib task manager create aidl task","args":{"span_id":"63","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783043000,"dur":100},{"pid":1,"tid":15,"id":64,"name":"lib task manager create shader task","args":{"span_id":"64","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783043000,"dur":1000},{"pid":1,"tid":15,"id":65,"name":"lib task manager create compile task","args":{"span_id":"65","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783044000,"dur":1000},{"pid":1,"tid":15,"id":66,"name":"lib task manager create ndk task","args":{"span_id":"66","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783045000,"dur":100},{"pid":1,"tid":15,"id":67,"name":"lib task manager create external native build task","args":{"span_id":"67","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783045000,"dur":100},{"pid":1,"tid":15,"id":68,"name":"lib task manager create packaging task","args":{"span_id":"68","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783046000,"dur":100},{"pid":1,"tid":15,"id":69,"name":"lib task manager create merge proguard file task","args":{"span_id":"69","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783046000,"dur":1000},{"pid":1,"tid":15,"id":70,"name":"lib task manager create post compilation task","args":{"span_id":"70","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783047000,"dur":1000},{"pid":1,"tid":15,"id":71,"name":"lib task manager create lint task","args":{"span_id":"71","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783049000,"dur":100},{"pid":1,"tid":15,"id":55,"name":"variant manager create tasks for variant","args":{"span_id":"55","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783037000,"dur":12000},{"pid":1,"tid":15,"id":72,"name":"variant manager create tasks for variant","args":{"span_id":"72","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433783049000,"dur":4000},{"pid":1,"tid":15,"id":73,"name":"variant manager create tasks for variant","args":{"span_id":"73","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433783053000,"dur":19000},{"pid":1,"tid":15,"id":34,"name":"variant manager create android tasks","args":{"span_id":"34","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433782987000,"dur":85000},{"pid":1,"tid":15,"id":74,"name":"variant manager external native config values","args":{"span_id":"74","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433783073000,"dur":100},{"pid":1,"tid":15,"id":33,"name":"base plugin create android tasks","args":{"span_id":"33","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433782980000,"dur":93000},{"pid":1,"tid":15,"id":75,"name":"base plugin project configure","args":{"span_id":"75","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433783104000,"dur":5000},{"pid":1,"tid":15,"id":76,"name":"base plugin project base extension creation","args":{"span_id":"76","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433783109000,"dur":12000},{"pid":1,"tid":15,"id":78,"name":"task manager create tasks","args":{"span_id":"78","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433783121000,"dur":2000},{"pid":1,"tid":15,"id":77,"name":"base plugin project tasks creation","args":{"span_id":"77","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433783121000,"dur":2000},{"pid":1,"tid":15,"id":81,"name":"variant manager create variants","args":{"span_id":"81","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433783134000,"dur":6000},{"pid":1,"tid":15,"id":82,"name":"variant manager create tests tasks","args":{"span_id":"82","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433783140000,"dur":2000},{"pid":1,"tid":15,"id":84,"name":"lib task manager create generate res values task","args":{"span_id":"84","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783143000,"dur":100},{"pid":1,"tid":15,"id":85,"name":"lib task manager create merge manifest task","args":{"span_id":"85","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783143000,"dur":100},{"pid":1,"tid":15,"id":86,"name":"lib task manager create create renderscript task","args":{"span_id":"86","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783143000,"dur":2000},{"pid":1,"tid":15,"id":87,"name":"lib task manager create merge resources task","args":{"span_id":"87","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783145000,"dur":100},{"pid":1,"tid":15,"id":88,"name":"lib task manager create merge assets task","args":{"span_id":"88","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783145000,"dur":100},{"pid":1,"tid":15,"id":89,"name":"lib task manager create build config task","args":{"span_id":"89","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783145000,"dur":1000},{"pid":1,"tid":15,"id":90,"name":"lib task manager create process res task","args":{"span_id":"90","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783146000,"dur":5000},{"pid":1,"tid":15,"id":91,"name":"lib task manager create aidl task","args":{"span_id":"91","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783151000,"dur":100},{"pid":1,"tid":15,"id":92,"name":"lib task manager create shader task","args":{"span_id":"92","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783151000,"dur":1000},{"pid":1,"tid":15,"id":93,"name":"lib task manager create compile task","args":{"span_id":"93","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783152000,"dur":1000},{"pid":1,"tid":15,"id":94,"name":"lib task manager create ndk task","args":{"span_id":"94","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783153000,"dur":1000},{"pid":1,"tid":15,"id":95,"name":"lib task manager create external native build task","args":{"span_id":"95","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783154000,"dur":100},{"pid":1,"tid":15,"id":96,"name":"lib task manager create packaging task","args":{"span_id":"96","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783155000,"dur":1000},{"pid":1,"tid":15,"id":97,"name":"lib task manager create merge proguard file task","args":{"span_id":"97","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783156000,"dur":100},{"pid":1,"tid":15,"id":98,"name":"lib task manager create post compilation task","args":{"span_id":"98","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783157000,"dur":1000},{"pid":1,"tid":15,"id":99,"name":"lib task manager create lint task","args":{"span_id":"99","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783162000,"dur":3000},{"pid":1,"tid":15,"id":83,"name":"variant manager create tasks for variant","args":{"span_id":"83","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783142000,"dur":23000},{"pid":1,"tid":15,"id":100,"name":"variant manager create tasks for variant","args":{"span_id":"100","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433783165000,"dur":6000},{"pid":1,"tid":15,"id":102,"name":"lib task manager create generate res values task","args":{"span_id":"102","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783173000,"dur":100},{"pid":1,"tid":15,"id":103,"name":"lib task manager create merge manifest task","args":{"span_id":"103","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783173000,"dur":1000},{"pid":1,"tid":15,"id":104,"name":"lib task manager create create renderscript task","args":{"span_id":"104","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783174000,"dur":100},{"pid":1,"tid":15,"id":105,"name":"lib task manager create merge resources task","args":{"span_id":"105","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783174000,"dur":100},{"pid":1,"tid":15,"id":106,"name":"lib task manager create merge assets task","args":{"span_id":"106","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783174000,"dur":1000},{"pid":1,"tid":15,"id":107,"name":"lib task manager create build config task","args":{"span_id":"107","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783175000,"dur":100},{"pid":1,"tid":15,"id":108,"name":"lib task manager create process res task","args":{"span_id":"108","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783175000,"dur":2000},{"pid":1,"tid":15,"id":109,"name":"lib task manager create aidl task","args":{"span_id":"109","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783177000,"dur":100},{"pid":1,"tid":15,"id":110,"name":"lib task manager create shader task","args":{"span_id":"110","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783177000,"dur":100},{"pid":1,"tid":15,"id":111,"name":"lib task manager create compile task","args":{"span_id":"111","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783177000,"dur":1000},{"pid":1,"tid":15,"id":112,"name":"lib task manager create ndk task","args":{"span_id":"112","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783178000,"dur":100},{"pid":1,"tid":15,"id":113,"name":"lib task manager create external native build task","args":{"span_id":"113","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783178000,"dur":100},{"pid":1,"tid":15,"id":114,"name":"lib task manager create packaging task","args":{"span_id":"114","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783178000,"dur":1000},{"pid":1,"tid":15,"id":115,"name":"lib task manager create merge proguard file task","args":{"span_id":"115","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783179000,"dur":1000},{"pid":1,"tid":15,"id":116,"name":"lib task manager create post compilation task","args":{"span_id":"116","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783184000,"dur":1000},{"pid":1,"tid":15,"id":117,"name":"lib task manager create lint task","args":{"span_id":"117","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783185000,"dur":100},{"pid":1,"tid":15,"id":101,"name":"variant manager create tasks for variant","args":{"span_id":"101","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433783171000,"dur":14000},{"pid":1,"tid":15,"id":118,"name":"variant manager create tasks for variant","args":{"span_id":"118","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433783185000,"dur":6000},{"pid":1,"tid":15,"id":119,"name":"variant manager create tasks for variant","args":{"span_id":"119","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433783191000,"dur":17000},{"pid":1,"tid":15,"id":80,"name":"variant manager create android tasks","args":{"span_id":"80","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433783134000,"dur":75000},{"pid":1,"tid":15,"id":120,"name":"variant manager external native config values","args":{"span_id":"120","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433783209000,"dur":100},{"pid":1,"tid":15,"id":79,"name":"base plugin create android tasks","args":{"span_id":"79","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433783127000,"dur":82000},{"pid":1,"tid":0,"id":121,"name":"task: build info loader","args":{"span_id":"121","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 7\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433783291000,"dur":3000},{"pid":1,"tid":0,"id":122,"name":"task: merge source set folders","args":{"span_id":"122","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783295000,"dur":6000},{"pid":1,"tid":0,"id":123,"name":"task: shader compile","args":{"span_id":"123","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783301000,"dur":2000},{"pid":1,"tid":0,"id":124,"name":"task: unknown task type","args":{"span_id":"124","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783303000,"dur":100},{"pid":1,"tid":0,"id":125,"name":"task: merge source set folders","args":{"span_id":"125","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783304000,"dur":1000},{"pid":1,"tid":0,"id":126,"name":"task: shader compile","args":{"span_id":"126","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783306000,"dur":100},{"pid":1,"tid":0,"id":127,"name":"task: unknown task type","args":{"span_id":"127","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783307000,"dur":100},{"pid":1,"tid":0,"id":128,"name":"task: merge source set folders","args":{"span_id":"128","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783308000,"dur":3000},{"pid":1,"tid":0,"id":129,"name":"task: merge source set folders","args":{"span_id":"129","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783312000,"dur":1000},{"pid":1,"tid":0,"id":130,"name":"task: shader compile","args":{"span_id":"130","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783314000,"dur":1000},{"pid":1,"tid":0,"id":131,"name":"task: unknown task type","args":{"span_id":"131","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783316000,"dur":100},{"pid":1,"tid":0,"id":132,"name":"task: merge source set folders","args":{"span_id":"132","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783317000,"dur":2000},{"pid":1,"tid":0,"id":133,"name":"task: merge source set folders","args":{"span_id":"133","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783321000,"dur":215000},{"pid":1,"tid":0,"id":134,"name":"task: unknown task type","args":{"span_id":"134","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783536000,"dur":100},{"pid":1,"tid":0,"id":135,"name":"task: unknown task type","args":{"span_id":"135","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783537000,"dur":100},{"pid":1,"tid":0,"id":136,"name":"task: unknown task type","args":{"span_id":"136","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783538000,"dur":100},{"pid":1,"tid":0,"id":137,"name":"task: check manifest","args":{"span_id":"137","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783539000,"dur":100},{"pid":1,"tid":0,"id":138,"name":"task: process manifest","args":{"span_id":"138","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 52\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783540000,"dur":2000},{"pid":1,"tid":0,"id":139,"name":"task: unknown task type","args":{"span_id":"139","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783543000,"dur":100},{"pid":1,"tid":0,"id":140,"name":"task: unknown task type","args":{"span_id":"140","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783543000,"dur":100},{"pid":1,"tid":0,"id":141,"name":"task: check manifest","args":{"span_id":"141","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783544000,"dur":100},{"pid":1,"tid":0,"id":142,"name":"task: process manifest","args":{"span_id":"142","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 52\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783545000,"dur":2000},{"pid":1,"tid":0,"id":143,"name":"task: app pre build","args":{"span_id":"143","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 92\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783548000,"dur":26000},{"pid":1,"tid":0,"id":144,"name":"task: check manifest","args":{"span_id":"144","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783575000,"dur":100},{"pid":1,"tid":0,"id":145,"name":"task: compatible screens manifest","args":{"span_id":"145","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 9\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783576000,"dur":1000},{"pid":1,"tid":0,"id":146,"name":"task: merge manifests","args":{"span_id":"146","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 39\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783578000,"dur":24000},{"pid":1,"tid":0,"id":147,"name":"task: unknown task type","args":{"span_id":"147","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433783603000,"dur":100},{"pid":1,"tid":0,"id":148,"name":"task: unknown task type","args":{"span_id":"148","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433783604000,"dur":1000},{"pid":1,"tid":0,"id":149,"name":"task: renderscript compile","args":{"span_id":"149","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783606000,"dur":9000},{"pid":1,"tid":0,"id":150,"name":"task: generate res values","args":{"span_id":"150","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783616000,"dur":100},{"pid":1,"tid":0,"id":151,"name":"task: unknown task type","args":{"span_id":"151","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783617000,"dur":100},{"pid":1,"tid":0,"id":152,"name":"task: renderscript compile","args":{"span_id":"152","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783618000,"dur":19000},{"pid":1,"tid":0,"id":153,"name":"task: generate res values","args":{"span_id":"153","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783639000,"dur":2000},{"pid":1,"tid":0,"id":154,"name":"task: unknown task type","args":{"span_id":"154","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783641000,"dur":100},{"pid":1,"tid":0,"id":155,"name":"task: merge resources","args":{"span_id":"155","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783642000,"dur":14000},{"pid":1,"tid":0,"id":156,"name":"task: renderscript compile","args":{"span_id":"156","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783657000,"dur":66000},{"pid":1,"tid":0,"id":157,"name":"task: generate res values","args":{"span_id":"157","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783724000,"dur":1000},{"pid":1,"tid":0,"id":158,"name":"task: unknown task type","args":{"span_id":"158","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783726000,"dur":100},{"pid":1,"tid":0,"id":159,"name":"task: merge resources","args":{"span_id":"159","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783743000,"dur":3000},{"pid":1,"tid":0,"id":160,"name":"task: merge resources","args":{"span_id":"160","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783748000,"dur":84000},{"pid":1,"tid":0,"id":161,"name":"task: splits discovery","args":{"span_id":"161","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 87\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783835000,"dur":100},{"pid":1,"tid":0,"id":162,"name":"task: platform attr extractor","args":{"span_id":"162","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 109\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783836000,"dur":1000},{"pid":1,"tid":0,"id":163,"name":"task: platform attr extractor","args":{"span_id":"163","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 109\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783837000,"dur":100},{"pid":1,"tid":0,"id":164,"name":"task: process android resources","args":{"span_id":"164","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783838000,"dur":17000},{"pid":1,"tid":0,"id":165,"name":"task: process android resources","args":{"span_id":"165","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783856000,"dur":31000},{"pid":1,"tid":0,"id":166,"name":"task: process android resources","args":{"span_id":"166","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783889000,"dur":17000},{"pid":1,"tid":0,"id":167,"name":"task: package application","args":{"span_id":"167","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 45\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783907000,"dur":5000},{"pid":1,"tid":0,"id":168,"name":"task: aidl compile","args":{"span_id":"168","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783912000,"dur":5000},{"pid":1,"tid":0,"id":169,"name":"task: aidl compile","args":{"span_id":"169","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783918000,"dur":13000},{"pid":1,"tid":0,"id":170,"name":"task: aidl compile","args":{"span_id":"170","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783932000,"dur":11000},{"pid":1,"tid":0,"id":171,"name":"task: generate build config","args":{"span_id":"171","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783943000,"dur":2000},{"pid":1,"tid":0,"id":172,"name":"task: prepare lint jar","args":{"span_id":"172","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 119\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783946000,"dur":1000},{"pid":1,"tid":0,"id":173,"name":"task: unknown task type","args":{"span_id":"173","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433783947000,"dur":100},{"pid":1,"tid":0,"id":174,"name":"task: generate build config","args":{"span_id":"174","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783948000,"dur":1000},{"pid":1,"tid":0,"id":175,"name":"task: prepare lint jar","args":{"span_id":"175","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 119\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783950000,"dur":1000},{"pid":1,"tid":0,"id":176,"name":"task: unknown task type","args":{"span_id":"176","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433783951000,"dur":1000},{"pid":1,"tid":0,"id":177,"name":"task: unknown task type","args":{"span_id":"177","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433783953000,"dur":59000},{"pid":1,"tid":0,"id":178,"name":"task: unknown task type","args":{"span_id":"178","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433784031000,"dur":26000},{"pid":1,"tid":0,"id":179,"name":"task: generate build config","args":{"span_id":"179","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433784057000,"dur":1000},{"pid":1,"tid":0,"id":180,"name":"task: prepare lint jar","args":{"span_id":"180","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 119\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433784059000,"dur":1000},{"pid":1,"tid":0,"id":181,"name":"task: unknown task type","args":{"span_id":"181","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433784060000,"dur":100},{"pid":1,"tid":0,"id":182,"name":"task: java pre compile","args":{"span_id":"182","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 76\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433784061000,"dur":4000},{"pid":1,"tid":0,"id":183,"name":"task: android java compile","args":{"span_id":"183","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 3\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433784065000,"dur":25000},{"pid":1,"tid":0,"id":184,"name":"task: unknown task type","args":{"span_id":"184","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433784090000,"dur":1000},{"pid":1,"tid":0,"id":185,"name":"task: transform","args":{"span_id":"185","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433784091000,"dur":1000},{"pid":1,"tid":0,"id":186,"name":"task: java pre compile","args":{"span_id":"186","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 76\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433784093000,"dur":38000},{"pid":1,"tid":0,"id":187,"name":"task: android java compile","args":{"span_id":"187","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 3\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433784132000,"dur":3854000},{"pid":1,"tid":0,"id":188,"name":"task: unknown task type","args":{"span_id":"188","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433787988000,"dur":1000},{"pid":1,"tid":16,"id":190,"name":"transform prep: unknown transform type","args":{"span_id":"190","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 0\nis_incremental: true\n"},"ph":"X","ts":1546433787992000,"dur":1000},{"pid":1,"tid":16,"id":191,"name":"transform: unknown transform type","args":{"span_id":"191","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 0\nis_incremental: true\n"},"ph":"X","ts":1546433787993000,"dur":254000},{"pid":1,"tid":0,"id":189,"name":"task: transform","args":{"span_id":"189","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433787989000,"dur":261000},{"pid":1,"tid":0,"id":192,"name":"task: java pre compile","args":{"span_id":"192","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 76\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433788250000,"dur":46000},{"pid":1,"tid":0,"id":193,"name":"task: android java compile","args":{"span_id":"193","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 3\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433788296000,"dur":80000},{"pid":1,"tid":0,"id":194,"name":"task: check manifest in instant run mode","args":{"span_id":"194","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 72\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433788378000,"dur":6000},{"pid":1,"tid":17,"id":196,"name":"transform prep: extract jars","args":{"span_id":"196","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 2\nis_incremental: true\n"},"ph":"X","ts":1546433788398000,"dur":1000},{"pid":1,"tid":17,"id":197,"name":"transform: extract jars","args":{"span_id":"197","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 2\nis_incremental: true\n"},"ph":"X","ts":1546433788399000,"dur":92000},{"pid":1,"tid":0,"id":195,"name":"task: transform","args":{"span_id":"195","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433788385000,"dur":124000},{"pid":1,"tid":17,"id":199,"name":"transform prep: instant run verifier","args":{"span_id":"199","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 20\nis_incremental: true\n"},"ph":"X","ts":1546433788573000,"dur":1000},{"pid":1,"tid":17,"id":201,"name":"task file verification","args":{"span_id":"201","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433788577000,"dur":1000},{"pid":1,"tid":17,"id":202,"name":"task file verification","args":{"span_id":"202","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433788578000,"dur":1000},{"pid":1,"tid":17,"id":203,"name":"task file verification","args":{"span_id":"203","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433788579000,"dur":1000},{"pid":1,"tid":17,"id":200,"name":"transform: instant run verifier","args":{"span_id":"200","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 20\nis_incremental: true\n"},"ph":"X","ts":1546433788575000,"dur":5000},{"pid":1,"tid":0,"id":198,"name":"task: transform","args":{"span_id":"198","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433788510000,"dur":86000},{"pid":1,"tid":0,"id":204,"name":"task: transform","args":{"span_id":"204","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433788597000,"dur":13000},{"pid":1,"tid":0,"id":205,"name":"task: ndk compile","args":{"span_id":"205","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 43\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433788614000,"dur":1000},{"pid":1,"tid":0,"id":206,"name":"task: merge source set folders","args":{"span_id":"206","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433788619000,"dur":2000},{"pid":1,"tid":0,"id":207,"name":"task: ndk compile","args":{"span_id":"207","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 43\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433788629000,"dur":1000},{"pid":1,"tid":0,"id":208,"name":"task: merge source set folders","args":{"span_id":"208","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433788631000,"dur":2000},{"pid":1,"tid":0,"id":209,"name":"task: transform","args":{"span_id":"209","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433788634000,"dur":4000},{"pid":1,"tid":0,"id":210,"name":"task: transform","args":{"span_id":"210","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433788640000,"dur":3000},{"pid":1,"tid":0,"id":211,"name":"task: ndk compile","args":{"span_id":"211","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 43\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433788643000,"dur":1000},{"pid":1,"tid":0,"id":212,"name":"task: merge source set folders","args":{"span_id":"212","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433788644000,"dur":1000},{"pid":1,"tid":0,"id":213,"name":"task: transform","args":{"span_id":"213","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433788646000,"dur":1000},{"pid":1,"tid":0,"id":214,"name":"task: transform","args":{"span_id":"214","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433788647000,"dur":1000},{"pid":1,"tid":0,"id":215,"name":"task: transform","args":{"span_id":"215","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433788649000,"dur":26000},{"pid":1,"tid":0,"id":216,"name":"task: unknown task type","args":{"span_id":"216","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433788676000,"dur":1000},{"pid":1,"tid":0,"id":217,"name":"task: transform","args":{"span_id":"217","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433788678000,"dur":40000},{"pid":1,"tid":0,"id":218,"name":"task: transform","args":{"span_id":"218","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433788720000,"dur":2000},{"pid":1,"tid":18,"id":220,"name":"transform prep: instant run","args":{"span_id":"220","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 5\nis_incremental: true\n"},"ph":"X","ts":1546433788815000,"dur":203000},{"pid":1,"tid":18,"id":221,"name":"transform: instant run","args":{"span_id":"221","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 5\nis_incremental: true\n"},"ph":"X","ts":1546433789018000,"dur":21000},{"pid":1,"tid":0,"id":219,"name":"task: transform","args":{"span_id":"219","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433788722000,"dur":337000},{"pid":1,"tid":18,"id":223,"name":"transform prep: instant run dex","args":{"span_id":"223","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 3\nis_incremental: false\n"},"ph":"X","ts":1546433789064000,"dur":100},{"pid":1,"tid":18,"id":224,"name":"transform: instant run dex","args":{"span_id":"224","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 3\nis_incremental: false\n"},"ph":"X","ts":1546433789064000,"dur":100},{"pid":1,"tid":0,"id":222,"name":"task: transform","args":{"span_id":"222","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433789061000,"dur":5000},{"pid":1,"tid":0,"id":225,"name":"task: unknown task type","args":{"span_id":"225","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433789066000,"dur":100},{"pid":1,"tid":0,"id":226,"name":"task: pre cold swap","args":{"span_id":"226","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 48\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433789067000,"dur":100},{"pid":1,"tid":0,"id":227,"name":"task: fast deploy runtime extractor","args":{"span_id":"227","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 21\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433789070000,"dur":2000},{"pid":1,"tid":0,"id":228,"name":"task: generate instant run app info","args":{"span_id":"228","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 25\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433789073000,"dur":2000},{"pid":1,"tid":18,"id":230,"name":"transform prep: instant run slicer","args":{"span_id":"230","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 4\nis_incremental: true\n"},"ph":"X","ts":1546433789142000,"dur":3000},{"pid":1,"tid":18,"id":231,"name":"transform: instant run slicer","args":{"span_id":"231","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 4\nis_incremental: true\n"},"ph":"X","ts":1546433789145000,"dur":5000},{"pid":1,"tid":0,"id":229,"name":"task: transform","args":{"span_id":"229","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433789076000,"dur":110000},{"pid":1,"tid":18,"id":233,"name":"transform prep: dex archive builder","args":{"span_id":"233","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 29\nis_incremental: true\n"},"ph":"X","ts":1546433789286000,"dur":2000},{"pid":1,"tid":18,"id":234,"name":"transform: dex archive builder","args":{"span_id":"234","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 29\nis_incremental: true\n"},"ph":"X","ts":1546433789288000,"dur":71000},{"pid":1,"tid":0,"id":232,"name":"task: transform","args":{"span_id":"232","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433789188000,"dur":205000},{"pid":1,"tid":18,"id":236,"name":"transform prep: external libs merger","args":{"span_id":"236","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 34\nis_incremental: true\n"},"ph":"X","ts":1546433789428000,"dur":8000},{"pid":1,"tid":18,"id":237,"name":"transform: external libs merger","args":{"span_id":"237","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 34\nis_incremental: true\n"},"ph":"X","ts":1546433789436000,"dur":2000},{"pid":1,"tid":0,"id":235,"name":"task: transform","args":{"span_id":"235","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433789394000,"dur":45000},{"pid":1,"tid":18,"id":239,"name":"transform prep: dex merger","args":{"span_id":"239","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 30\nis_incremental: true\n"},"ph":"X","ts":1546433789486000,"dur":6000},{"pid":1,"tid":18,"id":240,"name":"transform: dex merger","args":{"span_id":"240","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 30\nis_incremental: true\n"},"ph":"X","ts":1546433789492000,"dur":14000},{"pid":1,"tid":0,"id":238,"name":"task: transform","args":{"span_id":"238","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433789440000,"dur":68000},{"pid":1,"tid":0,"id":241,"name":"task: validate signing","args":{"span_id":"241","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 67\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433789509000,"dur":1000},{"pid":1,"tid":16,"id":243,"name":"transform prep: instant run dependencies apk builder","args":{"span_id":"243","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 23\nis_incremental: true\n"},"ph":"X","ts":1546433789514000,"dur":3000},{"pid":1,"tid":16,"id":244,"name":"transform: instant run dependencies apk builder","args":{"span_id":"244","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 23\nis_incremental: true\n"},"ph":"X","ts":1546433789517000,"dur":2000},{"pid":1,"tid":0,"id":242,"name":"task: transform","args":{"span_id":"242","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433789511000,"dur":10000},{"pid":1,"tid":16,"id":246,"name":"transform prep: instant run slice split apk builder","args":{"span_id":"246","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 24\nis_incremental: true\n"},"ph":"X","ts":1546433789525000,"dur":2000},{"pid":1,"tid":16,"id":247,"name":"transform: instant run slice split apk builder","args":{"span_id":"247","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 24\nis_incremental: true\n"},"ph":"X","ts":1546433789527000,"dur":1166000},{"pid":1,"tid":0,"id":245,"name":"task: transform","args":{"span_id":"245","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433789522000,"dur":1172000},{"pid":1,"tid":0,"id":248,"name":"task: package application","args":{"span_id":"248","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 45\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433790695000,"dur":52000},{"pid":1,"tid":0,"id":249,"name":"task: build info writer","args":{"span_id":"249","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 70\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433790749000,"dur":6000},{"pid":1,"tid":0,"id":250,"name":"task: unknown task type","args":{"span_id":"250","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433790757000,"dur":100},{"pid":1,"tid":0,"id":251,"name":"task: unknown task type","args":{"span_id":"251","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433790758000,"dur":100},{"pid":1,"tid":15,"id":252,"name":"base plugin build finished","args":{"span_id":"252","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433790777000,"dur":1000},{"pid":1,"tid":15,"id":253,"name":"base plugin build finished","args":{"span_id":"253","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433790778000,"dur":1000},{"pid":1,"tid":15,"id":254,"name":"base plugin build finished","args":{"span_id":"254","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433790779000,"dur":100}] \ No newline at end of file diff --git a/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-56-30-797.rawproto b/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-56-30-797.rawproto deleted file mode 100644 index 3418115..0000000 Binary files a/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-56-30-797.rawproto and /dev/null differ diff --git a/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-58-16-464.json b/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-58-16-464.json deleted file mode 100644 index 4ae152c..0000000 --- a/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-58-16-464.json +++ /dev/null @@ -1 +0,0 @@ -[{"pid":0,"ph":"i","name":"Memory sample","ts":1546433815523000,"args":{"JVM stats":"heap_memory_usage: 507939864\nnon_heap_memory_usage: 264487440\nloaded_class_count: 22370\nthread_count: 32\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816547000,"args":{"JVM stats":"heap_memory_usage: 404481240\nnon_heap_memory_usage: 264385392\nloaded_class_count: 22371\nthread_count: 36\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 42\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816548000,"args":{"JVM stats":"heap_memory_usage: 404724256\nnon_heap_memory_usage: 264385392\nloaded_class_count: 22371\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816548001,"args":{"JVM stats":"heap_memory_usage: 404724256\nnon_heap_memory_usage: 264385392\nloaded_class_count: 22371\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816549000,"args":{"JVM stats":"heap_memory_usage: 404724256\nnon_heap_memory_usage: 264385392\nloaded_class_count: 22371\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816551000,"args":{"JVM stats":"heap_memory_usage: 404724256\nnon_heap_memory_usage: 264385392\nloaded_class_count: 22371\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816551001,"args":{"JVM stats":"heap_memory_usage: 404724256\nnon_heap_memory_usage: 264385392\nloaded_class_count: 22371\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816552000,"args":{"JVM stats":"heap_memory_usage: 404724256\nnon_heap_memory_usage: 264385392\nloaded_class_count: 22371\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816553000,"args":{"JVM stats":"heap_memory_usage: 404967304\nnon_heap_memory_usage: 264385392\nloaded_class_count: 22371\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816554000,"args":{"JVM stats":"heap_memory_usage: 404967304\nnon_heap_memory_usage: 264385392\nloaded_class_count: 22371\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816773000,"args":{"JVM stats":"heap_memory_usage: 422332240\nnon_heap_memory_usage: 264391136\nloaded_class_count: 22371\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816836000,"args":{"JVM stats":"heap_memory_usage: 426140824\nnon_heap_memory_usage: 264447536\nloaded_class_count: 22371\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816854000,"args":{"JVM stats":"heap_memory_usage: 427864280\nnon_heap_memory_usage: 264450352\nloaded_class_count: 22371\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816878000,"args":{"JVM stats":"heap_memory_usage: 429541960\nnon_heap_memory_usage: 264450352\nloaded_class_count: 22371\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816879000,"args":{"JVM stats":"heap_memory_usage: 429785016\nnon_heap_memory_usage: 264450352\nloaded_class_count: 22371\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816881000,"args":{"JVM stats":"heap_memory_usage: 429785016\nnon_heap_memory_usage: 264450352\nloaded_class_count: 22371\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816905000,"args":{"JVM stats":"heap_memory_usage: 431474552\nnon_heap_memory_usage: 264450352\nloaded_class_count: 22371\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816909000,"args":{"JVM stats":"heap_memory_usage: 431721680\nnon_heap_memory_usage: 264450352\nloaded_class_count: 22371\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816913000,"args":{"JVM stats":"heap_memory_usage: 431964800\nnon_heap_memory_usage: 264450544\nloaded_class_count: 22371\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816915000,"args":{"JVM stats":"heap_memory_usage: 431964800\nnon_heap_memory_usage: 264450544\nloaded_class_count: 22371\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816918000,"args":{"JVM stats":"heap_memory_usage: 432208200\nnon_heap_memory_usage: 264447792\nloaded_class_count: 22371\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816920000,"args":{"JVM stats":"heap_memory_usage: 432208200\nnon_heap_memory_usage: 264440880\nloaded_class_count: 22371\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816927000,"args":{"JVM stats":"heap_memory_usage: 432894784\nnon_heap_memory_usage: 264440880\nloaded_class_count: 22371\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816931000,"args":{"JVM stats":"heap_memory_usage: 432894784\nnon_heap_memory_usage: 264440880\nloaded_class_count: 22371\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816932000,"args":{"JVM stats":"heap_memory_usage: 432894784\nnon_heap_memory_usage: 264440880\nloaded_class_count: 22371\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816946000,"args":{"JVM stats":"heap_memory_usage: 433380872\nnon_heap_memory_usage: 264436232\nloaded_class_count: 22371\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816950000,"args":{"JVM stats":"heap_memory_usage: 433771592\nnon_heap_memory_usage: 264436232\nloaded_class_count: 22371\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816951000,"args":{"JVM stats":"heap_memory_usage: 433771592\nnon_heap_memory_usage: 264436232\nloaded_class_count: 22371\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816951001,"args":{"JVM stats":"heap_memory_usage: 433771592\nnon_heap_memory_usage: 264436232\nloaded_class_count: 22371\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433816954000,"args":{"JVM stats":"heap_memory_usage: 434014688\nnon_heap_memory_usage: 264436232\nloaded_class_count: 22371\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433818468000,"args":{"JVM stats":"heap_memory_usage: 391177576\nnon_heap_memory_usage: 264983392\nloaded_class_count: 22371\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 29\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433818481000,"args":{"JVM stats":"heap_memory_usage: 393964416\nnon_heap_memory_usage: 264976352\nloaded_class_count: 22371\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433818576000,"args":{"JVM stats":"heap_memory_usage: 406530720\nnon_heap_memory_usage: 264778528\nloaded_class_count: 22371\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433818583000,"args":{"JVM stats":"heap_memory_usage: 407594992\nnon_heap_memory_usage: 264817184\nloaded_class_count: 22371\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433818584000,"args":{"JVM stats":"heap_memory_usage: 407594992\nnon_heap_memory_usage: 264816032\nloaded_class_count: 22371\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433818586000,"args":{"JVM stats":"heap_memory_usage: 407594992\nnon_heap_memory_usage: 264813472\nloaded_class_count: 22371\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433818643000,"args":{"JVM stats":"heap_memory_usage: 416350800\nnon_heap_memory_usage: 264772360\nloaded_class_count: 22371\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433818944000,"args":{"JVM stats":"heap_memory_usage: 482374936\nnon_heap_memory_usage: 264851328\nloaded_class_count: 22373\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433819898000,"args":{"JVM stats":"heap_memory_usage: 523794832\nnon_heap_memory_usage: 264921136\nloaded_class_count: 22373\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433819898001,"args":{"JVM stats":"heap_memory_usage: 523925920\nnon_heap_memory_usage: 264921136\nloaded_class_count: 22373\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433819900000,"args":{"JVM stats":"heap_memory_usage: 524056392\nnon_heap_memory_usage: 264921136\nloaded_class_count: 22373\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433819901000,"args":{"JVM stats":"heap_memory_usage: 524326984\nnon_heap_memory_usage: 264921136\nloaded_class_count: 22373\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433819902000,"args":{"JVM stats":"heap_memory_usage: 524326984\nnon_heap_memory_usage: 264921136\nloaded_class_count: 22373\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433819910000,"args":{"JVM stats":"heap_memory_usage: 524594568\nnon_heap_memory_usage: 264948064\nloaded_class_count: 22375\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433819919000,"args":{"JVM stats":"heap_memory_usage: 525397248\nnon_heap_memory_usage: 264948064\nloaded_class_count: 22375\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433819921000,"args":{"JVM stats":"heap_memory_usage: 525397248\nnon_heap_memory_usage: 264951904\nloaded_class_count: 22375\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433819922000,"args":{"JVM stats":"heap_memory_usage: 525397248\nnon_heap_memory_usage: 264951904\nloaded_class_count: 22375\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433819922001,"args":{"JVM stats":"heap_memory_usage: 525397248\nnon_heap_memory_usage: 264951904\nloaded_class_count: 22375\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433819925000,"args":{"JVM stats":"heap_memory_usage: 525913080\nnon_heap_memory_usage: 264955232\nloaded_class_count: 22375\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433819937000,"args":{"JVM stats":"heap_memory_usage: 526448288\nnon_heap_memory_usage: 264959968\nloaded_class_count: 22375\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433819938000,"args":{"JVM stats":"heap_memory_usage: 526448288\nnon_heap_memory_usage: 264959968\nloaded_class_count: 22375\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433819939000,"args":{"JVM stats":"heap_memory_usage: 526448288\nnon_heap_memory_usage: 264959968\nloaded_class_count: 22375\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433819964000,"args":{"JVM stats":"heap_memory_usage: 530560592\nnon_heap_memory_usage: 264969376\nloaded_class_count: 22375\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433820003000,"args":{"JVM stats":"heap_memory_usage: 533242328\nnon_heap_memory_usage: 264973600\nloaded_class_count: 22375\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433820004000,"args":{"JVM stats":"heap_memory_usage: 533242328\nnon_heap_memory_usage: 264973600\nloaded_class_count: 22375\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433820006000,"args":{"JVM stats":"heap_memory_usage: 533242328\nnon_heap_memory_usage: 264973600\nloaded_class_count: 22375\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433820098000,"args":{"JVM stats":"heap_memory_usage: 536238816\nnon_heap_memory_usage: 264976160\nloaded_class_count: 22375\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433822450000,"args":{"JVM stats":"heap_memory_usage: 546204056\nnon_heap_memory_usage: 267787768\nloaded_class_count: 22501\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 2\n gc_time: 231\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433822454000,"args":{"JVM stats":"heap_memory_usage: 548082600\nnon_heap_memory_usage: 267787768\nloaded_class_count: 22501\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433822454001,"args":{"JVM stats":"heap_memory_usage: 548082600\nnon_heap_memory_usage: 267787768\nloaded_class_count: 22501\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433822459000,"args":{"JVM stats":"heap_memory_usage: 548191064\nnon_heap_memory_usage: 267820112\nloaded_class_count: 22501\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433822463000,"args":{"JVM stats":"heap_memory_usage: 548311864\nnon_heap_memory_usage: 267825128\nloaded_class_count: 22501\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433822463001,"args":{"JVM stats":"heap_memory_usage: 548311864\nnon_heap_memory_usage: 267828776\nloaded_class_count: 22501\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433822465000,"args":{"JVM stats":"heap_memory_usage: 548311864\nnon_heap_memory_usage: 267823400\nloaded_class_count: 22501\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433822467000,"args":{"JVM stats":"heap_memory_usage: 548311864\nnon_heap_memory_usage: 267823400\nloaded_class_count: 22501\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433822469000,"args":{"JVM stats":"heap_memory_usage: 548311864\nnon_heap_memory_usage: 267823400\nloaded_class_count: 22501\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433822471000,"args":{"JVM stats":"heap_memory_usage: 548311864\nnon_heap_memory_usage: 267823400\nloaded_class_count: 22501\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433822473000,"args":{"JVM stats":"heap_memory_usage: 548311864\nnon_heap_memory_usage: 267843592\nloaded_class_count: 22501\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433822474000,"args":{"JVM stats":"heap_memory_usage: 549114384\nnon_heap_memory_usage: 267843592\nloaded_class_count: 22501\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433822474001,"args":{"JVM stats":"heap_memory_usage: 549114384\nnon_heap_memory_usage: 267843592\nloaded_class_count: 22501\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433822476000,"args":{"JVM stats":"heap_memory_usage: 549114384\nnon_heap_memory_usage: 267843592\nloaded_class_count: 22501\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433822570000,"args":{"JVM stats":"heap_memory_usage: 557484688\nnon_heap_memory_usage: 267876344\nloaded_class_count: 22501\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433826121000,"args":{"JVM stats":"heap_memory_usage: 459979456\nnon_heap_memory_usage: 268899768\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 5\n gc_time: 177\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433828428000,"args":{"JVM stats":"heap_memory_usage: 585806480\nnon_heap_memory_usage: 269503320\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 3\n gc_time: 229\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433829396000,"args":{"JVM stats":"heap_memory_usage: 504972744\nnon_heap_memory_usage: 268774016\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 2\n gc_time: 98\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433829403000,"args":{"JVM stats":"heap_memory_usage: 506611848\nnon_heap_memory_usage: 268774016\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433829404000,"args":{"JVM stats":"heap_memory_usage: 506683208\nnon_heap_memory_usage: 268774016\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433829406000,"args":{"JVM stats":"heap_memory_usage: 506867544\nnon_heap_memory_usage: 268774016\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433829409000,"args":{"JVM stats":"heap_memory_usage: 506867544\nnon_heap_memory_usage: 268774016\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433829411000,"args":{"JVM stats":"heap_memory_usage: 507051768\nnon_heap_memory_usage: 268774016\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433829413000,"args":{"JVM stats":"heap_memory_usage: 507051768\nnon_heap_memory_usage: 268781344\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433829415000,"args":{"JVM stats":"heap_memory_usage: 507051768\nnon_heap_memory_usage: 268783136\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433829417000,"args":{"JVM stats":"heap_memory_usage: 507236024\nnon_heap_memory_usage: 268786720\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433829418000,"args":{"JVM stats":"heap_memory_usage: 507236024\nnon_heap_memory_usage: 268786720\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433829932000,"args":{"JVM stats":"heap_memory_usage: 608724112\nnon_heap_memory_usage: 268836376\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433829934000,"args":{"JVM stats":"heap_memory_usage: 608811920\nnon_heap_memory_usage: 268836376\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433830574000,"args":{"JVM stats":"heap_memory_usage: 513818168\nnon_heap_memory_usage: 268947712\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 43\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433830576000,"args":{"JVM stats":"heap_memory_usage: 514567968\nnon_heap_memory_usage: 268947712\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433831582000,"args":{"JVM stats":"heap_memory_usage: 588942088\nnon_heap_memory_usage: 269051392\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 4\n gc_time: 124\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433831583000,"args":{"JVM stats":"heap_memory_usage: 591001952\nnon_heap_memory_usage: 269051392\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433831588000,"args":{"JVM stats":"heap_memory_usage: 592066696\nnon_heap_memory_usage: 269054784\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433831589000,"args":{"JVM stats":"heap_memory_usage: 592121920\nnon_heap_memory_usage: 269054784\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433831591000,"args":{"JVM stats":"heap_memory_usage: 592228472\nnon_heap_memory_usage: 269054784\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433831611000,"args":{"JVM stats":"heap_memory_usage: 593323128\nnon_heap_memory_usage: 269064904\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433831612000,"args":{"JVM stats":"heap_memory_usage: 593393696\nnon_heap_memory_usage: 269064904\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433831614000,"args":{"JVM stats":"heap_memory_usage: 593602848\nnon_heap_memory_usage: 269064904\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433831628000,"args":{"JVM stats":"heap_memory_usage: 594576176\nnon_heap_memory_usage: 269119048\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433831663000,"args":{"JVM stats":"heap_memory_usage: 599340832\nnon_heap_memory_usage: 269145280\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433831675000,"args":{"JVM stats":"heap_memory_usage: 600555560\nnon_heap_memory_usage: 269137024\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433831693000,"args":{"JVM stats":"heap_memory_usage: 603123648\nnon_heap_memory_usage: 269155728\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433831711000,"args":{"JVM stats":"heap_memory_usage: 604811496\nnon_heap_memory_usage: 269155728\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433831712000,"args":{"JVM stats":"heap_memory_usage: 604879336\nnon_heap_memory_usage: 269155728\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433831713000,"args":{"JVM stats":"heap_memory_usage: 604922496\nnon_heap_memory_usage: 269155728\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433831729000,"args":{"JVM stats":"heap_memory_usage: 606380688\nnon_heap_memory_usage: 269159504\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433831733000,"args":{"JVM stats":"heap_memory_usage: 606902384\nnon_heap_memory_usage: 269159504\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433831737000,"args":{"JVM stats":"heap_memory_usage: 606961992\nnon_heap_memory_usage: 269168784\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433831739000,"args":{"JVM stats":"heap_memory_usage: 607001080\nnon_heap_memory_usage: 269168784\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433831740000,"args":{"JVM stats":"heap_memory_usage: 607009304\nnon_heap_memory_usage: 269168784\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433831870000,"args":{"JVM stats":"heap_memory_usage: 608601336\nnon_heap_memory_usage: 269175952\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433831874000,"args":{"JVM stats":"heap_memory_usage: 609123216\nnon_heap_memory_usage: 269175952\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433831876000,"args":{"JVM stats":"heap_memory_usage: 609142744\nnon_heap_memory_usage: 269175952\nloaded_class_count: 22501\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433832085000,"args":{"JVM stats":"heap_memory_usage: 637183672\nnon_heap_memory_usage: 269284328\nloaded_class_count: 22501\nthread_count: 46\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433832138000,"args":{"JVM stats":"heap_memory_usage: 395107432\nnon_heap_memory_usage: 269291664\nloaded_class_count: 22501\nthread_count: 46\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 36\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433832140000,"args":{"JVM stats":"heap_memory_usage: 395237856\nnon_heap_memory_usage: 269284176\nloaded_class_count: 22501\nthread_count: 46\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433832140001,"args":{"JVM stats":"heap_memory_usage: 395246080\nnon_heap_memory_usage: 269284176\nloaded_class_count: 22501\nthread_count: 46\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433832148000,"args":{"JVM stats":"heap_memory_usage: 395321544\nnon_heap_memory_usage: 269267904\nloaded_class_count: 22501\nthread_count: 46\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433836367000,"args":{"JVM stats":"heap_memory_usage: 553270472\nnon_heap_memory_usage: 269376736\nloaded_class_count: 22501\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433836370000,"args":{"JVM stats":"heap_memory_usage: 554170120\nnon_heap_memory_usage: 269378000\nloaded_class_count: 22501\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433836703000,"args":{"JVM stats":"heap_memory_usage: 568522072\nnon_heap_memory_usage: 269461120\nloaded_class_count: 22501\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433836706000,"args":{"JVM stats":"heap_memory_usage: 568773128\nnon_heap_memory_usage: 269463896\nloaded_class_count: 22501\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433836803000,"args":{"JVM stats":"heap_memory_usage: 577499000\nnon_heap_memory_usage: 269589336\nloaded_class_count: 22501\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433837446000,"args":{"JVM stats":"heap_memory_usage: 410963480\nnon_heap_memory_usage: 269349392\nloaded_class_count: 22502\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 30\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433839761000,"args":{"JVM stats":"heap_memory_usage: 456631248\nnon_heap_memory_usage: 269093928\nloaded_class_count: 22502\nthread_count: 46\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433839762000,"args":{"JVM stats":"heap_memory_usage: 456684424\nnon_heap_memory_usage: 269093928\nloaded_class_count: 22502\nthread_count: 46\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433839766000,"args":{"JVM stats":"heap_memory_usage: 456920256\nnon_heap_memory_usage: 269096728\nloaded_class_count: 22502\nthread_count: 46\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433839766001,"args":{"JVM stats":"heap_memory_usage: 456997848\nnon_heap_memory_usage: 269100880\nloaded_class_count: 22502\nthread_count: 46\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433839771000,"args":{"JVM stats":"heap_memory_usage: 457271176\nnon_heap_memory_usage: 269105160\nloaded_class_count: 22502\nthread_count: 46\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433839771001,"args":{"JVM stats":"heap_memory_usage: 457271176\nnon_heap_memory_usage: 269105160\nloaded_class_count: 22502\nthread_count: 46\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433839792000,"args":{"JVM stats":"heap_memory_usage: 458005032\nnon_heap_memory_usage: 269106992\nloaded_class_count: 22502\nthread_count: 46\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433840537000,"args":{"JVM stats":"heap_memory_usage: 493714824\nnon_heap_memory_usage: 269140312\nloaded_class_count: 22502\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433840538000,"args":{"JVM stats":"heap_memory_usage: 493858096\nnon_heap_memory_usage: 269140312\nloaded_class_count: 22502\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433840553000,"args":{"JVM stats":"heap_memory_usage: 498293248\nnon_heap_memory_usage: 269155640\nloaded_class_count: 22502\nthread_count: 46\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433840617000,"args":{"JVM stats":"heap_memory_usage: 501567912\nnon_heap_memory_usage: 269171000\nloaded_class_count: 22502\nthread_count: 46\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433844251000,"args":{"JVM stats":"heap_memory_usage: 555656104\nnon_heap_memory_usage: 272672496\nloaded_class_count: 22852\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 76\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433844253000,"args":{"JVM stats":"heap_memory_usage: 557701480\nnon_heap_memory_usage: 272672496\nloaded_class_count: 22852\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433844304000,"args":{"JVM stats":"heap_memory_usage: 562659080\nnon_heap_memory_usage: 272672496\nloaded_class_count: 22852\nthread_count: 46\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433844355000,"args":{"JVM stats":"heap_memory_usage: 566335920\nnon_heap_memory_usage: 272672496\nloaded_class_count: 22852\nthread_count: 46\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433846511000,"args":{"JVM stats":"heap_memory_usage: 656220440\nnon_heap_memory_usage: 275153384\nloaded_class_count: 22979\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 35\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433846513000,"args":{"JVM stats":"heap_memory_usage: 659190648\nnon_heap_memory_usage: 275153384\nloaded_class_count: 22979\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433846514000,"args":{"JVM stats":"heap_memory_usage: 659276840\nnon_heap_memory_usage: 275155368\nloaded_class_count: 22979\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433855595000,"args":{"JVM stats":"heap_memory_usage: 507315912\nnon_heap_memory_usage: 281165624\nloaded_class_count: 22980\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 4\n gc_time: 262\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433855601000,"args":{"JVM stats":"heap_memory_usage: 510469184\nnon_heap_memory_usage: 281165624\nloaded_class_count: 22980\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433855610000,"args":{"JVM stats":"heap_memory_usage: 510567152\nnon_heap_memory_usage: 281168992\nloaded_class_count: 22980\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433855611000,"args":{"JVM stats":"heap_memory_usage: 510606776\nnon_heap_memory_usage: 281168992\nloaded_class_count: 22980\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433855615000,"args":{"JVM stats":"heap_memory_usage: 510646360\nnon_heap_memory_usage: 281168992\nloaded_class_count: 22980\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433855618000,"args":{"JVM stats":"heap_memory_usage: 510756920\nnon_heap_memory_usage: 281168992\nloaded_class_count: 22980\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433855619000,"args":{"JVM stats":"heap_memory_usage: 510792488\nnon_heap_memory_usage: 281168992\nloaded_class_count: 22980\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433855638000,"args":{"JVM stats":"heap_memory_usage: 516848080\nnon_heap_memory_usage: 281179552\nloaded_class_count: 22980\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433855645000,"args":{"JVM stats":"heap_memory_usage: 516979232\nnon_heap_memory_usage: 281179552\nloaded_class_count: 22980\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433855648000,"args":{"JVM stats":"heap_memory_usage: 517102264\nnon_heap_memory_usage: 281179552\nloaded_class_count: 22980\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433855649000,"args":{"JVM stats":"heap_memory_usage: 517133624\nnon_heap_memory_usage: 281179552\nloaded_class_count: 22980\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433855655000,"args":{"JVM stats":"heap_memory_usage: 517325600\nnon_heap_memory_usage: 281179552\nloaded_class_count: 22980\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433855720000,"args":{"JVM stats":"heap_memory_usage: 526009960\nnon_heap_memory_usage: 281189088\nloaded_class_count: 22980\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433855722000,"args":{"JVM stats":"heap_memory_usage: 526085112\nnon_heap_memory_usage: 281189088\nloaded_class_count: 22980\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433856492000,"args":{"JVM stats":"heap_memory_usage: 678646232\nnon_heap_memory_usage: 281285264\nloaded_class_count: 22980\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433856494000,"args":{"JVM stats":"heap_memory_usage: 678810056\nnon_heap_memory_usage: 281287656\nloaded_class_count: 22981\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433856495000,"args":{"JVM stats":"heap_memory_usage: 678872824\nnon_heap_memory_usage: 281287688\nloaded_class_count: 22981\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433875939000,"args":{"JVM stats":"heap_memory_usage: 283659440\nnon_heap_memory_usage: 270624480\nloaded_class_count: 21462\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 13\n gc_time: 1754\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 1\n gc_time: 1760\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433890294000,"args":{"JVM stats":"heap_memory_usage: 818569912\nnon_heap_memory_usage: 267830512\nloaded_class_count: 21462\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 17\n gc_time: 2233\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 1\n gc_time: 3120\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433892903000,"args":{"JVM stats":"heap_memory_usage: 706808928\nnon_heap_memory_usage: 267872784\nloaded_class_count: 21462\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 2\n gc_time: 171\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433892914000,"args":{"JVM stats":"heap_memory_usage: 708588912\nnon_heap_memory_usage: 267878288\nloaded_class_count: 21462\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433892916000,"args":{"JVM stats":"heap_memory_usage: 708681256\nnon_heap_memory_usage: 267878288\nloaded_class_count: 21462\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433892955000,"args":{"JVM stats":"heap_memory_usage: 711059176\nnon_heap_memory_usage: 267879408\nloaded_class_count: 21462\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433892990000,"args":{"JVM stats":"heap_memory_usage: 711626064\nnon_heap_memory_usage: 267819000\nloaded_class_count: 21462\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433893020000,"args":{"JVM stats":"heap_memory_usage: 712240168\nnon_heap_memory_usage: 267819000\nloaded_class_count: 21462\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433893024000,"args":{"JVM stats":"heap_memory_usage: 712323904\nnon_heap_memory_usage: 267819000\nloaded_class_count: 21462\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433893028000,"args":{"JVM stats":"heap_memory_usage: 712598776\nnon_heap_memory_usage: 267819000\nloaded_class_count: 21462\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433893040000,"args":{"JVM stats":"heap_memory_usage: 712908384\nnon_heap_memory_usage: 267828880\nloaded_class_count: 21462\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433893044000,"args":{"JVM stats":"heap_memory_usage: 713197576\nnon_heap_memory_usage: 267830416\nloaded_class_count: 21462\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433893746000,"args":{"JVM stats":"heap_memory_usage: 813480920\nnon_heap_memory_usage: 267982160\nloaded_class_count: 21462\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433893747000,"args":{"JVM stats":"heap_memory_usage: 813625640\nnon_heap_memory_usage: 267982160\nloaded_class_count: 21462\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433896442000,"args":{"JVM stats":"heap_memory_usage: 825952224\nnon_heap_memory_usage: 268111664\nloaded_class_count: 21463\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 4\n gc_time: 49\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433896443000,"args":{"JVM stats":"heap_memory_usage: 826968936\nnon_heap_memory_usage: 268111664\nloaded_class_count: 21463\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433896446000,"args":{"JVM stats":"heap_memory_usage: 829816528\nnon_heap_memory_usage: 268111664\nloaded_class_count: 21463\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546433896465000,"args":{"JVM stats":"heap_memory_usage: 830008032\nnon_heap_memory_usage: 268126728\nloaded_class_count: 21464\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":1,"tid":15,"id":2,"name":"base plugin project configure","args":{"span_id":"2","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433815523000,"dur":8000},{"pid":1,"tid":15,"id":3,"name":"base plugin project base extension creation","args":{"span_id":"3","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433815531000,"dur":4000},{"pid":1,"tid":15,"id":5,"name":"task manager create tasks","args":{"span_id":"5","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433815535000,"dur":2000},{"pid":1,"tid":15,"id":4,"name":"base plugin project tasks creation","args":{"span_id":"4","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433815535000,"dur":2000},{"pid":1,"tid":15,"id":8,"name":"variant manager create variants","args":{"span_id":"8","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816091000,"dur":37000},{"pid":1,"tid":15,"id":9,"name":"variant manager create tests tasks","args":{"span_id":"9","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816128000,"dur":1000},{"pid":1,"tid":15,"id":11,"name":"app task manager create merge manifest task","args":{"span_id":"11","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816131000,"dur":100},{"pid":1,"tid":15,"id":12,"name":"app task manager create generate res values task","args":{"span_id":"12","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816131000,"dur":1000},{"pid":1,"tid":15,"id":13,"name":"app task manager create create renderscript task","args":{"span_id":"13","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816132000,"dur":100},{"pid":1,"tid":15,"id":14,"name":"app task manager create merge resources task","args":{"span_id":"14","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816132000,"dur":1000},{"pid":1,"tid":15,"id":15,"name":"app task manager create merge assets task","args":{"span_id":"15","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816133000,"dur":100},{"pid":1,"tid":15,"id":16,"name":"app task manager create build config task","args":{"span_id":"16","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816133000,"dur":1000},{"pid":1,"tid":15,"id":17,"name":"app task manager create process res task","args":{"span_id":"17","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816134000,"dur":5000},{"pid":1,"tid":15,"id":18,"name":"app task manager create aidl task","args":{"span_id":"18","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816139000,"dur":1000},{"pid":1,"tid":15,"id":19,"name":"app task manager create shader task","args":{"span_id":"19","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816140000,"dur":1000},{"pid":1,"tid":15,"id":20,"name":"app task manager create ndk task","args":{"span_id":"20","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816141000,"dur":100},{"pid":1,"tid":15,"id":21,"name":"app task manager create external native build task","args":{"span_id":"21","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816141000,"dur":100},{"pid":1,"tid":15,"id":22,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"22","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816141000,"dur":1000},{"pid":1,"tid":15,"id":23,"name":"app task manager create compile task","args":{"span_id":"23","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816142000,"dur":4000},{"pid":1,"tid":15,"id":24,"name":"app task manager create packaging task","args":{"span_id":"24","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816146000,"dur":75000},{"pid":1,"tid":15,"id":25,"name":"app task manager create lint task","args":{"span_id":"25","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816221000,"dur":1000},{"pid":1,"tid":15,"id":10,"name":"variant manager create tasks for variant","args":{"span_id":"10","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816129000,"dur":93000},{"pid":1,"tid":15,"id":26,"name":"variant manager create tasks for variant","args":{"span_id":"26","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816222000,"dur":3000},{"pid":1,"tid":15,"id":28,"name":"app task manager create merge manifest task","args":{"span_id":"28","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816226000,"dur":100},{"pid":1,"tid":15,"id":29,"name":"app task manager create generate res values task","args":{"span_id":"29","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816226000,"dur":100},{"pid":1,"tid":15,"id":30,"name":"app task manager create create renderscript task","args":{"span_id":"30","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816226000,"dur":1000},{"pid":1,"tid":15,"id":31,"name":"app task manager create merge resources task","args":{"span_id":"31","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816227000,"dur":100},{"pid":1,"tid":15,"id":32,"name":"app task manager create merge assets task","args":{"span_id":"32","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816227000,"dur":100},{"pid":1,"tid":15,"id":33,"name":"app task manager create build config task","args":{"span_id":"33","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816227000,"dur":100},{"pid":1,"tid":15,"id":34,"name":"app task manager create process res task","args":{"span_id":"34","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816227000,"dur":3000},{"pid":1,"tid":15,"id":35,"name":"app task manager create aidl task","args":{"span_id":"35","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816230000,"dur":100},{"pid":1,"tid":15,"id":36,"name":"app task manager create shader task","args":{"span_id":"36","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816230000,"dur":100},{"pid":1,"tid":15,"id":37,"name":"app task manager create ndk task","args":{"span_id":"37","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816230000,"dur":100},{"pid":1,"tid":15,"id":38,"name":"app task manager create external native build task","args":{"span_id":"38","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816230000,"dur":100},{"pid":1,"tid":15,"id":39,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"39","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816230000,"dur":100},{"pid":1,"tid":15,"id":40,"name":"app task manager create compile task","args":{"span_id":"40","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816230000,"dur":2000},{"pid":1,"tid":15,"id":41,"name":"app task manager create packaging task","args":{"span_id":"41","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816232000,"dur":1000},{"pid":1,"tid":15,"id":42,"name":"app task manager create lint task","args":{"span_id":"42","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816233000,"dur":100},{"pid":1,"tid":15,"id":27,"name":"variant manager create tasks for variant","args":{"span_id":"27","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816226000,"dur":7000},{"pid":1,"tid":15,"id":43,"name":"variant manager create tasks for variant","args":{"span_id":"43","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816233000,"dur":9000},{"pid":1,"tid":15,"id":44,"name":"variant manager create tasks for variant","args":{"span_id":"44","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816242000,"dur":12000},{"pid":1,"tid":15,"id":46,"name":"app task manager create merge manifest task","args":{"span_id":"46","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816256000,"dur":100},{"pid":1,"tid":15,"id":47,"name":"app task manager create generate res values task","args":{"span_id":"47","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816256000,"dur":100},{"pid":1,"tid":15,"id":48,"name":"app task manager create create renderscript task","args":{"span_id":"48","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816256000,"dur":1000},{"pid":1,"tid":15,"id":49,"name":"app task manager create merge resources task","args":{"span_id":"49","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816257000,"dur":1000},{"pid":1,"tid":15,"id":50,"name":"app task manager create merge assets task","args":{"span_id":"50","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816258000,"dur":100},{"pid":1,"tid":15,"id":51,"name":"app task manager create build config task","args":{"span_id":"51","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816258000,"dur":100},{"pid":1,"tid":15,"id":52,"name":"app task manager create process res task","args":{"span_id":"52","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816258000,"dur":1000},{"pid":1,"tid":15,"id":53,"name":"app task manager create aidl task","args":{"span_id":"53","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816259000,"dur":100},{"pid":1,"tid":15,"id":54,"name":"app task manager create shader task","args":{"span_id":"54","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816259000,"dur":100},{"pid":1,"tid":15,"id":55,"name":"app task manager create ndk task","args":{"span_id":"55","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816259000,"dur":100},{"pid":1,"tid":15,"id":56,"name":"app task manager create external native build task","args":{"span_id":"56","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816259000,"dur":100},{"pid":1,"tid":15,"id":57,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"57","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816259000,"dur":1000},{"pid":1,"tid":15,"id":58,"name":"app task manager create compile task","args":{"span_id":"58","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816260000,"dur":1000},{"pid":1,"tid":15,"id":59,"name":"app task manager create packaging task","args":{"span_id":"59","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816261000,"dur":1000},{"pid":1,"tid":15,"id":60,"name":"app task manager create lint task","args":{"span_id":"60","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816262000,"dur":100},{"pid":1,"tid":15,"id":45,"name":"variant manager create tasks for variant","args":{"span_id":"45","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816254000,"dur":8000},{"pid":1,"tid":15,"id":61,"name":"variant manager create tasks for variant","args":{"span_id":"61","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816262000,"dur":3000},{"pid":1,"tid":15,"id":63,"name":"app task manager create merge manifest task","args":{"span_id":"63","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816266000,"dur":100},{"pid":1,"tid":15,"id":64,"name":"app task manager create generate res values task","args":{"span_id":"64","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816266000,"dur":100},{"pid":1,"tid":15,"id":65,"name":"app task manager create create renderscript task","args":{"span_id":"65","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816266000,"dur":1000},{"pid":1,"tid":15,"id":66,"name":"app task manager create merge resources task","args":{"span_id":"66","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816267000,"dur":100},{"pid":1,"tid":15,"id":67,"name":"app task manager create merge assets task","args":{"span_id":"67","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816267000,"dur":100},{"pid":1,"tid":15,"id":68,"name":"app task manager create build config task","args":{"span_id":"68","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816267000,"dur":100},{"pid":1,"tid":15,"id":69,"name":"app task manager create process res task","args":{"span_id":"69","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816267000,"dur":2000},{"pid":1,"tid":15,"id":70,"name":"app task manager create aidl task","args":{"span_id":"70","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816269000,"dur":100},{"pid":1,"tid":15,"id":71,"name":"app task manager create shader task","args":{"span_id":"71","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816269000,"dur":100},{"pid":1,"tid":15,"id":72,"name":"app task manager create ndk task","args":{"span_id":"72","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816269000,"dur":100},{"pid":1,"tid":15,"id":73,"name":"app task manager create external native build task","args":{"span_id":"73","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816269000,"dur":100},{"pid":1,"tid":15,"id":74,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"74","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816269000,"dur":1000},{"pid":1,"tid":15,"id":75,"name":"app task manager create compile task","args":{"span_id":"75","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816270000,"dur":1000},{"pid":1,"tid":15,"id":76,"name":"app task manager create packaging task","args":{"span_id":"76","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816271000,"dur":1000},{"pid":1,"tid":15,"id":77,"name":"app task manager create lint task","args":{"span_id":"77","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816272000,"dur":100},{"pid":1,"tid":15,"id":62,"name":"variant manager create tasks for variant","args":{"span_id":"62","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816265000,"dur":7000},{"pid":1,"tid":15,"id":78,"name":"variant manager create tasks for variant","args":{"span_id":"78","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816272000,"dur":6000},{"pid":1,"tid":15,"id":79,"name":"variant manager create tasks for variant","args":{"span_id":"79","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816278000,"dur":7000},{"pid":1,"tid":15,"id":81,"name":"app task manager create merge manifest task","args":{"span_id":"81","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816285000,"dur":1000},{"pid":1,"tid":15,"id":82,"name":"app task manager create generate res values task","args":{"span_id":"82","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816286000,"dur":100},{"pid":1,"tid":15,"id":83,"name":"app task manager create create renderscript task","args":{"span_id":"83","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816286000,"dur":100},{"pid":1,"tid":15,"id":84,"name":"app task manager create merge resources task","args":{"span_id":"84","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816286000,"dur":100},{"pid":1,"tid":15,"id":85,"name":"app task manager create merge assets task","args":{"span_id":"85","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816286000,"dur":100},{"pid":1,"tid":15,"id":86,"name":"app task manager create build config task","args":{"span_id":"86","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816286000,"dur":100},{"pid":1,"tid":15,"id":87,"name":"app task manager create process res task","args":{"span_id":"87","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816286000,"dur":2000},{"pid":1,"tid":15,"id":88,"name":"app task manager create aidl task","args":{"span_id":"88","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816288000,"dur":100},{"pid":1,"tid":15,"id":89,"name":"app task manager create shader task","args":{"span_id":"89","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816288000,"dur":100},{"pid":1,"tid":15,"id":90,"name":"app task manager create ndk task","args":{"span_id":"90","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816288000,"dur":100},{"pid":1,"tid":15,"id":91,"name":"app task manager create external native build task","args":{"span_id":"91","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816288000,"dur":100},{"pid":1,"tid":15,"id":92,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"92","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816288000,"dur":100},{"pid":1,"tid":15,"id":93,"name":"app task manager create compile task","args":{"span_id":"93","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816288000,"dur":2000},{"pid":1,"tid":15,"id":94,"name":"app task manager create packaging task","args":{"span_id":"94","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816290000,"dur":100},{"pid":1,"tid":15,"id":95,"name":"app task manager create lint task","args":{"span_id":"95","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816290000,"dur":100},{"pid":1,"tid":15,"id":80,"name":"variant manager create tasks for variant","args":{"span_id":"80","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816285000,"dur":5000},{"pid":1,"tid":15,"id":96,"name":"variant manager create tasks for variant","args":{"span_id":"96","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816290000,"dur":3000},{"pid":1,"tid":15,"id":98,"name":"app task manager create merge manifest task","args":{"span_id":"98","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816293000,"dur":1000},{"pid":1,"tid":15,"id":99,"name":"app task manager create generate res values task","args":{"span_id":"99","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816294000,"dur":100},{"pid":1,"tid":15,"id":100,"name":"app task manager create create renderscript task","args":{"span_id":"100","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816294000,"dur":100},{"pid":1,"tid":15,"id":101,"name":"app task manager create merge resources task","args":{"span_id":"101","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816294000,"dur":100},{"pid":1,"tid":15,"id":102,"name":"app task manager create merge assets task","args":{"span_id":"102","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816294000,"dur":100},{"pid":1,"tid":15,"id":103,"name":"app task manager create build config task","args":{"span_id":"103","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816294000,"dur":100},{"pid":1,"tid":15,"id":104,"name":"app task manager create process res task","args":{"span_id":"104","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816294000,"dur":1000},{"pid":1,"tid":15,"id":105,"name":"app task manager create aidl task","args":{"span_id":"105","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816295000,"dur":100},{"pid":1,"tid":15,"id":106,"name":"app task manager create shader task","args":{"span_id":"106","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816295000,"dur":1000},{"pid":1,"tid":15,"id":107,"name":"app task manager create ndk task","args":{"span_id":"107","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816296000,"dur":100},{"pid":1,"tid":15,"id":108,"name":"app task manager create external native build task","args":{"span_id":"108","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816296000,"dur":100},{"pid":1,"tid":15,"id":109,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"109","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816296000,"dur":100},{"pid":1,"tid":15,"id":110,"name":"app task manager create compile task","args":{"span_id":"110","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816296000,"dur":2000},{"pid":1,"tid":15,"id":111,"name":"app task manager create packaging task","args":{"span_id":"111","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816298000,"dur":100},{"pid":1,"tid":15,"id":112,"name":"app task manager create lint task","args":{"span_id":"112","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816298000,"dur":100},{"pid":1,"tid":15,"id":97,"name":"variant manager create tasks for variant","args":{"span_id":"97","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816293000,"dur":5000},{"pid":1,"tid":15,"id":113,"name":"variant manager create tasks for variant","args":{"span_id":"113","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816298000,"dur":2000},{"pid":1,"tid":15,"id":114,"name":"variant manager create tasks for variant","args":{"span_id":"114","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816300000,"dur":10000},{"pid":1,"tid":15,"id":116,"name":"app task manager create merge manifest task","args":{"span_id":"116","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816311000,"dur":1000},{"pid":1,"tid":15,"id":117,"name":"app task manager create generate res values task","args":{"span_id":"117","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816312000,"dur":100},{"pid":1,"tid":15,"id":118,"name":"app task manager create create renderscript task","args":{"span_id":"118","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816312000,"dur":1000},{"pid":1,"tid":15,"id":119,"name":"app task manager create merge resources task","args":{"span_id":"119","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816313000,"dur":1000},{"pid":1,"tid":15,"id":120,"name":"app task manager create merge assets task","args":{"span_id":"120","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816314000,"dur":100},{"pid":1,"tid":15,"id":121,"name":"app task manager create build config task","args":{"span_id":"121","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816314000,"dur":100},{"pid":1,"tid":15,"id":122,"name":"app task manager create process res task","args":{"span_id":"122","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816314000,"dur":1000},{"pid":1,"tid":15,"id":123,"name":"app task manager create aidl task","args":{"span_id":"123","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816315000,"dur":100},{"pid":1,"tid":15,"id":124,"name":"app task manager create shader task","args":{"span_id":"124","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816315000,"dur":2000},{"pid":1,"tid":15,"id":125,"name":"app task manager create ndk task","args":{"span_id":"125","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816317000,"dur":100},{"pid":1,"tid":15,"id":126,"name":"app task manager create external native build task","args":{"span_id":"126","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816317000,"dur":100},{"pid":1,"tid":15,"id":127,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"127","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816317000,"dur":1000},{"pid":1,"tid":15,"id":128,"name":"app task manager create compile task","args":{"span_id":"128","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816318000,"dur":2000},{"pid":1,"tid":15,"id":129,"name":"app task manager create packaging task","args":{"span_id":"129","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816320000,"dur":1000},{"pid":1,"tid":15,"id":130,"name":"app task manager create lint task","args":{"span_id":"130","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816321000,"dur":100},{"pid":1,"tid":15,"id":115,"name":"variant manager create tasks for variant","args":{"span_id":"115","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816310000,"dur":11000},{"pid":1,"tid":15,"id":131,"name":"variant manager create tasks for variant","args":{"span_id":"131","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816321000,"dur":2000},{"pid":1,"tid":15,"id":133,"name":"app task manager create merge manifest task","args":{"span_id":"133","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816324000,"dur":100},{"pid":1,"tid":15,"id":134,"name":"app task manager create generate res values task","args":{"span_id":"134","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816324000,"dur":100},{"pid":1,"tid":15,"id":135,"name":"app task manager create create renderscript task","args":{"span_id":"135","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816324000,"dur":100},{"pid":1,"tid":15,"id":136,"name":"app task manager create merge resources task","args":{"span_id":"136","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816324000,"dur":1000},{"pid":1,"tid":15,"id":137,"name":"app task manager create merge assets task","args":{"span_id":"137","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816325000,"dur":100},{"pid":1,"tid":15,"id":138,"name":"app task manager create build config task","args":{"span_id":"138","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816325000,"dur":100},{"pid":1,"tid":15,"id":139,"name":"app task manager create process res task","args":{"span_id":"139","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816325000,"dur":1000},{"pid":1,"tid":15,"id":140,"name":"app task manager create aidl task","args":{"span_id":"140","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816326000,"dur":100},{"pid":1,"tid":15,"id":141,"name":"app task manager create shader task","args":{"span_id":"141","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816326000,"dur":1000},{"pid":1,"tid":15,"id":142,"name":"app task manager create ndk task","args":{"span_id":"142","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816327000,"dur":1000},{"pid":1,"tid":15,"id":143,"name":"app task manager create external native build task","args":{"span_id":"143","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816328000,"dur":100},{"pid":1,"tid":15,"id":144,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"144","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816328000,"dur":1000},{"pid":1,"tid":15,"id":145,"name":"app task manager create compile task","args":{"span_id":"145","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816329000,"dur":5000},{"pid":1,"tid":15,"id":146,"name":"app task manager create packaging task","args":{"span_id":"146","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816334000,"dur":1000},{"pid":1,"tid":15,"id":147,"name":"app task manager create lint task","args":{"span_id":"147","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816335000,"dur":100},{"pid":1,"tid":15,"id":132,"name":"variant manager create tasks for variant","args":{"span_id":"132","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816323000,"dur":12000},{"pid":1,"tid":15,"id":148,"name":"variant manager create tasks for variant","args":{"span_id":"148","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816335000,"dur":6000},{"pid":1,"tid":15,"id":149,"name":"variant manager create tasks for variant","args":{"span_id":"149","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816341000,"dur":6000},{"pid":1,"tid":15,"id":151,"name":"app task manager create merge manifest task","args":{"span_id":"151","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816349000,"dur":1000},{"pid":1,"tid":15,"id":152,"name":"app task manager create generate res values task","args":{"span_id":"152","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816350000,"dur":100},{"pid":1,"tid":15,"id":153,"name":"app task manager create create renderscript task","args":{"span_id":"153","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816350000,"dur":100},{"pid":1,"tid":15,"id":154,"name":"app task manager create merge resources task","args":{"span_id":"154","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816350000,"dur":100},{"pid":1,"tid":15,"id":155,"name":"app task manager create merge assets task","args":{"span_id":"155","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816350000,"dur":100},{"pid":1,"tid":15,"id":156,"name":"app task manager create build config task","args":{"span_id":"156","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816350000,"dur":100},{"pid":1,"tid":15,"id":157,"name":"app task manager create process res task","args":{"span_id":"157","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816350000,"dur":1000},{"pid":1,"tid":15,"id":158,"name":"app task manager create aidl task","args":{"span_id":"158","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816351000,"dur":100},{"pid":1,"tid":15,"id":159,"name":"app task manager create shader task","args":{"span_id":"159","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816351000,"dur":100},{"pid":1,"tid":15,"id":160,"name":"app task manager create ndk task","args":{"span_id":"160","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816351000,"dur":100},{"pid":1,"tid":15,"id":161,"name":"app task manager create external native build task","args":{"span_id":"161","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816351000,"dur":100},{"pid":1,"tid":15,"id":162,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"162","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816351000,"dur":1000},{"pid":1,"tid":15,"id":163,"name":"app task manager create compile task","args":{"span_id":"163","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816352000,"dur":1000},{"pid":1,"tid":15,"id":164,"name":"app task manager create packaging task","args":{"span_id":"164","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816353000,"dur":100},{"pid":1,"tid":15,"id":165,"name":"app task manager create lint task","args":{"span_id":"165","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816353000,"dur":100},{"pid":1,"tid":15,"id":150,"name":"variant manager create tasks for variant","args":{"span_id":"150","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816347000,"dur":6000},{"pid":1,"tid":15,"id":166,"name":"variant manager create tasks for variant","args":{"span_id":"166","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816353000,"dur":3000},{"pid":1,"tid":15,"id":168,"name":"app task manager create merge manifest task","args":{"span_id":"168","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816357000,"dur":100},{"pid":1,"tid":15,"id":169,"name":"app task manager create generate res values task","args":{"span_id":"169","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816357000,"dur":100},{"pid":1,"tid":15,"id":170,"name":"app task manager create create renderscript task","args":{"span_id":"170","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816357000,"dur":100},{"pid":1,"tid":15,"id":171,"name":"app task manager create merge resources task","args":{"span_id":"171","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816357000,"dur":1000},{"pid":1,"tid":15,"id":172,"name":"app task manager create merge assets task","args":{"span_id":"172","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816358000,"dur":100},{"pid":1,"tid":15,"id":173,"name":"app task manager create build config task","args":{"span_id":"173","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816358000,"dur":100},{"pid":1,"tid":15,"id":174,"name":"app task manager create process res task","args":{"span_id":"174","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816358000,"dur":1000},{"pid":1,"tid":15,"id":175,"name":"app task manager create aidl task","args":{"span_id":"175","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816359000,"dur":100},{"pid":1,"tid":15,"id":176,"name":"app task manager create shader task","args":{"span_id":"176","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816359000,"dur":100},{"pid":1,"tid":15,"id":177,"name":"app task manager create ndk task","args":{"span_id":"177","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816359000,"dur":100},{"pid":1,"tid":15,"id":178,"name":"app task manager create external native build task","args":{"span_id":"178","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816359000,"dur":100},{"pid":1,"tid":15,"id":179,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"179","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816359000,"dur":100},{"pid":1,"tid":15,"id":180,"name":"app task manager create compile task","args":{"span_id":"180","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816359000,"dur":2000},{"pid":1,"tid":15,"id":181,"name":"app task manager create packaging task","args":{"span_id":"181","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816361000,"dur":1000},{"pid":1,"tid":15,"id":182,"name":"app task manager create lint task","args":{"span_id":"182","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816362000,"dur":100},{"pid":1,"tid":15,"id":167,"name":"variant manager create tasks for variant","args":{"span_id":"167","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816356000,"dur":6000},{"pid":1,"tid":15,"id":183,"name":"variant manager create tasks for variant","args":{"span_id":"183","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816362000,"dur":2000},{"pid":1,"tid":15,"id":184,"name":"variant manager create tasks for variant","args":{"span_id":"184","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816364000,"dur":7000},{"pid":1,"tid":15,"id":7,"name":"variant manager create android tasks","args":{"span_id":"7","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816091000,"dur":285000},{"pid":1,"tid":15,"id":185,"name":"variant manager external native config values","args":{"span_id":"185","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816377000,"dur":100},{"pid":1,"tid":15,"id":6,"name":"base plugin create android tasks","args":{"span_id":"6","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433815547000,"dur":830000},{"pid":1,"tid":15,"id":186,"name":"base plugin project configure","args":{"span_id":"186","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816389000,"dur":4000},{"pid":1,"tid":15,"id":187,"name":"base plugin project base extension creation","args":{"span_id":"187","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816393000,"dur":6000},{"pid":1,"tid":15,"id":189,"name":"task manager create tasks","args":{"span_id":"189","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816399000,"dur":100},{"pid":1,"tid":15,"id":188,"name":"base plugin project tasks creation","args":{"span_id":"188","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816399000,"dur":100},{"pid":1,"tid":15,"id":192,"name":"variant manager create variants","args":{"span_id":"192","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816408000,"dur":3000},{"pid":1,"tid":15,"id":193,"name":"variant manager create tests tasks","args":{"span_id":"193","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816411000,"dur":100},{"pid":1,"tid":15,"id":195,"name":"lib task manager create generate res values task","args":{"span_id":"195","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816412000,"dur":100},{"pid":1,"tid":15,"id":196,"name":"lib task manager create merge manifest task","args":{"span_id":"196","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816412000,"dur":1000},{"pid":1,"tid":15,"id":197,"name":"lib task manager create create renderscript task","args":{"span_id":"197","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816413000,"dur":100},{"pid":1,"tid":15,"id":198,"name":"lib task manager create merge resources task","args":{"span_id":"198","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816413000,"dur":100},{"pid":1,"tid":15,"id":199,"name":"lib task manager create merge assets task","args":{"span_id":"199","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816413000,"dur":1000},{"pid":1,"tid":15,"id":200,"name":"lib task manager create build config task","args":{"span_id":"200","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816414000,"dur":100},{"pid":1,"tid":15,"id":201,"name":"lib task manager create process res task","args":{"span_id":"201","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816414000,"dur":2000},{"pid":1,"tid":15,"id":202,"name":"lib task manager create aidl task","args":{"span_id":"202","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816416000,"dur":1000},{"pid":1,"tid":15,"id":203,"name":"lib task manager create shader task","args":{"span_id":"203","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816417000,"dur":100},{"pid":1,"tid":15,"id":204,"name":"lib task manager create compile task","args":{"span_id":"204","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816417000,"dur":100},{"pid":1,"tid":15,"id":205,"name":"lib task manager create ndk task","args":{"span_id":"205","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816417000,"dur":100},{"pid":1,"tid":15,"id":206,"name":"lib task manager create external native build task","args":{"span_id":"206","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816417000,"dur":100},{"pid":1,"tid":15,"id":207,"name":"lib task manager create packaging task","args":{"span_id":"207","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816417000,"dur":1000},{"pid":1,"tid":15,"id":208,"name":"lib task manager create merge proguard file task","args":{"span_id":"208","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816418000,"dur":100},{"pid":1,"tid":15,"id":209,"name":"lib task manager create post compilation task","args":{"span_id":"209","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816419000,"dur":100},{"pid":1,"tid":15,"id":210,"name":"lib task manager create lint task","args":{"span_id":"210","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816419000,"dur":100},{"pid":1,"tid":15,"id":194,"name":"variant manager create tasks for variant","args":{"span_id":"194","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816411000,"dur":8000},{"pid":1,"tid":15,"id":211,"name":"variant manager create tasks for variant","args":{"span_id":"211","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816419000,"dur":3000},{"pid":1,"tid":15,"id":213,"name":"lib task manager create generate res values task","args":{"span_id":"213","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816422000,"dur":100},{"pid":1,"tid":15,"id":214,"name":"lib task manager create merge manifest task","args":{"span_id":"214","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816422000,"dur":100},{"pid":1,"tid":15,"id":215,"name":"lib task manager create create renderscript task","args":{"span_id":"215","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816422000,"dur":100},{"pid":1,"tid":15,"id":216,"name":"lib task manager create merge resources task","args":{"span_id":"216","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816422000,"dur":1000},{"pid":1,"tid":15,"id":217,"name":"lib task manager create merge assets task","args":{"span_id":"217","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816423000,"dur":100},{"pid":1,"tid":15,"id":218,"name":"lib task manager create build config task","args":{"span_id":"218","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816423000,"dur":100},{"pid":1,"tid":15,"id":219,"name":"lib task manager create process res task","args":{"span_id":"219","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816423000,"dur":2000},{"pid":1,"tid":15,"id":220,"name":"lib task manager create aidl task","args":{"span_id":"220","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816425000,"dur":100},{"pid":1,"tid":15,"id":221,"name":"lib task manager create shader task","args":{"span_id":"221","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816425000,"dur":1000},{"pid":1,"tid":15,"id":222,"name":"lib task manager create compile task","args":{"span_id":"222","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816426000,"dur":100},{"pid":1,"tid":15,"id":223,"name":"lib task manager create ndk task","args":{"span_id":"223","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816426000,"dur":100},{"pid":1,"tid":15,"id":224,"name":"lib task manager create external native build task","args":{"span_id":"224","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816427000,"dur":100},{"pid":1,"tid":15,"id":225,"name":"lib task manager create packaging task","args":{"span_id":"225","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816427000,"dur":100},{"pid":1,"tid":15,"id":226,"name":"lib task manager create merge proguard file task","args":{"span_id":"226","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816427000,"dur":100},{"pid":1,"tid":15,"id":227,"name":"lib task manager create post compilation task","args":{"span_id":"227","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816428000,"dur":100},{"pid":1,"tid":15,"id":228,"name":"lib task manager create lint task","args":{"span_id":"228","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816429000,"dur":100},{"pid":1,"tid":15,"id":212,"name":"variant manager create tasks for variant","args":{"span_id":"212","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816422000,"dur":7000},{"pid":1,"tid":15,"id":229,"name":"variant manager create tasks for variant","args":{"span_id":"229","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816429000,"dur":4000},{"pid":1,"tid":15,"id":230,"name":"variant manager create tasks for variant","args":{"span_id":"230","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816433000,"dur":6000},{"pid":1,"tid":15,"id":191,"name":"variant manager create android tasks","args":{"span_id":"191","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816408000,"dur":31000},{"pid":1,"tid":15,"id":231,"name":"variant manager external native config values","args":{"span_id":"231","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816440000,"dur":100},{"pid":1,"tid":15,"id":190,"name":"base plugin create android tasks","args":{"span_id":"190","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816407000,"dur":33000},{"pid":1,"tid":15,"id":232,"name":"base plugin project configure","args":{"span_id":"232","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816466000,"dur":5000},{"pid":1,"tid":15,"id":233,"name":"base plugin project base extension creation","args":{"span_id":"233","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816471000,"dur":2000},{"pid":1,"tid":15,"id":235,"name":"task manager create tasks","args":{"span_id":"235","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816473000,"dur":1000},{"pid":1,"tid":15,"id":234,"name":"base plugin project tasks creation","args":{"span_id":"234","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816473000,"dur":1000},{"pid":1,"tid":15,"id":238,"name":"variant manager create variants","args":{"span_id":"238","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816476000,"dur":2000},{"pid":1,"tid":15,"id":239,"name":"variant manager create tests tasks","args":{"span_id":"239","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816478000,"dur":1000},{"pid":1,"tid":15,"id":241,"name":"lib task manager create generate res values task","args":{"span_id":"241","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816479000,"dur":100},{"pid":1,"tid":15,"id":242,"name":"lib task manager create merge manifest task","args":{"span_id":"242","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816479000,"dur":100},{"pid":1,"tid":15,"id":243,"name":"lib task manager create create renderscript task","args":{"span_id":"243","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816479000,"dur":100},{"pid":1,"tid":15,"id":244,"name":"lib task manager create merge resources task","args":{"span_id":"244","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816479000,"dur":1000},{"pid":1,"tid":15,"id":245,"name":"lib task manager create merge assets task","args":{"span_id":"245","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816480000,"dur":100},{"pid":1,"tid":15,"id":246,"name":"lib task manager create build config task","args":{"span_id":"246","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816480000,"dur":100},{"pid":1,"tid":15,"id":247,"name":"lib task manager create process res task","args":{"span_id":"247","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816480000,"dur":3000},{"pid":1,"tid":15,"id":248,"name":"lib task manager create aidl task","args":{"span_id":"248","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816483000,"dur":100},{"pid":1,"tid":15,"id":249,"name":"lib task manager create shader task","args":{"span_id":"249","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816483000,"dur":100},{"pid":1,"tid":15,"id":250,"name":"lib task manager create compile task","args":{"span_id":"250","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816483000,"dur":100},{"pid":1,"tid":15,"id":251,"name":"lib task manager create ndk task","args":{"span_id":"251","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816483000,"dur":1000},{"pid":1,"tid":15,"id":252,"name":"lib task manager create external native build task","args":{"span_id":"252","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816484000,"dur":100},{"pid":1,"tid":15,"id":253,"name":"lib task manager create packaging task","args":{"span_id":"253","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816484000,"dur":100},{"pid":1,"tid":15,"id":254,"name":"lib task manager create merge proguard file task","args":{"span_id":"254","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816484000,"dur":100},{"pid":1,"tid":15,"id":255,"name":"lib task manager create post compilation task","args":{"span_id":"255","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816484000,"dur":1000},{"pid":1,"tid":15,"id":256,"name":"lib task manager create lint task","args":{"span_id":"256","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816485000,"dur":100},{"pid":1,"tid":15,"id":240,"name":"variant manager create tasks for variant","args":{"span_id":"240","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816479000,"dur":6000},{"pid":1,"tid":15,"id":257,"name":"variant manager create tasks for variant","args":{"span_id":"257","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816485000,"dur":2000},{"pid":1,"tid":15,"id":259,"name":"lib task manager create generate res values task","args":{"span_id":"259","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816487000,"dur":100},{"pid":1,"tid":15,"id":260,"name":"lib task manager create merge manifest task","args":{"span_id":"260","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816487000,"dur":100},{"pid":1,"tid":15,"id":261,"name":"lib task manager create create renderscript task","args":{"span_id":"261","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816487000,"dur":100},{"pid":1,"tid":15,"id":262,"name":"lib task manager create merge resources task","args":{"span_id":"262","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816487000,"dur":1000},{"pid":1,"tid":15,"id":263,"name":"lib task manager create merge assets task","args":{"span_id":"263","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816488000,"dur":100},{"pid":1,"tid":15,"id":264,"name":"lib task manager create build config task","args":{"span_id":"264","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816488000,"dur":100},{"pid":1,"tid":15,"id":265,"name":"lib task manager create process res task","args":{"span_id":"265","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816488000,"dur":1000},{"pid":1,"tid":15,"id":266,"name":"lib task manager create aidl task","args":{"span_id":"266","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816489000,"dur":100},{"pid":1,"tid":15,"id":267,"name":"lib task manager create shader task","args":{"span_id":"267","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816489000,"dur":100},{"pid":1,"tid":15,"id":268,"name":"lib task manager create compile task","args":{"span_id":"268","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816489000,"dur":100},{"pid":1,"tid":15,"id":269,"name":"lib task manager create ndk task","args":{"span_id":"269","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816489000,"dur":100},{"pid":1,"tid":15,"id":270,"name":"lib task manager create external native build task","args":{"span_id":"270","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816489000,"dur":100},{"pid":1,"tid":15,"id":271,"name":"lib task manager create packaging task","args":{"span_id":"271","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816490000,"dur":100},{"pid":1,"tid":15,"id":272,"name":"lib task manager create merge proguard file task","args":{"span_id":"272","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816490000,"dur":100},{"pid":1,"tid":15,"id":273,"name":"lib task manager create post compilation task","args":{"span_id":"273","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816490000,"dur":2000},{"pid":1,"tid":15,"id":274,"name":"lib task manager create lint task","args":{"span_id":"274","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816492000,"dur":1000},{"pid":1,"tid":15,"id":258,"name":"variant manager create tasks for variant","args":{"span_id":"258","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546433816487000,"dur":6000},{"pid":1,"tid":15,"id":275,"name":"variant manager create tasks for variant","args":{"span_id":"275","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816493000,"dur":2000},{"pid":1,"tid":15,"id":276,"name":"variant manager create tasks for variant","args":{"span_id":"276","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816495000,"dur":4000},{"pid":1,"tid":15,"id":237,"name":"variant manager create android tasks","args":{"span_id":"237","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816476000,"dur":24000},{"pid":1,"tid":15,"id":277,"name":"variant manager external native config values","args":{"span_id":"277","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816500000,"dur":100},{"pid":1,"tid":15,"id":236,"name":"base plugin create android tasks","args":{"span_id":"236","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433816475000,"dur":25000},{"pid":1,"tid":0,"id":278,"name":"task: unknown task type","args":{"span_id":"278","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433816547000,"dur":100},{"pid":1,"tid":0,"id":279,"name":"task: unknown task type","args":{"span_id":"279","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433816547000,"dur":100},{"pid":1,"tid":0,"id":280,"name":"task: unknown task type","args":{"span_id":"280","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433816548000,"dur":100},{"pid":1,"tid":0,"id":281,"name":"task: check manifest","args":{"span_id":"281","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433816549000,"dur":100},{"pid":1,"tid":0,"id":282,"name":"task: process manifest","args":{"span_id":"282","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 52\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433816550000,"dur":1000},{"pid":1,"tid":0,"id":283,"name":"task: unknown task type","args":{"span_id":"283","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433816551000,"dur":100},{"pid":1,"tid":0,"id":284,"name":"task: unknown task type","args":{"span_id":"284","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433816552000,"dur":100},{"pid":1,"tid":0,"id":285,"name":"task: check manifest","args":{"span_id":"285","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433816552000,"dur":1000},{"pid":1,"tid":0,"id":286,"name":"task: process manifest","args":{"span_id":"286","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 52\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433816553000,"dur":1000},{"pid":1,"tid":0,"id":287,"name":"task: app pre build","args":{"span_id":"287","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 92\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433816555000,"dur":218000},{"pid":1,"tid":0,"id":288,"name":"task: aidl compile","args":{"span_id":"288","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433816777000,"dur":59000},{"pid":1,"tid":0,"id":289,"name":"task: aidl compile","args":{"span_id":"289","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433816837000,"dur":17000},{"pid":1,"tid":0,"id":290,"name":"task: aidl compile","args":{"span_id":"290","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433816855000,"dur":23000},{"pid":1,"tid":0,"id":291,"name":"task: unknown task type","args":{"span_id":"291","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433816879000,"dur":100},{"pid":1,"tid":0,"id":292,"name":"task: unknown task type","args":{"span_id":"292","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433816880000,"dur":100},{"pid":1,"tid":0,"id":293,"name":"task: renderscript compile","args":{"span_id":"293","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433816883000,"dur":22000},{"pid":1,"tid":0,"id":294,"name":"task: check manifest","args":{"span_id":"294","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433816905000,"dur":4000},{"pid":1,"tid":0,"id":295,"name":"task: generate build config","args":{"span_id":"295","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433816910000,"dur":3000},{"pid":1,"tid":0,"id":296,"name":"task: prepare lint jar","args":{"span_id":"296","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 119\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433816914000,"dur":1000},{"pid":1,"tid":0,"id":297,"name":"task: generate res values","args":{"span_id":"297","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433816915000,"dur":3000},{"pid":1,"tid":0,"id":298,"name":"task: unknown task type","args":{"span_id":"298","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433816920000,"dur":100},{"pid":1,"tid":0,"id":299,"name":"task: renderscript compile","args":{"span_id":"299","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433816921000,"dur":6000},{"pid":1,"tid":0,"id":300,"name":"task: generate res values","args":{"span_id":"300","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433816928000,"dur":3000},{"pid":1,"tid":0,"id":301,"name":"task: unknown task type","args":{"span_id":"301","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433816932000,"dur":100},{"pid":1,"tid":0,"id":302,"name":"task: merge resources","args":{"span_id":"302","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433816933000,"dur":13000},{"pid":1,"tid":0,"id":303,"name":"task: renderscript compile","args":{"span_id":"303","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433816947000,"dur":3000},{"pid":1,"tid":0,"id":304,"name":"task: generate res values","args":{"span_id":"304","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433816950000,"dur":1000},{"pid":1,"tid":0,"id":305,"name":"task: unknown task type","args":{"span_id":"305","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433816951000,"dur":100},{"pid":1,"tid":0,"id":306,"name":"task: merge resources","args":{"span_id":"306","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433816953000,"dur":1000},{"pid":1,"tid":0,"id":307,"name":"task: merge resources","args":{"span_id":"307","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433816955000,"dur":1513000},{"pid":1,"tid":0,"id":308,"name":"task: compatible screens manifest","args":{"span_id":"308","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 9\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433818476000,"dur":5000},{"pid":1,"tid":0,"id":309,"name":"task: merge manifests","args":{"span_id":"309","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 39\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433818482000,"dur":94000},{"pid":1,"tid":0,"id":310,"name":"task: splits discovery","args":{"span_id":"310","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 87\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433818577000,"dur":6000},{"pid":1,"tid":0,"id":311,"name":"task: platform attr extractor","args":{"span_id":"311","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 109\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433818584000,"dur":100},{"pid":1,"tid":0,"id":312,"name":"task: platform attr extractor","args":{"span_id":"312","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 109\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433818585000,"dur":1000},{"pid":1,"tid":0,"id":313,"name":"task: process android resources","args":{"span_id":"313","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433818587000,"dur":56000},{"pid":1,"tid":0,"id":314,"name":"task: process android resources","args":{"span_id":"314","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433818644000,"dur":300000},{"pid":1,"tid":0,"id":315,"name":"task: process android resources","args":{"span_id":"315","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433818945000,"dur":953000},{"pid":1,"tid":0,"id":316,"name":"task: unknown task type","args":{"span_id":"316","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433819898000,"dur":100},{"pid":1,"tid":0,"id":317,"name":"task: generate build config","args":{"span_id":"317","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433819899000,"dur":1000},{"pid":1,"tid":0,"id":318,"name":"task: prepare lint jar","args":{"span_id":"318","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 119\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433819900000,"dur":1000},{"pid":1,"tid":0,"id":319,"name":"task: unknown task type","args":{"span_id":"319","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433819902000,"dur":100},{"pid":1,"tid":0,"id":320,"name":"task: unknown task type","args":{"span_id":"320","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433819902000,"dur":8000},{"pid":1,"tid":0,"id":321,"name":"task: unknown task type","args":{"span_id":"321","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433819913000,"dur":6000},{"pid":1,"tid":0,"id":322,"name":"task: generate build config","args":{"span_id":"322","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433819919000,"dur":1000},{"pid":1,"tid":0,"id":323,"name":"task: prepare lint jar","args":{"span_id":"323","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 119\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433819921000,"dur":1000},{"pid":1,"tid":0,"id":324,"name":"task: unknown task type","args":{"span_id":"324","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433819922000,"dur":100},{"pid":1,"tid":0,"id":325,"name":"task: java pre compile","args":{"span_id":"325","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 76\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433819922000,"dur":3000},{"pid":1,"tid":0,"id":326,"name":"task: android java compile","args":{"span_id":"326","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 3\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433819926000,"dur":11000},{"pid":1,"tid":0,"id":327,"name":"task: unknown task type","args":{"span_id":"327","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433819938000,"dur":100},{"pid":1,"tid":0,"id":328,"name":"task: transform","args":{"span_id":"328","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433819938000,"dur":1000},{"pid":1,"tid":0,"id":329,"name":"task: java pre compile","args":{"span_id":"329","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 76\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433819939000,"dur":25000},{"pid":1,"tid":0,"id":330,"name":"task: android java compile","args":{"span_id":"330","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 3\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433819971000,"dur":32000},{"pid":1,"tid":0,"id":331,"name":"task: unknown task type","args":{"span_id":"331","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433820004000,"dur":100},{"pid":1,"tid":0,"id":332,"name":"task: transform","args":{"span_id":"332","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433820005000,"dur":1000},{"pid":1,"tid":0,"id":333,"name":"task: java pre compile","args":{"span_id":"333","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 76\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433820007000,"dur":91000},{"pid":1,"tid":0,"id":334,"name":"task: android java compile","args":{"span_id":"334","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 3\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433820098000,"dur":2352000},{"pid":1,"tid":0,"id":335,"name":"task: ndk compile","args":{"span_id":"335","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 43\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433822452000,"dur":1000},{"pid":1,"tid":0,"id":336,"name":"task: unknown task type","args":{"span_id":"336","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433822454000,"dur":100},{"pid":1,"tid":0,"id":337,"name":"task: merge source set folders","args":{"span_id":"337","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433822455000,"dur":4000},{"pid":1,"tid":0,"id":338,"name":"task: shader compile","args":{"span_id":"338","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433822460000,"dur":3000},{"pid":1,"tid":0,"id":339,"name":"task: unknown task type","args":{"span_id":"339","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433822463000,"dur":100},{"pid":1,"tid":0,"id":340,"name":"task: merge source set folders","args":{"span_id":"340","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433822464000,"dur":1000},{"pid":1,"tid":0,"id":341,"name":"task: shader compile","args":{"span_id":"341","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433822466000,"dur":1000},{"pid":1,"tid":0,"id":342,"name":"task: unknown task type","args":{"span_id":"342","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433822469000,"dur":100},{"pid":1,"tid":0,"id":343,"name":"task: merge source set folders","args":{"span_id":"343","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433822470000,"dur":1000},{"pid":1,"tid":0,"id":344,"name":"task: merge source set folders","args":{"span_id":"344","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433822472000,"dur":1000},{"pid":1,"tid":0,"id":345,"name":"task: shader compile","args":{"span_id":"345","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433822473000,"dur":1000},{"pid":1,"tid":0,"id":346,"name":"task: unknown task type","args":{"span_id":"346","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433822474000,"dur":100},{"pid":1,"tid":0,"id":347,"name":"task: merge source set folders","args":{"span_id":"347","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433822475000,"dur":1000},{"pid":1,"tid":0,"id":348,"name":"task: merge source set folders","args":{"span_id":"348","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433822479000,"dur":91000},{"pid":1,"tid":19,"id":350,"name":"transform prep: dex archive builder","args":{"span_id":"350","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 29\nis_incremental: false\n"},"ph":"X","ts":1546433822621000,"dur":17000},{"pid":1,"tid":19,"id":351,"name":"transform: dex archive builder","args":{"span_id":"351","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 29\nis_incremental: false\n"},"ph":"X","ts":1546433822638000,"dur":3373000},{"pid":1,"tid":0,"id":349,"name":"task: transform","args":{"span_id":"349","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433822571000,"dur":3550000},{"pid":1,"tid":19,"id":353,"name":"transform prep: external libs merger","args":{"span_id":"353","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 34\nis_incremental: false\n"},"ph":"X","ts":1546433826137000,"dur":3000},{"pid":1,"tid":19,"id":354,"name":"transform: external libs merger","args":{"span_id":"354","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 34\nis_incremental: false\n"},"ph":"X","ts":1546433826140000,"dur":2251000},{"pid":1,"tid":0,"id":352,"name":"task: transform","args":{"span_id":"352","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433826122000,"dur":2305000},{"pid":1,"tid":19,"id":356,"name":"transform prep: dex merger","args":{"span_id":"356","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 30\nis_incremental: false\n"},"ph":"X","ts":1546433828439000,"dur":2000},{"pid":1,"tid":19,"id":357,"name":"transform: dex merger","args":{"span_id":"357","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 30\nis_incremental: false\n"},"ph":"X","ts":1546433828441000,"dur":913000},{"pid":1,"tid":0,"id":355,"name":"task: transform","args":{"span_id":"355","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433828428000,"dur":968000},{"pid":1,"tid":0,"id":358,"name":"task: merge source set folders","args":{"span_id":"358","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433829397000,"dur":6000},{"pid":1,"tid":0,"id":359,"name":"task: ndk compile","args":{"span_id":"359","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 43\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433829404000,"dur":100},{"pid":1,"tid":0,"id":360,"name":"task: merge source set folders","args":{"span_id":"360","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433829405000,"dur":1000},{"pid":1,"tid":0,"id":361,"name":"task: transform","args":{"span_id":"361","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433829407000,"dur":2000},{"pid":1,"tid":0,"id":362,"name":"task: transform","args":{"span_id":"362","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433829409000,"dur":2000},{"pid":1,"tid":0,"id":363,"name":"task: ndk compile","args":{"span_id":"363","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 43\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433829412000,"dur":1000},{"pid":1,"tid":0,"id":364,"name":"task: merge source set folders","args":{"span_id":"364","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433829413000,"dur":2000},{"pid":1,"tid":0,"id":365,"name":"task: transform","args":{"span_id":"365","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433829415000,"dur":2000},{"pid":1,"tid":0,"id":366,"name":"task: transform","args":{"span_id":"366","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433829418000,"dur":100},{"pid":1,"tid":19,"id":368,"name":"transform prep: merge java resources","args":{"span_id":"368","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 13\nis_incremental: false\n"},"ph":"X","ts":1546433829445000,"dur":15000},{"pid":1,"tid":19,"id":369,"name":"transform: merge java resources","args":{"span_id":"369","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 13\nis_incremental: false\n"},"ph":"X","ts":1546433829460000,"dur":421000},{"pid":1,"tid":0,"id":367,"name":"task: transform","args":{"span_id":"367","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433829419000,"dur":513000},{"pid":1,"tid":0,"id":370,"name":"task: unknown task type","args":{"span_id":"370","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433829933000,"dur":1000},{"pid":1,"tid":19,"id":372,"name":"transform prep: merge java resources","args":{"span_id":"372","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 13\nis_incremental: false\n"},"ph":"X","ts":1546433829964000,"dur":1000},{"pid":1,"tid":19,"id":373,"name":"transform: merge java resources","args":{"span_id":"373","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 13\nis_incremental: false\n"},"ph":"X","ts":1546433829965000,"dur":566000},{"pid":1,"tid":0,"id":371,"name":"task: transform","args":{"span_id":"371","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433829935000,"dur":639000},{"pid":1,"tid":0,"id":374,"name":"task: validate signing","args":{"span_id":"374","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 67\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433830575000,"dur":1000},{"pid":1,"tid":0,"id":375,"name":"task: package application","args":{"span_id":"375","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 45\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433830576000,"dur":1006000},{"pid":1,"tid":0,"id":376,"name":"task: unknown task type","args":{"span_id":"376","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433831583000,"dur":100},{"pid":1,"tid":0,"id":377,"name":"task: extract proguard files","args":{"span_id":"377","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 20\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433831584000,"dur":4000},{"pid":1,"tid":0,"id":378,"name":"task: unknown task type","args":{"span_id":"378","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433831589000,"dur":100},{"pid":1,"tid":0,"id":379,"name":"task: check manifest","args":{"span_id":"379","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433831590000,"dur":1000},{"pid":1,"tid":0,"id":380,"name":"task: process manifest","args":{"span_id":"380","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 52\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433831592000,"dur":19000},{"pid":1,"tid":0,"id":381,"name":"task: unknown task type","args":{"span_id":"381","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433831611000,"dur":1000},{"pid":1,"tid":0,"id":382,"name":"task: check manifest","args":{"span_id":"382","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433831612000,"dur":2000},{"pid":1,"tid":0,"id":383,"name":"task: process manifest","args":{"span_id":"383","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 52\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433831615000,"dur":13000},{"pid":1,"tid":0,"id":384,"name":"task: app pre build","args":{"span_id":"384","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 92\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433831629000,"dur":34000},{"pid":1,"tid":0,"id":385,"name":"task: aidl compile","args":{"span_id":"385","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433831664000,"dur":11000},{"pid":1,"tid":0,"id":386,"name":"task: aidl compile","args":{"span_id":"386","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433831676000,"dur":17000},{"pid":1,"tid":0,"id":387,"name":"task: aidl compile","args":{"span_id":"387","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433831695000,"dur":16000},{"pid":1,"tid":0,"id":388,"name":"task: unknown task type","args":{"span_id":"388","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433831712000,"dur":100},{"pid":1,"tid":0,"id":389,"name":"task: unknown task type","args":{"span_id":"389","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433831713000,"dur":100},{"pid":1,"tid":0,"id":390,"name":"task: renderscript compile","args":{"span_id":"390","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433831715000,"dur":14000},{"pid":1,"tid":0,"id":391,"name":"task: check manifest","args":{"span_id":"391","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433831730000,"dur":3000},{"pid":1,"tid":0,"id":392,"name":"task: generate build config","args":{"span_id":"392","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433831733000,"dur":4000},{"pid":1,"tid":0,"id":393,"name":"task: generate res values","args":{"span_id":"393","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433831737000,"dur":2000},{"pid":1,"tid":0,"id":394,"name":"task: unknown task type","args":{"span_id":"394","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433831740000,"dur":100},{"pid":1,"tid":0,"id":395,"name":"task: renderscript compile","args":{"span_id":"395","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433831741000,"dur":129000},{"pid":1,"tid":0,"id":396,"name":"task: generate res values","args":{"span_id":"396","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433831872000,"dur":2000},{"pid":1,"tid":0,"id":397,"name":"task: unknown task type","args":{"span_id":"397","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433831875000,"dur":1000},{"pid":1,"tid":0,"id":398,"name":"task: merge resources","args":{"span_id":"398","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433831877000,"dur":208000},{"pid":1,"tid":0,"id":399,"name":"task: renderscript compile","args":{"span_id":"399","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433832086000,"dur":52000},{"pid":1,"tid":0,"id":400,"name":"task: generate res values","args":{"span_id":"400","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433832138000,"dur":2000},{"pid":1,"tid":0,"id":401,"name":"task: unknown task type","args":{"span_id":"401","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433832140000,"dur":100},{"pid":1,"tid":0,"id":402,"name":"task: merge resources","args":{"span_id":"402","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433832141000,"dur":7000},{"pid":1,"tid":0,"id":403,"name":"task: merge resources","args":{"span_id":"403","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433832149000,"dur":4218000},{"pid":1,"tid":0,"id":404,"name":"task: compatible screens manifest","args":{"span_id":"404","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 9\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433836367000,"dur":3000},{"pid":1,"tid":0,"id":405,"name":"task: merge manifests","args":{"span_id":"405","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 39\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433836371000,"dur":332000},{"pid":1,"tid":0,"id":406,"name":"task: splits discovery","args":{"span_id":"406","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 87\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433836704000,"dur":2000},{"pid":1,"tid":0,"id":407,"name":"task: process android resources","args":{"span_id":"407","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433836707000,"dur":96000},{"pid":1,"tid":0,"id":408,"name":"task: process android resources","args":{"span_id":"408","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433836804000,"dur":642000},{"pid":1,"tid":0,"id":409,"name":"task: process android resources","args":{"span_id":"409","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433837448000,"dur":2313000},{"pid":1,"tid":0,"id":410,"name":"task: unknown task type","args":{"span_id":"410","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433839762000,"dur":100},{"pid":1,"tid":0,"id":411,"name":"task: generate build config","args":{"span_id":"411","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433839762000,"dur":4000},{"pid":1,"tid":0,"id":412,"name":"task: unknown task type","args":{"span_id":"412","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433839766000,"dur":100},{"pid":1,"tid":0,"id":413,"name":"task: generate build config","args":{"span_id":"413","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433839767000,"dur":4000},{"pid":1,"tid":0,"id":414,"name":"task: unknown task type","args":{"span_id":"414","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433839771000,"dur":100},{"pid":1,"tid":0,"id":415,"name":"task: java pre compile","args":{"span_id":"415","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 76\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433839772000,"dur":20000},{"pid":1,"tid":0,"id":416,"name":"task: android java compile","args":{"span_id":"416","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 3\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433839793000,"dur":743000},{"pid":1,"tid":0,"id":417,"name":"task: unknown task type","args":{"span_id":"417","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433840537000,"dur":1000},{"pid":1,"tid":20,"id":419,"name":"transform prep: unknown transform type","args":{"span_id":"419","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 0\nis_incremental: false\n"},"ph":"X","ts":1546433840540000,"dur":100},{"pid":1,"tid":20,"id":420,"name":"transform: unknown transform type","args":{"span_id":"420","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 0\nis_incremental: false\n"},"ph":"X","ts":1546433840540000,"dur":11000},{"pid":1,"tid":0,"id":418,"name":"task: transform","args":{"span_id":"418","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433840538000,"dur":15000},{"pid":1,"tid":0,"id":421,"name":"task: java pre compile","args":{"span_id":"421","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 76\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433840553000,"dur":64000},{"pid":1,"tid":0,"id":422,"name":"task: android java compile","args":{"span_id":"422","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 3\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433840619000,"dur":3632000},{"pid":1,"tid":0,"id":423,"name":"task: unknown task type","args":{"span_id":"423","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433844252000,"dur":100},{"pid":1,"tid":20,"id":425,"name":"transform prep: unknown transform type","args":{"span_id":"425","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 0\nis_incremental: false\n"},"ph":"X","ts":1546433844255000,"dur":100},{"pid":1,"tid":20,"id":426,"name":"transform: unknown transform type","args":{"span_id":"426","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 0\nis_incremental: false\n"},"ph":"X","ts":1546433844255000,"dur":47000},{"pid":1,"tid":0,"id":424,"name":"task: transform","args":{"span_id":"424","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433844253000,"dur":51000},{"pid":1,"tid":0,"id":427,"name":"task: java pre compile","args":{"span_id":"427","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 76\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433844305000,"dur":50000},{"pid":1,"tid":0,"id":428,"name":"task: android java compile","args":{"span_id":"428","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 3\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433844356000,"dur":2154000},{"pid":1,"tid":0,"id":429,"name":"task: ndk compile","args":{"span_id":"429","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 43\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433846512000,"dur":1000},{"pid":1,"tid":0,"id":430,"name":"task: unknown task type","args":{"span_id":"430","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433846513000,"dur":100},{"pid":1,"tid":0,"id":431,"name":"task: lint per variant","args":{"span_id":"431","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 118\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433846514000,"dur":9080000},{"pid":1,"tid":0,"id":432,"name":"task: merge source set folders","args":{"span_id":"432","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433855595000,"dur":6000},{"pid":1,"tid":0,"id":433,"name":"task: shader compile","args":{"span_id":"433","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433855606000,"dur":4000},{"pid":1,"tid":0,"id":434,"name":"task: unknown task type","args":{"span_id":"434","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433855610000,"dur":1000},{"pid":1,"tid":0,"id":435,"name":"task: merge source set folders","args":{"span_id":"435","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433855611000,"dur":4000},{"pid":1,"tid":0,"id":436,"name":"task: shader compile","args":{"span_id":"436","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433855616000,"dur":2000},{"pid":1,"tid":0,"id":437,"name":"task: unknown task type","args":{"span_id":"437","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433855619000,"dur":100},{"pid":1,"tid":0,"id":438,"name":"task: merge source set folders","args":{"span_id":"438","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433855619000,"dur":19000},{"pid":1,"tid":0,"id":439,"name":"task: merge source set folders","args":{"span_id":"439","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433855639000,"dur":6000},{"pid":1,"tid":0,"id":440,"name":"task: shader compile","args":{"span_id":"440","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433855645000,"dur":3000},{"pid":1,"tid":0,"id":441,"name":"task: unknown task type","args":{"span_id":"441","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433855649000,"dur":100},{"pid":1,"tid":0,"id":442,"name":"task: merge source set folders","args":{"span_id":"442","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433855650000,"dur":4000},{"pid":1,"tid":0,"id":443,"name":"task: merge source set folders","args":{"span_id":"443","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433855655000,"dur":65000},{"pid":1,"tid":0,"id":444,"name":"task: unknown task type","args":{"span_id":"444","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433855721000,"dur":100},{"pid":1,"tid":21,"id":446,"name":"transform prep: merge java resources","args":{"span_id":"446","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 13\nis_incremental: false\n"},"ph":"X","ts":1546433855751000,"dur":9000},{"pid":1,"tid":21,"id":447,"name":"transform: merge java resources","args":{"span_id":"447","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 13\nis_incremental: false\n"},"ph":"X","ts":1546433855761000,"dur":675000},{"pid":1,"tid":0,"id":445,"name":"task: transform","args":{"span_id":"445","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433855722000,"dur":770000},{"pid":1,"tid":0,"id":448,"name":"task: merge file","args":{"span_id":"448","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 38\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433856493000,"dur":1000},{"pid":1,"tid":0,"id":449,"name":"task: merge file","args":{"span_id":"449","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 38\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546433856494000,"dur":1000},{"pid":1,"tid":15,"id":451,"name":"transform prep: pro guard","args":{"span_id":"451","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 17\nis_incremental: false\n"},"ph":"X","ts":1546433856549000,"dur":82000},{"pid":1,"tid":15,"id":452,"name":"transform: pro guard","args":{"span_id":"452","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 17\nis_incremental: false\n"},"ph":"X","ts":1546433856631000,"dur":18841000},{"pid":1,"tid":0,"id":450,"name":"task: transform","args":{"span_id":"450","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433856496000,"dur":19442000},{"pid":1,"tid":15,"id":454,"name":"transform prep: dex","args":{"span_id":"454","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 1\nis_incremental: false\n"},"ph":"X","ts":1546433875945000,"dur":1000},{"pid":1,"tid":15,"id":455,"name":"transform: dex","args":{"span_id":"455","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 1\nis_incremental: false\n"},"ph":"X","ts":1546433875946000,"dur":14326000},{"pid":1,"tid":0,"id":453,"name":"task: transform","args":{"span_id":"453","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433875940000,"dur":14354000},{"pid":1,"tid":15,"id":457,"name":"transform prep: shrink resources","args":{"span_id":"457","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 18\nis_incremental: false\n"},"ph":"X","ts":1546433890413000,"dur":100},{"pid":1,"tid":15,"id":458,"name":"transform: shrink resources","args":{"span_id":"458","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 18\nis_incremental: false\n"},"ph":"X","ts":1546433890413000,"dur":2483000},{"pid":1,"tid":0,"id":456,"name":"task: transform","args":{"span_id":"456","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433890295000,"dur":2608000},{"pid":1,"tid":0,"id":459,"name":"task: merge source set folders","args":{"span_id":"459","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433892908000,"dur":6000},{"pid":1,"tid":0,"id":460,"name":"task: ndk compile","args":{"span_id":"460","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 43\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433892915000,"dur":1000},{"pid":1,"tid":0,"id":461,"name":"task: merge source set folders","args":{"span_id":"461","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433892917000,"dur":38000},{"pid":1,"tid":19,"id":463,"name":"transform prep: merge java resources","args":{"span_id":"463","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 13\nis_incremental: false\n"},"ph":"X","ts":1546433892961000,"dur":2000},{"pid":1,"tid":19,"id":464,"name":"transform: merge java resources","args":{"span_id":"464","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 13\nis_incremental: false\n"},"ph":"X","ts":1546433892963000,"dur":16000},{"pid":1,"tid":0,"id":462,"name":"task: transform","args":{"span_id":"462","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433892956000,"dur":34000},{"pid":1,"tid":19,"id":466,"name":"transform prep: library jni libs","args":{"span_id":"466","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 12\nis_incremental: false\n"},"ph":"X","ts":1546433892994000,"dur":100},{"pid":1,"tid":19,"id":467,"name":"transform: library jni libs","args":{"span_id":"467","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 12\nis_incremental: false\n"},"ph":"X","ts":1546433892994000,"dur":14000},{"pid":1,"tid":0,"id":465,"name":"task: transform","args":{"span_id":"465","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433892991000,"dur":29000},{"pid":1,"tid":0,"id":468,"name":"task: ndk compile","args":{"span_id":"468","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 43\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433893023000,"dur":1000},{"pid":1,"tid":0,"id":469,"name":"task: merge source set folders","args":{"span_id":"469","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433893024000,"dur":4000},{"pid":1,"tid":20,"id":471,"name":"transform prep: merge java resources","args":{"span_id":"471","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 13\nis_incremental: false\n"},"ph":"X","ts":1546433893031000,"dur":1000},{"pid":1,"tid":20,"id":472,"name":"transform: merge java resources","args":{"span_id":"472","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 13\nis_incremental: false\n"},"ph":"X","ts":1546433893032000,"dur":2000},{"pid":1,"tid":0,"id":470,"name":"task: transform","args":{"span_id":"470","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433893029000,"dur":11000},{"pid":1,"tid":20,"id":474,"name":"transform prep: library jni libs","args":{"span_id":"474","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 12\nis_incremental: false\n"},"ph":"X","ts":1546433893043000,"dur":1000},{"pid":1,"tid":20,"id":475,"name":"transform: library jni libs","args":{"span_id":"475","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 12\nis_incremental: false\n"},"ph":"X","ts":1546433893044000,"dur":100},{"pid":1,"tid":0,"id":473,"name":"task: transform","args":{"span_id":"473","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433893041000,"dur":3000},{"pid":1,"tid":20,"id":477,"name":"transform prep: merge java resources","args":{"span_id":"477","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 13\nis_incremental: false\n"},"ph":"X","ts":1546433893071000,"dur":7000},{"pid":1,"tid":20,"id":478,"name":"transform: merge java resources","args":{"span_id":"478","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 13\nis_incremental: false\n"},"ph":"X","ts":1546433893078000,"dur":598000},{"pid":1,"tid":0,"id":476,"name":"task: transform","args":{"span_id":"476","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433893045000,"dur":701000},{"pid":1,"tid":0,"id":479,"name":"task: validate signing","args":{"span_id":"479","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 67\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433893747000,"dur":100},{"pid":1,"tid":0,"id":480,"name":"task: package application","args":{"span_id":"480","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 45\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433893748000,"dur":2694000},{"pid":1,"tid":0,"id":481,"name":"task: unknown task type","args":{"span_id":"481","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433896443000,"dur":100},{"pid":1,"tid":0,"id":482,"name":"task: unknown task type","args":{"span_id":"482","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546433896446000,"dur":100},{"pid":1,"tid":15,"id":483,"name":"base plugin build finished","args":{"span_id":"483","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 106291\n apk_size: 6520275\n resources_ap_size: 1358683\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433896447000,"dur":8000},{"pid":1,"tid":15,"id":484,"name":"base plugin build finished","args":{"span_id":"484","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433896455000,"dur":100},{"pid":1,"tid":15,"id":485,"name":"base plugin build finished","args":{"span_id":"485","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546433896455000,"dur":100}] \ No newline at end of file diff --git a/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-58-16-464.rawproto b/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-58-16-464.rawproto deleted file mode 100644 index 29faf2b..0000000 Binary files a/AndroidLearnProject/build/android-profile/profile-2019-01-02-20-58-16-464.rawproto and /dev/null differ diff --git a/AndroidLearnProject/build/android-profile/profile-2019-01-03-10-56-50-111.json b/AndroidLearnProject/build/android-profile/profile-2019-01-03-10-56-50-111.json deleted file mode 100644 index 0b39a8b..0000000 --- a/AndroidLearnProject/build/android-profile/profile-2019-01-03-10-56-50-111.json +++ /dev/null @@ -1 +0,0 @@ -[{"pid":0,"ph":"i","name":"Memory sample","ts":1546484182834000,"args":{"JVM stats":"heap_memory_usage: 112223488\nnon_heap_memory_usage: 48880000\nloaded_class_count: 7349\nthread_count: 21\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 4\n gc_time: 77\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 1\n gc_time: 60\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484190072000,"args":{"JVM stats":"heap_memory_usage: 139804680\nnon_heap_memory_usage: 81192576\nloaded_class_count: 10905\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 3\n gc_time: 76\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 1\n gc_time: 126\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484190157000,"args":{"JVM stats":"heap_memory_usage: 142061600\nnon_heap_memory_usage: 81306616\nloaded_class_count: 11035\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484190173000,"args":{"JVM stats":"heap_memory_usage: 142061600\nnon_heap_memory_usage: 81369504\nloaded_class_count: 11041\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484190176000,"args":{"JVM stats":"heap_memory_usage: 142061600\nnon_heap_memory_usage: 81373840\nloaded_class_count: 11041\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484190186000,"args":{"JVM stats":"heap_memory_usage: 142061600\nnon_heap_memory_usage: 81417888\nloaded_class_count: 11041\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484190193000,"args":{"JVM stats":"heap_memory_usage: 142625792\nnon_heap_memory_usage: 81454352\nloaded_class_count: 11041\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484190194000,"args":{"JVM stats":"heap_memory_usage: 142625792\nnon_heap_memory_usage: 81454352\nloaded_class_count: 11041\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484190225000,"args":{"JVM stats":"heap_memory_usage: 143223464\nnon_heap_memory_usage: 81522936\nloaded_class_count: 11041\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484190239000,"args":{"JVM stats":"heap_memory_usage: 143223464\nnon_heap_memory_usage: 81595048\nloaded_class_count: 11047\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484190246000,"args":{"JVM stats":"heap_memory_usage: 143223464\nnon_heap_memory_usage: 81628600\nloaded_class_count: 11047\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484190247000,"args":{"JVM stats":"heap_memory_usage: 143223464\nnon_heap_memory_usage: 81638224\nloaded_class_count: 11047\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484190259000,"args":{"JVM stats":"heap_memory_usage: 143223464\nnon_heap_memory_usage: 81467464\nloaded_class_count: 11047\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484190899000,"args":{"JVM stats":"heap_memory_usage: 175237224\nnon_heap_memory_usage: 83005752\nloaded_class_count: 11157\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484190903000,"args":{"JVM stats":"heap_memory_usage: 175237224\nnon_heap_memory_usage: 83009352\nloaded_class_count: 11157\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484190907000,"args":{"JVM stats":"heap_memory_usage: 175237224\nnon_heap_memory_usage: 83010728\nloaded_class_count: 11157\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484190910000,"args":{"JVM stats":"heap_memory_usage: 175237224\nnon_heap_memory_usage: 83010728\nloaded_class_count: 11157\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484190919000,"args":{"JVM stats":"heap_memory_usage: 175237224\nnon_heap_memory_usage: 83018624\nloaded_class_count: 11159\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484190938000,"args":{"JVM stats":"heap_memory_usage: 175801352\nnon_heap_memory_usage: 83039208\nloaded_class_count: 11161\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484190940000,"args":{"JVM stats":"heap_memory_usage: 175801352\nnon_heap_memory_usage: 83042496\nloaded_class_count: 11161\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484190942000,"args":{"JVM stats":"heap_memory_usage: 175801352\nnon_heap_memory_usage: 83050760\nloaded_class_count: 11161\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484190946000,"args":{"JVM stats":"heap_memory_usage: 175801352\nnon_heap_memory_usage: 83068192\nloaded_class_count: 11161\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484190957000,"args":{"JVM stats":"heap_memory_usage: 175950728\nnon_heap_memory_usage: 83089744\nloaded_class_count: 11161\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484191097000,"args":{"JVM stats":"heap_memory_usage: 57776696\nnon_heap_memory_usage: 83356888\nloaded_class_count: 11162\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 56\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484191101000,"args":{"JVM stats":"heap_memory_usage: 57776696\nnon_heap_memory_usage: 83369608\nloaded_class_count: 11162\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484191115000,"args":{"JVM stats":"heap_memory_usage: 57990320\nnon_heap_memory_usage: 83410848\nloaded_class_count: 11168\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484191675000,"args":{"JVM stats":"heap_memory_usage: 77205904\nnon_heap_memory_usage: 85128512\nloaded_class_count: 11373\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484191691000,"args":{"JVM stats":"heap_memory_usage: 77585360\nnon_heap_memory_usage: 85140912\nloaded_class_count: 11374\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484191695000,"args":{"JVM stats":"heap_memory_usage: 77585360\nnon_heap_memory_usage: 85145416\nloaded_class_count: 11375\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484191751000,"args":{"JVM stats":"heap_memory_usage: 78094192\nnon_heap_memory_usage: 85260608\nloaded_class_count: 11375\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484191757000,"args":{"JVM stats":"heap_memory_usage: 78094192\nnon_heap_memory_usage: 85269792\nloaded_class_count: 11375\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484191762000,"args":{"JVM stats":"heap_memory_usage: 78094192\nnon_heap_memory_usage: 85271328\nloaded_class_count: 11375\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484191808000,"args":{"JVM stats":"heap_memory_usage: 80211000\nnon_heap_memory_usage: 85369160\nloaded_class_count: 11375\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484191816000,"args":{"JVM stats":"heap_memory_usage: 80211000\nnon_heap_memory_usage: 85372072\nloaded_class_count: 11375\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484191818000,"args":{"JVM stats":"heap_memory_usage: 80211000\nnon_heap_memory_usage: 85372072\nloaded_class_count: 11375\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484191877000,"args":{"JVM stats":"heap_memory_usage: 82827952\nnon_heap_memory_usage: 85466120\nloaded_class_count: 11376\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484192044000,"args":{"JVM stats":"heap_memory_usage: 92926072\nnon_heap_memory_usage: 85565928\nloaded_class_count: 11376\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484192048000,"args":{"JVM stats":"heap_memory_usage: 93305528\nnon_heap_memory_usage: 85569736\nloaded_class_count: 11376\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484192050000,"args":{"JVM stats":"heap_memory_usage: 93305528\nnon_heap_memory_usage: 85569736\nloaded_class_count: 11376\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484192069000,"args":{"JVM stats":"heap_memory_usage: 93305528\nnon_heap_memory_usage: 85572128\nloaded_class_count: 11376\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484192400000,"args":{"JVM stats":"heap_memory_usage: 111008104\nnon_heap_memory_usage: 85888432\nloaded_class_count: 11376\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484192414000,"args":{"JVM stats":"heap_memory_usage: 111008104\nnon_heap_memory_usage: 85893712\nloaded_class_count: 11376\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484192420000,"args":{"JVM stats":"heap_memory_usage: 111008104\nnon_heap_memory_usage: 85898032\nloaded_class_count: 11376\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484192429000,"args":{"JVM stats":"heap_memory_usage: 111008104\nnon_heap_memory_usage: 85916048\nloaded_class_count: 11376\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484192756000,"args":{"JVM stats":"heap_memory_usage: 123349744\nnon_heap_memory_usage: 86486384\nloaded_class_count: 11450\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484194334000,"args":{"JVM stats":"heap_memory_usage: 88304584\nnon_heap_memory_usage: 91320672\nloaded_class_count: 11649\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 37\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 1\n gc_time: 359\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484195958000,"args":{"JVM stats":"heap_memory_usage: 138033392\nnon_heap_memory_usage: 92179872\nloaded_class_count: 11761\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484195989000,"args":{"JVM stats":"heap_memory_usage: 139107368\nnon_heap_memory_usage: 92303528\nloaded_class_count: 11763\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484196006000,"args":{"JVM stats":"heap_memory_usage: 139576264\nnon_heap_memory_usage: 92353088\nloaded_class_count: 11764\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484196033000,"args":{"JVM stats":"heap_memory_usage: 140496528\nnon_heap_memory_usage: 92404736\nloaded_class_count: 11764\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484196059000,"args":{"JVM stats":"heap_memory_usage: 141047664\nnon_heap_memory_usage: 92417776\nloaded_class_count: 11764\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484196063000,"args":{"JVM stats":"heap_memory_usage: 141047664\nnon_heap_memory_usage: 92428752\nloaded_class_count: 11764\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484196069000,"args":{"JVM stats":"heap_memory_usage: 141047664\nnon_heap_memory_usage: 92434776\nloaded_class_count: 11765\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484196071000,"args":{"JVM stats":"heap_memory_usage: 141047664\nnon_heap_memory_usage: 92437144\nloaded_class_count: 11765\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484196075000,"args":{"JVM stats":"heap_memory_usage: 141334112\nnon_heap_memory_usage: 92443632\nloaded_class_count: 11765\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484196078000,"args":{"JVM stats":"heap_memory_usage: 141334112\nnon_heap_memory_usage: 92443632\nloaded_class_count: 11765\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484196079000,"args":{"JVM stats":"heap_memory_usage: 141334112\nnon_heap_memory_usage: 92456496\nloaded_class_count: 11765\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484196130000,"args":{"JVM stats":"heap_memory_usage: 144522384\nnon_heap_memory_usage: 92620200\nloaded_class_count: 11784\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484196149000,"args":{"JVM stats":"heap_memory_usage: 144808832\nnon_heap_memory_usage: 92686272\nloaded_class_count: 11785\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484196159000,"args":{"JVM stats":"heap_memory_usage: 144808832\nnon_heap_memory_usage: 92693248\nloaded_class_count: 11785\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484196162000,"args":{"JVM stats":"heap_memory_usage: 144808832\nnon_heap_memory_usage: 92693952\nloaded_class_count: 11785\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484196165000,"args":{"JVM stats":"heap_memory_usage: 144808832\nnon_heap_memory_usage: 92693952\nloaded_class_count: 11785\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484196184000,"args":{"JVM stats":"heap_memory_usage: 145186112\nnon_heap_memory_usage: 92723288\nloaded_class_count: 11786\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484196308000,"args":{"JVM stats":"heap_memory_usage: 150032368\nnon_heap_memory_usage: 92850040\nloaded_class_count: 11789\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484196310000,"args":{"JVM stats":"heap_memory_usage: 150032368\nnon_heap_memory_usage: 92856152\nloaded_class_count: 11789\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484196322000,"args":{"JVM stats":"heap_memory_usage: 150351760\nnon_heap_memory_usage: 92896936\nloaded_class_count: 11791\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484196549000,"args":{"JVM stats":"heap_memory_usage: 155945352\nnon_heap_memory_usage: 93122248\nloaded_class_count: 11792\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484203262000,"args":{"JVM stats":"heap_memory_usage: 195932776\nnon_heap_memory_usage: 113534488\nloaded_class_count: 13166\nthread_count: 32\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 2\n gc_time: 193\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484203276000,"args":{"JVM stats":"heap_memory_usage: 198065248\nnon_heap_memory_usage: 113546944\nloaded_class_count: 13166\nthread_count: 32\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484203444000,"args":{"JVM stats":"heap_memory_usage: 204244808\nnon_heap_memory_usage: 114267296\nloaded_class_count: 13227\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484203586000,"args":{"JVM stats":"heap_memory_usage: 209472232\nnon_heap_memory_usage: 114504160\nloaded_class_count: 13241\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484203927000,"args":{"JVM stats":"heap_memory_usage: 227171952\nnon_heap_memory_usage: 115100400\nloaded_class_count: 13272\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484203948000,"args":{"JVM stats":"heap_memory_usage: 228031392\nnon_heap_memory_usage: 115130176\nloaded_class_count: 13276\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484204138000,"args":{"JVM stats":"heap_memory_usage: 237772224\nnon_heap_memory_usage: 115393280\nloaded_class_count: 13292\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484204447000,"args":{"JVM stats":"heap_memory_usage: 252709128\nnon_heap_memory_usage: 114478296\nloaded_class_count: 13355\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484204497000,"args":{"JVM stats":"heap_memory_usage: 255761152\nnon_heap_memory_usage: 114542104\nloaded_class_count: 13355\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484204501000,"args":{"JVM stats":"heap_memory_usage: 255761152\nnon_heap_memory_usage: 114544744\nloaded_class_count: 13356\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484204510000,"args":{"JVM stats":"heap_memory_usage: 255761152\nnon_heap_memory_usage: 114570480\nloaded_class_count: 13356\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484204514000,"args":{"JVM stats":"heap_memory_usage: 255761152\nnon_heap_memory_usage: 114588272\nloaded_class_count: 13356\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484204528000,"args":{"JVM stats":"heap_memory_usage: 256762744\nnon_heap_memory_usage: 114603352\nloaded_class_count: 13358\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484204535000,"args":{"JVM stats":"heap_memory_usage: 256762744\nnon_heap_memory_usage: 114620136\nloaded_class_count: 13358\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484204542000,"args":{"JVM stats":"heap_memory_usage: 256762744\nnon_heap_memory_usage: 114640408\nloaded_class_count: 13360\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484204545000,"args":{"JVM stats":"heap_memory_usage: 256762744\nnon_heap_memory_usage: 114651648\nloaded_class_count: 13360\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484204550000,"args":{"JVM stats":"heap_memory_usage: 257229552\nnon_heap_memory_usage: 114663512\nloaded_class_count: 13360\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484204559000,"args":{"JVM stats":"heap_memory_usage: 257577248\nnon_heap_memory_usage: 114697776\nloaded_class_count: 13362\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484204564000,"args":{"JVM stats":"heap_memory_usage: 257791328\nnon_heap_memory_usage: 114697840\nloaded_class_count: 13362\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484204630000,"args":{"JVM stats":"heap_memory_usage: 262355472\nnon_heap_memory_usage: 114774200\nloaded_class_count: 13362\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484204633000,"args":{"JVM stats":"heap_memory_usage: 262355472\nnon_heap_memory_usage: 114775096\nloaded_class_count: 13362\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484204690000,"args":{"JVM stats":"heap_memory_usage: 266370920\nnon_heap_memory_usage: 114812864\nloaded_class_count: 13362\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484204704000,"args":{"JVM stats":"heap_memory_usage: 266837776\nnon_heap_memory_usage: 114824376\nloaded_class_count: 13362\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484205232000,"args":{"JVM stats":"heap_memory_usage: 290316848\nnon_heap_memory_usage: 115411536\nloaded_class_count: 13421\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484205253000,"args":{"JVM stats":"heap_memory_usage: 291533960\nnon_heap_memory_usage: 115443000\nloaded_class_count: 13425\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484205257000,"args":{"JVM stats":"heap_memory_usage: 291697632\nnon_heap_memory_usage: 115448488\nloaded_class_count: 13425\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484205260000,"args":{"JVM stats":"heap_memory_usage: 291697632\nnon_heap_memory_usage: 115452376\nloaded_class_count: 13426\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484205273000,"args":{"JVM stats":"heap_memory_usage: 292797672\nnon_heap_memory_usage: 115457624\nloaded_class_count: 13426\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484205278000,"args":{"JVM stats":"heap_memory_usage: 292797672\nnon_heap_memory_usage: 115460672\nloaded_class_count: 13426\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484205486000,"args":{"JVM stats":"heap_memory_usage: 306205400\nnon_heap_memory_usage: 115527696\nloaded_class_count: 13430\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484207071000,"args":{"JVM stats":"heap_memory_usage: 164969688\nnon_heap_memory_usage: 117496776\nloaded_class_count: 13837\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 198\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484207147000,"args":{"JVM stats":"heap_memory_usage: 172407880\nnon_heap_memory_usage: 117524264\nloaded_class_count: 13837\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484207465000,"args":{"JVM stats":"heap_memory_usage: 181147384\nnon_heap_memory_usage: 118443432\nloaded_class_count: 13979\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484207475000,"args":{"JVM stats":"heap_memory_usage: 181459312\nnon_heap_memory_usage: 118449592\nloaded_class_count: 13979\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484207507000,"args":{"JVM stats":"heap_memory_usage: 182406768\nnon_heap_memory_usage: 118476808\nloaded_class_count: 13980\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484209216000,"args":{"JVM stats":"heap_memory_usage: 206203568\nnon_heap_memory_usage: 119814424\nloaded_class_count: 14313\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484209430000,"args":{"JVM stats":"heap_memory_usage: 207154704\nnon_heap_memory_usage: 119512904\nloaded_class_count: 14316\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484209464000,"args":{"JVM stats":"heap_memory_usage: 207791032\nnon_heap_memory_usage: 119627688\nloaded_class_count: 14333\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484209465000,"args":{"JVM stats":"heap_memory_usage: 207791032\nnon_heap_memory_usage: 119627688\nloaded_class_count: 14333\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484209466000,"args":{"JVM stats":"heap_memory_usage: 207791032\nnon_heap_memory_usage: 119630440\nloaded_class_count: 14334\nthread_count: 35\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1546484210117000,"args":{"JVM stats":"heap_memory_usage: 220128024\nnon_heap_memory_usage: 121502688\nloaded_class_count: 14633\nthread_count: 28\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":1,"tid":1,"id":2,"name":"base plugin project configure","args":{"span_id":"2","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484182984000,"dur":1001000},{"pid":1,"tid":1,"id":3,"name":"base plugin project base extension creation","args":{"span_id":"3","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484183986000,"dur":538000},{"pid":1,"tid":1,"id":5,"name":"task manager create tasks","args":{"span_id":"5","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484184525000,"dur":104000},{"pid":1,"tid":1,"id":4,"name":"base plugin project tasks creation","args":{"span_id":"4","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484184524000,"dur":108000},{"pid":1,"tid":1,"id":8,"name":"variant manager create variants","args":{"span_id":"8","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484187356000,"dur":258000},{"pid":1,"tid":1,"id":9,"name":"variant manager create tests tasks","args":{"span_id":"9","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484187615000,"dur":48000},{"pid":1,"tid":1,"id":11,"name":"app task manager create merge manifest task","args":{"span_id":"11","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484187736000,"dur":46000},{"pid":1,"tid":1,"id":12,"name":"app task manager create generate res values task","args":{"span_id":"12","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484187783000,"dur":6000},{"pid":1,"tid":1,"id":13,"name":"app task manager create create renderscript task","args":{"span_id":"13","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484187790000,"dur":29000},{"pid":1,"tid":1,"id":14,"name":"app task manager create merge resources task","args":{"span_id":"14","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484187820000,"dur":117000},{"pid":1,"tid":1,"id":15,"name":"app task manager create merge assets task","args":{"span_id":"15","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484187938000,"dur":11000},{"pid":1,"tid":1,"id":16,"name":"app task manager create build config task","args":{"span_id":"16","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484187950000,"dur":17000},{"pid":1,"tid":1,"id":17,"name":"app task manager create process res task","args":{"span_id":"17","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484187967000,"dur":88000},{"pid":1,"tid":1,"id":18,"name":"app task manager create aidl task","args":{"span_id":"18","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484188056000,"dur":11000},{"pid":1,"tid":1,"id":19,"name":"app task manager create shader task","args":{"span_id":"19","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484188068000,"dur":10000},{"pid":1,"tid":1,"id":20,"name":"app task manager create ndk task","args":{"span_id":"20","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484188078000,"dur":13000},{"pid":1,"tid":1,"id":21,"name":"app task manager create external native build task","args":{"span_id":"21","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484188091000,"dur":1000},{"pid":1,"tid":1,"id":22,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"22","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484188093000,"dur":34000},{"pid":1,"tid":1,"id":23,"name":"app task manager create compile task","args":{"span_id":"23","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484188128000,"dur":217000},{"pid":1,"tid":1,"id":24,"name":"app task manager create packaging task","args":{"span_id":"24","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484188346000,"dur":98000},{"pid":1,"tid":1,"id":25,"name":"app task manager create lint task","args":{"span_id":"25","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484188445000,"dur":6000},{"pid":1,"tid":1,"id":10,"name":"variant manager create tasks for variant","args":{"span_id":"10","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484187663000,"dur":788000},{"pid":1,"tid":1,"id":26,"name":"variant manager create tasks for variant","args":{"span_id":"26","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484188451000,"dur":113000},{"pid":1,"tid":1,"id":27,"name":"variant manager create tasks for variant","args":{"span_id":"27","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484188564000,"dur":77000},{"pid":1,"tid":1,"id":7,"name":"variant manager create android tasks","args":{"span_id":"7","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484187348000,"dur":1425000},{"pid":1,"tid":1,"id":28,"name":"variant manager external native config values","args":{"span_id":"28","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484188778000,"dur":1000},{"pid":1,"tid":1,"id":6,"name":"base plugin create android tasks","args":{"span_id":"6","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484184896000,"dur":3883000},{"pid":1,"tid":1,"id":29,"name":"base plugin project configure","args":{"span_id":"29","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484188809000,"dur":14000},{"pid":1,"tid":1,"id":30,"name":"base plugin project base extension creation","args":{"span_id":"30","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484188823000,"dur":23000},{"pid":1,"tid":1,"id":32,"name":"task manager create tasks","args":{"span_id":"32","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484188846000,"dur":9000},{"pid":1,"tid":1,"id":31,"name":"base plugin project tasks creation","args":{"span_id":"31","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484188846000,"dur":9000},{"pid":1,"tid":1,"id":35,"name":"variant manager create variants","args":{"span_id":"35","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484189031000,"dur":15000},{"pid":1,"tid":1,"id":36,"name":"variant manager create tests tasks","args":{"span_id":"36","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484189046000,"dur":3000},{"pid":1,"tid":1,"id":38,"name":"lib task manager create generate res values task","args":{"span_id":"38","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189059000,"dur":1000},{"pid":1,"tid":1,"id":39,"name":"lib task manager create merge manifest task","args":{"span_id":"39","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189061000,"dur":10000},{"pid":1,"tid":1,"id":40,"name":"lib task manager create create renderscript task","args":{"span_id":"40","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189071000,"dur":1000},{"pid":1,"tid":1,"id":41,"name":"lib task manager create merge resources task","args":{"span_id":"41","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189073000,"dur":3000},{"pid":1,"tid":1,"id":42,"name":"lib task manager create merge assets task","args":{"span_id":"42","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189076000,"dur":3000},{"pid":1,"tid":1,"id":43,"name":"lib task manager create build config task","args":{"span_id":"43","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189079000,"dur":1000},{"pid":1,"tid":1,"id":44,"name":"lib task manager create process res task","args":{"span_id":"44","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189081000,"dur":5000},{"pid":1,"tid":1,"id":45,"name":"lib task manager create aidl task","args":{"span_id":"45","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189087000,"dur":100},{"pid":1,"tid":1,"id":46,"name":"lib task manager create shader task","args":{"span_id":"46","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189088000,"dur":1000},{"pid":1,"tid":1,"id":47,"name":"lib task manager create compile task","args":{"span_id":"47","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189089000,"dur":3000},{"pid":1,"tid":1,"id":48,"name":"lib task manager create ndk task","args":{"span_id":"48","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189092000,"dur":1000},{"pid":1,"tid":1,"id":49,"name":"lib task manager create external native build task","args":{"span_id":"49","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189093000,"dur":100},{"pid":1,"tid":1,"id":50,"name":"lib task manager create packaging task","args":{"span_id":"50","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189095000,"dur":3000},{"pid":1,"tid":1,"id":51,"name":"lib task manager create merge proguard file task","args":{"span_id":"51","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189098000,"dur":8000},{"pid":1,"tid":1,"id":52,"name":"lib task manager create post compilation task","args":{"span_id":"52","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189138000,"dur":13000},{"pid":1,"tid":1,"id":53,"name":"lib task manager create lint task","args":{"span_id":"53","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189153000,"dur":1000},{"pid":1,"tid":1,"id":37,"name":"variant manager create tasks for variant","args":{"span_id":"37","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189049000,"dur":106000},{"pid":1,"tid":1,"id":54,"name":"variant manager create tasks for variant","args":{"span_id":"54","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484189155000,"dur":11000},{"pid":1,"tid":1,"id":56,"name":"lib task manager create generate res values task","args":{"span_id":"56","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189169000,"dur":1000},{"pid":1,"tid":1,"id":57,"name":"lib task manager create merge manifest task","args":{"span_id":"57","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189170000,"dur":1000},{"pid":1,"tid":1,"id":58,"name":"lib task manager create create renderscript task","args":{"span_id":"58","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189171000,"dur":100},{"pid":1,"tid":1,"id":59,"name":"lib task manager create merge resources task","args":{"span_id":"59","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189171000,"dur":2000},{"pid":1,"tid":1,"id":60,"name":"lib task manager create merge assets task","args":{"span_id":"60","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189173000,"dur":1000},{"pid":1,"tid":1,"id":61,"name":"lib task manager create build config task","args":{"span_id":"61","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189174000,"dur":100},{"pid":1,"tid":1,"id":62,"name":"lib task manager create process res task","args":{"span_id":"62","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189174000,"dur":14000},{"pid":1,"tid":1,"id":63,"name":"lib task manager create aidl task","args":{"span_id":"63","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189189000,"dur":100},{"pid":1,"tid":1,"id":64,"name":"lib task manager create shader task","args":{"span_id":"64","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189189000,"dur":1000},{"pid":1,"tid":1,"id":65,"name":"lib task manager create compile task","args":{"span_id":"65","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189190000,"dur":4000},{"pid":1,"tid":1,"id":66,"name":"lib task manager create ndk task","args":{"span_id":"66","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189195000,"dur":100},{"pid":1,"tid":1,"id":67,"name":"lib task manager create external native build task","args":{"span_id":"67","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189195000,"dur":100},{"pid":1,"tid":1,"id":68,"name":"lib task manager create packaging task","args":{"span_id":"68","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189196000,"dur":1000},{"pid":1,"tid":1,"id":69,"name":"lib task manager create merge proguard file task","args":{"span_id":"69","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189197000,"dur":1000},{"pid":1,"tid":1,"id":70,"name":"lib task manager create post compilation task","args":{"span_id":"70","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189200000,"dur":7000},{"pid":1,"tid":1,"id":71,"name":"lib task manager create lint task","args":{"span_id":"71","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189215000,"dur":1000},{"pid":1,"tid":1,"id":55,"name":"variant manager create tasks for variant","args":{"span_id":"55","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189166000,"dur":50000},{"pid":1,"tid":1,"id":72,"name":"variant manager create tasks for variant","args":{"span_id":"72","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484189216000,"dur":14000},{"pid":1,"tid":1,"id":73,"name":"variant manager create tasks for variant","args":{"span_id":"73","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484189230000,"dur":26000},{"pid":1,"tid":1,"id":34,"name":"variant manager create android tasks","args":{"span_id":"34","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484189031000,"dur":247000},{"pid":1,"tid":1,"id":74,"name":"variant manager external native config values","args":{"span_id":"74","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484189279000,"dur":100},{"pid":1,"tid":1,"id":33,"name":"base plugin create android tasks","args":{"span_id":"33","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484189027000,"dur":252000},{"pid":1,"tid":1,"id":75,"name":"base plugin project configure","args":{"span_id":"75","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484189435000,"dur":11000},{"pid":1,"tid":1,"id":76,"name":"base plugin project base extension creation","args":{"span_id":"76","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484189446000,"dur":13000},{"pid":1,"tid":1,"id":78,"name":"task manager create tasks","args":{"span_id":"78","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484189459000,"dur":4000},{"pid":1,"tid":1,"id":77,"name":"base plugin project tasks creation","args":{"span_id":"77","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484189459000,"dur":4000},{"pid":1,"tid":1,"id":81,"name":"variant manager create variants","args":{"span_id":"81","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484189497000,"dur":12000},{"pid":1,"tid":1,"id":82,"name":"variant manager create tests tasks","args":{"span_id":"82","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484189509000,"dur":2000},{"pid":1,"tid":1,"id":84,"name":"lib task manager create generate res values task","args":{"span_id":"84","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189514000,"dur":100},{"pid":1,"tid":1,"id":85,"name":"lib task manager create merge manifest task","args":{"span_id":"85","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189514000,"dur":1000},{"pid":1,"tid":1,"id":86,"name":"lib task manager create create renderscript task","args":{"span_id":"86","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189515000,"dur":2000},{"pid":1,"tid":1,"id":87,"name":"lib task manager create merge resources task","args":{"span_id":"87","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189517000,"dur":2000},{"pid":1,"tid":1,"id":88,"name":"lib task manager create merge assets task","args":{"span_id":"88","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189520000,"dur":1000},{"pid":1,"tid":1,"id":89,"name":"lib task manager create build config task","args":{"span_id":"89","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189521000,"dur":1000},{"pid":1,"tid":1,"id":90,"name":"lib task manager create process res task","args":{"span_id":"90","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189522000,"dur":5000},{"pid":1,"tid":1,"id":91,"name":"lib task manager create aidl task","args":{"span_id":"91","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189527000,"dur":100},{"pid":1,"tid":1,"id":92,"name":"lib task manager create shader task","args":{"span_id":"92","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189527000,"dur":1000},{"pid":1,"tid":1,"id":93,"name":"lib task manager create compile task","args":{"span_id":"93","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189528000,"dur":2000},{"pid":1,"tid":1,"id":94,"name":"lib task manager create ndk task","args":{"span_id":"94","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189531000,"dur":1000},{"pid":1,"tid":1,"id":95,"name":"lib task manager create external native build task","args":{"span_id":"95","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189532000,"dur":100},{"pid":1,"tid":1,"id":96,"name":"lib task manager create packaging task","args":{"span_id":"96","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189533000,"dur":2000},{"pid":1,"tid":1,"id":97,"name":"lib task manager create merge proguard file task","args":{"span_id":"97","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189535000,"dur":100},{"pid":1,"tid":1,"id":98,"name":"lib task manager create post compilation task","args":{"span_id":"98","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189537000,"dur":4000},{"pid":1,"tid":1,"id":99,"name":"lib task manager create lint task","args":{"span_id":"99","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189542000,"dur":100},{"pid":1,"tid":1,"id":83,"name":"variant manager create tasks for variant","args":{"span_id":"83","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189511000,"dur":31000},{"pid":1,"tid":1,"id":100,"name":"variant manager create tasks for variant","args":{"span_id":"100","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484189542000,"dur":7000},{"pid":1,"tid":1,"id":102,"name":"lib task manager create generate res values task","args":{"span_id":"102","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189551000,"dur":100},{"pid":1,"tid":1,"id":103,"name":"lib task manager create merge manifest task","args":{"span_id":"103","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189551000,"dur":1000},{"pid":1,"tid":1,"id":104,"name":"lib task manager create create renderscript task","args":{"span_id":"104","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189552000,"dur":100},{"pid":1,"tid":1,"id":105,"name":"lib task manager create merge resources task","args":{"span_id":"105","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189552000,"dur":6000},{"pid":1,"tid":1,"id":106,"name":"lib task manager create merge assets task","args":{"span_id":"106","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189558000,"dur":1000},{"pid":1,"tid":1,"id":107,"name":"lib task manager create build config task","args":{"span_id":"107","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189560000,"dur":100},{"pid":1,"tid":1,"id":108,"name":"lib task manager create process res task","args":{"span_id":"108","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189560000,"dur":3000},{"pid":1,"tid":1,"id":109,"name":"lib task manager create aidl task","args":{"span_id":"109","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189563000,"dur":1000},{"pid":1,"tid":1,"id":110,"name":"lib task manager create shader task","args":{"span_id":"110","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189564000,"dur":100},{"pid":1,"tid":1,"id":111,"name":"lib task manager create compile task","args":{"span_id":"111","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189564000,"dur":1000},{"pid":1,"tid":1,"id":112,"name":"lib task manager create ndk task","args":{"span_id":"112","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189565000,"dur":1000},{"pid":1,"tid":1,"id":113,"name":"lib task manager create external native build task","args":{"span_id":"113","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189566000,"dur":100},{"pid":1,"tid":1,"id":114,"name":"lib task manager create packaging task","args":{"span_id":"114","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189569000,"dur":1000},{"pid":1,"tid":1,"id":115,"name":"lib task manager create merge proguard file task","args":{"span_id":"115","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189570000,"dur":100},{"pid":1,"tid":1,"id":116,"name":"lib task manager create post compilation task","args":{"span_id":"116","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189571000,"dur":4000},{"pid":1,"tid":1,"id":117,"name":"lib task manager create lint task","args":{"span_id":"117","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189576000,"dur":100},{"pid":1,"tid":1,"id":101,"name":"variant manager create tasks for variant","args":{"span_id":"101","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484189549000,"dur":27000},{"pid":1,"tid":1,"id":118,"name":"variant manager create tasks for variant","args":{"span_id":"118","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484189576000,"dur":6000},{"pid":1,"tid":1,"id":119,"name":"variant manager create tasks for variant","args":{"span_id":"119","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484189582000,"dur":16000},{"pid":1,"tid":1,"id":80,"name":"variant manager create android tasks","args":{"span_id":"80","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484189497000,"dur":102000},{"pid":1,"tid":1,"id":120,"name":"variant manager external native config values","args":{"span_id":"120","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484189600000,"dur":100},{"pid":1,"tid":1,"id":79,"name":"base plugin create android tasks","args":{"span_id":"79","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484189495000,"dur":105000},{"pid":1,"tid":0,"id":121,"name":"task: build info loader","args":{"span_id":"121","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 7\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484190006000,"dur":54000},{"pid":1,"tid":0,"id":122,"name":"task: merge source set folders","args":{"span_id":"122","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484190076000,"dur":81000},{"pid":1,"tid":0,"id":123,"name":"task: shader compile","args":{"span_id":"123","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484190162000,"dur":11000},{"pid":1,"tid":0,"id":124,"name":"task: unknown task type","args":{"span_id":"124","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484190175000,"dur":100},{"pid":1,"tid":0,"id":125,"name":"task: merge source set folders","args":{"span_id":"125","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484190177000,"dur":9000},{"pid":1,"tid":0,"id":126,"name":"task: shader compile","args":{"span_id":"126","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484190187000,"dur":6000},{"pid":1,"tid":0,"id":127,"name":"task: unknown task type","args":{"span_id":"127","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484190194000,"dur":100},{"pid":1,"tid":0,"id":128,"name":"task: merge source set folders","args":{"span_id":"128","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484190196000,"dur":29000},{"pid":1,"tid":0,"id":129,"name":"task: merge source set folders","args":{"span_id":"129","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484190226000,"dur":13000},{"pid":1,"tid":0,"id":130,"name":"task: shader compile","args":{"span_id":"130","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484190240000,"dur":5000},{"pid":1,"tid":0,"id":131,"name":"task: unknown task type","args":{"span_id":"131","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484190247000,"dur":100},{"pid":1,"tid":0,"id":132,"name":"task: merge source set folders","args":{"span_id":"132","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484190248000,"dur":11000},{"pid":1,"tid":0,"id":133,"name":"task: merge source set folders","args":{"span_id":"133","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484190260000,"dur":638000},{"pid":1,"tid":0,"id":134,"name":"task: unknown task type","args":{"span_id":"134","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484190902000,"dur":100},{"pid":1,"tid":0,"id":135,"name":"task: unknown task type","args":{"span_id":"135","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484190906000,"dur":1000},{"pid":1,"tid":0,"id":136,"name":"task: unknown task type","args":{"span_id":"136","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484190910000,"dur":100},{"pid":1,"tid":0,"id":137,"name":"task: check manifest","args":{"span_id":"137","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484190913000,"dur":6000},{"pid":1,"tid":0,"id":138,"name":"task: process manifest","args":{"span_id":"138","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 52\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484190923000,"dur":14000},{"pid":1,"tid":0,"id":139,"name":"task: unknown task type","args":{"span_id":"139","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484190940000,"dur":100},{"pid":1,"tid":0,"id":140,"name":"task: unknown task type","args":{"span_id":"140","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484190941000,"dur":1000},{"pid":1,"tid":0,"id":141,"name":"task: check manifest","args":{"span_id":"141","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484190943000,"dur":2000},{"pid":1,"tid":0,"id":142,"name":"task: process manifest","args":{"span_id":"142","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 52\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484190947000,"dur":10000},{"pid":1,"tid":0,"id":143,"name":"task: app pre build","args":{"span_id":"143","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 92\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484190959000,"dur":138000},{"pid":1,"tid":0,"id":144,"name":"task: check manifest","args":{"span_id":"144","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484191099000,"dur":2000},{"pid":1,"tid":0,"id":145,"name":"task: compatible screens manifest","args":{"span_id":"145","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 9\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484191102000,"dur":12000},{"pid":1,"tid":0,"id":146,"name":"task: merge manifests","args":{"span_id":"146","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 39\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484191117000,"dur":557000},{"pid":1,"tid":0,"id":147,"name":"task: unknown task type","args":{"span_id":"147","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484191681000,"dur":10000},{"pid":1,"tid":0,"id":148,"name":"task: unknown task type","args":{"span_id":"148","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484191694000,"dur":1000},{"pid":1,"tid":0,"id":149,"name":"task: renderscript compile","args":{"span_id":"149","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484191697000,"dur":54000},{"pid":1,"tid":0,"id":150,"name":"task: generate res values","args":{"span_id":"150","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484191752000,"dur":5000},{"pid":1,"tid":0,"id":151,"name":"task: unknown task type","args":{"span_id":"151","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484191760000,"dur":1000},{"pid":1,"tid":0,"id":152,"name":"task: renderscript compile","args":{"span_id":"152","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484191766000,"dur":42000},{"pid":1,"tid":0,"id":153,"name":"task: generate res values","args":{"span_id":"153","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484191809000,"dur":6000},{"pid":1,"tid":0,"id":154,"name":"task: unknown task type","args":{"span_id":"154","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484191817000,"dur":100},{"pid":1,"tid":0,"id":155,"name":"task: merge resources","args":{"span_id":"155","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484191819000,"dur":58000},{"pid":1,"tid":0,"id":156,"name":"task: renderscript compile","args":{"span_id":"156","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484191879000,"dur":165000},{"pid":1,"tid":0,"id":157,"name":"task: generate res values","args":{"span_id":"157","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484192045000,"dur":3000},{"pid":1,"tid":0,"id":158,"name":"task: unknown task type","args":{"span_id":"158","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484192049000,"dur":100},{"pid":1,"tid":0,"id":159,"name":"task: merge resources","args":{"span_id":"159","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484192051000,"dur":18000},{"pid":1,"tid":0,"id":160,"name":"task: merge resources","args":{"span_id":"160","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484192070000,"dur":329000},{"pid":1,"tid":0,"id":161,"name":"task: splits discovery","args":{"span_id":"161","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 87\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484192408000,"dur":6000},{"pid":1,"tid":0,"id":162,"name":"task: platform attr extractor","args":{"span_id":"162","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 109\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484192416000,"dur":4000},{"pid":1,"tid":0,"id":163,"name":"task: platform attr extractor","args":{"span_id":"163","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 109\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484192424000,"dur":5000},{"pid":1,"tid":0,"id":164,"name":"task: process android resources","args":{"span_id":"164","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484192433000,"dur":323000},{"pid":1,"tid":0,"id":165,"name":"task: process android resources","args":{"span_id":"165","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484192759000,"dur":1575000},{"pid":1,"tid":0,"id":166,"name":"task: process android resources","args":{"span_id":"166","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484194336000,"dur":1622000},{"pid":1,"tid":0,"id":167,"name":"task: package application","args":{"span_id":"167","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 45\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484195963000,"dur":26000},{"pid":1,"tid":0,"id":168,"name":"task: aidl compile","args":{"span_id":"168","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484195990000,"dur":16000},{"pid":1,"tid":0,"id":169,"name":"task: aidl compile","args":{"span_id":"169","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484196007000,"dur":26000},{"pid":1,"tid":0,"id":170,"name":"task: aidl compile","args":{"span_id":"170","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484196034000,"dur":25000},{"pid":1,"tid":0,"id":171,"name":"task: generate build config","args":{"span_id":"171","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484196060000,"dur":3000},{"pid":1,"tid":0,"id":172,"name":"task: prepare lint jar","args":{"span_id":"172","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 119\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484196064000,"dur":5000},{"pid":1,"tid":0,"id":173,"name":"task: unknown task type","args":{"span_id":"173","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484196070000,"dur":100},{"pid":1,"tid":0,"id":174,"name":"task: generate build config","args":{"span_id":"174","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484196072000,"dur":2000},{"pid":1,"tid":0,"id":175,"name":"task: prepare lint jar","args":{"span_id":"175","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 119\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484196076000,"dur":1000},{"pid":1,"tid":0,"id":176,"name":"task: unknown task type","args":{"span_id":"176","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484196078000,"dur":100},{"pid":1,"tid":0,"id":177,"name":"task: unknown task type","args":{"span_id":"177","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484196080000,"dur":50000},{"pid":1,"tid":0,"id":178,"name":"task: unknown task type","args":{"span_id":"178","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484196138000,"dur":10000},{"pid":1,"tid":0,"id":179,"name":"task: generate build config","args":{"span_id":"179","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484196150000,"dur":9000},{"pid":1,"tid":0,"id":180,"name":"task: prepare lint jar","args":{"span_id":"180","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 119\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484196160000,"dur":2000},{"pid":1,"tid":0,"id":181,"name":"task: unknown task type","args":{"span_id":"181","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484196164000,"dur":1000},{"pid":1,"tid":0,"id":182,"name":"task: java pre compile","args":{"span_id":"182","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 76\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484196167000,"dur":16000},{"pid":1,"tid":0,"id":183,"name":"task: android java compile","args":{"span_id":"183","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 3\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484196192000,"dur":115000},{"pid":1,"tid":0,"id":184,"name":"task: unknown task type","args":{"span_id":"184","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484196309000,"dur":1000},{"pid":1,"tid":0,"id":185,"name":"task: transform","args":{"span_id":"185","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484196314000,"dur":8000},{"pid":1,"tid":0,"id":186,"name":"task: java pre compile","args":{"span_id":"186","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 76\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484196325000,"dur":224000},{"pid":1,"tid":0,"id":187,"name":"task: android java compile","args":{"span_id":"187","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 3\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484196551000,"dur":6711000},{"pid":1,"tid":0,"id":188,"name":"task: unknown task type","args":{"span_id":"188","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484203264000,"dur":12000},{"pid":1,"tid":2,"id":190,"name":"transform prep: unknown transform type","args":{"span_id":"190","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 0\nis_incremental: true\n"},"ph":"X","ts":1546484203296000,"dur":22000},{"pid":1,"tid":2,"id":191,"name":"transform: unknown transform type","args":{"span_id":"191","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 0\nis_incremental: true\n"},"ph":"X","ts":1546484203323000,"dur":117000},{"pid":1,"tid":0,"id":189,"name":"task: transform","args":{"span_id":"189","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484203278000,"dur":166000},{"pid":1,"tid":0,"id":192,"name":"task: java pre compile","args":{"span_id":"192","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 76\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484203445000,"dur":140000},{"pid":1,"tid":0,"id":193,"name":"task: android java compile","args":{"span_id":"193","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 3\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484203587000,"dur":339000},{"pid":1,"tid":0,"id":194,"name":"task: check manifest in instant run mode","args":{"span_id":"194","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 72\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484203927000,"dur":20000},{"pid":1,"tid":3,"id":196,"name":"transform prep: extract jars","args":{"span_id":"196","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 2\nis_incremental: true\n"},"ph":"X","ts":1546484204002000,"dur":4000},{"pid":1,"tid":3,"id":197,"name":"transform: extract jars","args":{"span_id":"197","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 2\nis_incremental: true\n"},"ph":"X","ts":1546484204006000,"dur":108000},{"pid":1,"tid":0,"id":195,"name":"task: transform","args":{"span_id":"195","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484203953000,"dur":185000},{"pid":1,"tid":3,"id":199,"name":"transform prep: instant run verifier","args":{"span_id":"199","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 20\nis_incremental: true\n"},"ph":"X","ts":1546484204324000,"dur":2000},{"pid":1,"tid":3,"id":201,"name":"task file verification","args":{"span_id":"201","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484204329000,"dur":62000},{"pid":1,"tid":3,"id":202,"name":"task file verification","args":{"span_id":"202","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484204391000,"dur":11000},{"pid":1,"tid":3,"id":203,"name":"task file verification","args":{"span_id":"203","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1546484204403000,"dur":1000},{"pid":1,"tid":3,"id":200,"name":"transform: instant run verifier","args":{"span_id":"200","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 20\nis_incremental: true\n"},"ph":"X","ts":1546484204326000,"dur":78000},{"pid":1,"tid":0,"id":198,"name":"task: transform","args":{"span_id":"198","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484204139000,"dur":307000},{"pid":1,"tid":0,"id":204,"name":"task: transform","args":{"span_id":"204","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484204452000,"dur":45000},{"pid":1,"tid":0,"id":205,"name":"task: ndk compile","args":{"span_id":"205","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 43\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484204499000,"dur":2000},{"pid":1,"tid":0,"id":206,"name":"task: merge source set folders","args":{"span_id":"206","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484204503000,"dur":6000},{"pid":1,"tid":0,"id":207,"name":"task: ndk compile","args":{"span_id":"207","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 43\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484204512000,"dur":2000},{"pid":1,"tid":0,"id":208,"name":"task: merge source set folders","args":{"span_id":"208","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484204516000,"dur":12000},{"pid":1,"tid":0,"id":209,"name":"task: transform","args":{"span_id":"209","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484204530000,"dur":5000},{"pid":1,"tid":0,"id":210,"name":"task: transform","args":{"span_id":"210","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484204537000,"dur":5000},{"pid":1,"tid":0,"id":211,"name":"task: ndk compile","args":{"span_id":"211","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 43\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484204544000,"dur":1000},{"pid":1,"tid":0,"id":212,"name":"task: merge source set folders","args":{"span_id":"212","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484204546000,"dur":4000},{"pid":1,"tid":0,"id":213,"name":"task: transform","args":{"span_id":"213","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484204551000,"dur":7000},{"pid":1,"tid":0,"id":214,"name":"task: transform","args":{"span_id":"214","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484204560000,"dur":4000},{"pid":1,"tid":0,"id":215,"name":"task: transform","args":{"span_id":"215","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484204565000,"dur":65000},{"pid":1,"tid":0,"id":216,"name":"task: unknown task type","args":{"span_id":"216","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484204631000,"dur":2000},{"pid":1,"tid":0,"id":217,"name":"task: transform","args":{"span_id":"217","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484204634000,"dur":56000},{"pid":1,"tid":0,"id":218,"name":"task: transform","args":{"span_id":"218","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484204699000,"dur":5000},{"pid":1,"tid":1,"id":220,"name":"transform prep: instant run","args":{"span_id":"220","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 5\nis_incremental: true\n"},"ph":"X","ts":1546484205041000,"dur":64000},{"pid":1,"tid":1,"id":221,"name":"transform: instant run","args":{"span_id":"221","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 5\nis_incremental: true\n"},"ph":"X","ts":1546484205105000,"dur":89000},{"pid":1,"tid":0,"id":219,"name":"task: transform","args":{"span_id":"219","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484204711000,"dur":521000},{"pid":1,"tid":1,"id":223,"name":"transform prep: instant run dex","args":{"span_id":"223","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 3\nis_incremental: false\n"},"ph":"X","ts":1546484205249000,"dur":1000},{"pid":1,"tid":1,"id":224,"name":"transform: instant run dex","args":{"span_id":"224","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 3\nis_incremental: false\n"},"ph":"X","ts":1546484205250000,"dur":100},{"pid":1,"tid":0,"id":222,"name":"task: transform","args":{"span_id":"222","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484205237000,"dur":16000},{"pid":1,"tid":0,"id":225,"name":"task: unknown task type","args":{"span_id":"225","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484205256000,"dur":1000},{"pid":1,"tid":0,"id":226,"name":"task: pre cold swap","args":{"span_id":"226","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 48\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484205258000,"dur":2000},{"pid":1,"tid":0,"id":227,"name":"task: fast deploy runtime extractor","args":{"span_id":"227","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 21\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484205269000,"dur":4000},{"pid":1,"tid":0,"id":228,"name":"task: generate instant run app info","args":{"span_id":"228","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 25\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484205274000,"dur":3000},{"pid":1,"tid":3,"id":230,"name":"transform prep: instant run slicer","args":{"span_id":"230","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 4\nis_incremental: true\n"},"ph":"X","ts":1546484205431000,"dur":3000},{"pid":1,"tid":3,"id":231,"name":"transform: instant run slicer","args":{"span_id":"231","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 4\nis_incremental: true\n"},"ph":"X","ts":1546484205435000,"dur":14000},{"pid":1,"tid":0,"id":229,"name":"task: transform","args":{"span_id":"229","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484205279000,"dur":207000},{"pid":1,"tid":3,"id":233,"name":"transform prep: dex archive builder","args":{"span_id":"233","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 29\nis_incremental: true\n"},"ph":"X","ts":1546484205796000,"dur":6000},{"pid":1,"tid":3,"id":234,"name":"transform: dex archive builder","args":{"span_id":"234","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 29\nis_incremental: true\n"},"ph":"X","ts":1546484205802000,"dur":1226000},{"pid":1,"tid":0,"id":232,"name":"task: transform","args":{"span_id":"232","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484205487000,"dur":1583000},{"pid":1,"tid":3,"id":236,"name":"transform prep: external libs merger","args":{"span_id":"236","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 34\nis_incremental: true\n"},"ph":"X","ts":1546484207132000,"dur":7000},{"pid":1,"tid":3,"id":237,"name":"transform: external libs merger","args":{"span_id":"237","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 34\nis_incremental: true\n"},"ph":"X","ts":1546484207139000,"dur":5000},{"pid":1,"tid":0,"id":235,"name":"task: transform","args":{"span_id":"235","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484207075000,"dur":72000},{"pid":1,"tid":2,"id":239,"name":"transform prep: dex merger","args":{"span_id":"239","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 30\nis_incremental: true\n"},"ph":"X","ts":1546484207225000,"dur":8000},{"pid":1,"tid":2,"id":240,"name":"transform: dex merger","args":{"span_id":"240","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 30\nis_incremental: true\n"},"ph":"X","ts":1546484207233000,"dur":228000},{"pid":1,"tid":0,"id":238,"name":"task: transform","args":{"span_id":"238","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484207148000,"dur":317000},{"pid":1,"tid":0,"id":241,"name":"task: validate signing","args":{"span_id":"241","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 67\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484207474000,"dur":1000},{"pid":1,"tid":2,"id":243,"name":"transform prep: instant run dependencies apk builder","args":{"span_id":"243","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 23\nis_incremental: true\n"},"ph":"X","ts":1546484207484000,"dur":11000},{"pid":1,"tid":2,"id":244,"name":"transform: instant run dependencies apk builder","args":{"span_id":"244","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 23\nis_incremental: true\n"},"ph":"X","ts":1546484207495000,"dur":7000},{"pid":1,"tid":0,"id":242,"name":"task: transform","args":{"span_id":"242","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484207476000,"dur":30000},{"pid":1,"tid":2,"id":246,"name":"transform prep: instant run slice split apk builder","args":{"span_id":"246","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 24\nis_incremental: true\n"},"ph":"X","ts":1546484207532000,"dur":2000},{"pid":1,"tid":2,"id":247,"name":"transform: instant run slice split apk builder","args":{"span_id":"247","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 24\nis_incremental: true\n"},"ph":"X","ts":1546484207534000,"dur":1680000},{"pid":1,"tid":0,"id":245,"name":"task: transform","args":{"span_id":"245","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484207508000,"dur":1708000},{"pid":1,"tid":0,"id":248,"name":"task: package application","args":{"span_id":"248","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 45\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484209220000,"dur":210000},{"pid":1,"tid":0,"id":249,"name":"task: build info writer","args":{"span_id":"249","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 70\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484209431000,"dur":32000},{"pid":1,"tid":0,"id":250,"name":"task: unknown task type","args":{"span_id":"250","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1546484209464000,"dur":100},{"pid":1,"tid":0,"id":251,"name":"task: unknown task type","args":{"span_id":"251","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1546484209466000,"dur":100},{"pid":1,"tid":1,"id":252,"name":"base plugin build finished","args":{"span_id":"252","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484210017000,"dur":33000},{"pid":1,"tid":1,"id":253,"name":"base plugin build finished","args":{"span_id":"253","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484210050000,"dur":1000},{"pid":1,"tid":1,"id":254,"name":"base plugin build finished","args":{"span_id":"254","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1546484210051000,"dur":1000}] \ No newline at end of file diff --git a/AndroidLearnProject/build/android-profile/profile-2019-01-03-10-56-50-111.rawproto b/AndroidLearnProject/build/android-profile/profile-2019-01-03-10-56-50-111.rawproto deleted file mode 100644 index bc6cd5d..0000000 Binary files a/AndroidLearnProject/build/android-profile/profile-2019-01-03-10-56-50-111.rawproto and /dev/null differ diff --git a/AndroidLearnProject/build/android-profile/profile-2019-01-16-09-46-21-399.json b/AndroidLearnProject/build/android-profile/profile-2019-01-16-09-46-21-399.json deleted file mode 100644 index 59e21c6..0000000 --- a/AndroidLearnProject/build/android-profile/profile-2019-01-16-09-46-21-399.json +++ /dev/null @@ -1 +0,0 @@ -[{"pid":0,"ph":"i","name":"Memory sample","ts":1547603058434000,"args":{"JVM stats":"heap_memory_usage: 44968592\nnon_heap_memory_usage: 49659520\nloaded_class_count: 7312\nthread_count: 21\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 5\n gc_time: 62\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 1\n gc_time: 31\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603063827000,"args":{"JVM stats":"heap_memory_usage: 192110952\nnon_heap_memory_usage: 83167176\nloaded_class_count: 10764\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 2\n gc_time: 36\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 1\n gc_time: 81\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603063831000,"args":{"JVM stats":"heap_memory_usage: 192110952\nnon_heap_memory_usage: 83043424\nloaded_class_count: 10769\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603063832000,"args":{"JVM stats":"heap_memory_usage: 193140736\nnon_heap_memory_usage: 83044904\nloaded_class_count: 10769\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603063911000,"args":{"JVM stats":"heap_memory_usage: 194170520\nnon_heap_memory_usage: 82794904\nloaded_class_count: 10870\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603063943000,"args":{"JVM stats":"heap_memory_usage: 194170520\nnon_heap_memory_usage: 82844216\nloaded_class_count: 10880\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603063945000,"args":{"JVM stats":"heap_memory_usage: 194170520\nnon_heap_memory_usage: 82846488\nloaded_class_count: 10880\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603063946000,"args":{"JVM stats":"heap_memory_usage: 194170520\nnon_heap_memory_usage: 82848888\nloaded_class_count: 10880\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603063951000,"args":{"JVM stats":"heap_memory_usage: 194170520\nnon_heap_memory_usage: 82869552\nloaded_class_count: 10880\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603063982000,"args":{"JVM stats":"heap_memory_usage: 194588888\nnon_heap_memory_usage: 82969648\nloaded_class_count: 10880\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603094056000,"args":{"JVM stats":"heap_memory_usage: 101168400\nnon_heap_memory_usage: 89695280\nloaded_class_count: 11763\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 51\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 1\n gc_time: 257\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603094228000,"args":{"JVM stats":"heap_memory_usage: 110340520\nnon_heap_memory_usage: 89800096\nloaded_class_count: 11764\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603094284000,"args":{"JVM stats":"heap_memory_usage: 112587064\nnon_heap_memory_usage: 89946856\nloaded_class_count: 11764\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603094325000,"args":{"JVM stats":"heap_memory_usage: 113732760\nnon_heap_memory_usage: 90056752\nloaded_class_count: 11764\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603094327000,"args":{"JVM stats":"heap_memory_usage: 113732760\nnon_heap_memory_usage: 90064240\nloaded_class_count: 11764\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603094335000,"args":{"JVM stats":"heap_memory_usage: 113732760\nnon_heap_memory_usage: 90096008\nloaded_class_count: 11765\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603094363000,"args":{"JVM stats":"heap_memory_usage: 113732760\nnon_heap_memory_usage: 90156000\nloaded_class_count: 11766\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603094371000,"args":{"JVM stats":"heap_memory_usage: 113732760\nnon_heap_memory_usage: 90156000\nloaded_class_count: 11766\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603094378000,"args":{"JVM stats":"heap_memory_usage: 113732760\nnon_heap_memory_usage: 90174552\nloaded_class_count: 11767\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603094384000,"args":{"JVM stats":"heap_memory_usage: 113732760\nnon_heap_memory_usage: 90181360\nloaded_class_count: 11768\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603094387000,"args":{"JVM stats":"heap_memory_usage: 113732760\nnon_heap_memory_usage: 90187008\nloaded_class_count: 11768\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603094388000,"args":{"JVM stats":"heap_memory_usage: 113732760\nnon_heap_memory_usage: 90187008\nloaded_class_count: 11768\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603094411000,"args":{"JVM stats":"heap_memory_usage: 113732760\nnon_heap_memory_usage: 90226064\nloaded_class_count: 11768\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603094414000,"args":{"JVM stats":"heap_memory_usage: 113732760\nnon_heap_memory_usage: 90235280\nloaded_class_count: 11768\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603094416000,"args":{"JVM stats":"heap_memory_usage: 113732760\nnon_heap_memory_usage: 90235280\nloaded_class_count: 11768\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603094479000,"args":{"JVM stats":"heap_memory_usage: 116974952\nnon_heap_memory_usage: 90314728\nloaded_class_count: 11770\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603094491000,"args":{"JVM stats":"heap_memory_usage: 116974952\nnon_heap_memory_usage: 90332944\nloaded_class_count: 11770\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603094494000,"args":{"JVM stats":"heap_memory_usage: 116974952\nnon_heap_memory_usage: 90351704\nloaded_class_count: 11770\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603094496000,"args":{"JVM stats":"heap_memory_usage: 116974952\nnon_heap_memory_usage: 90351704\nloaded_class_count: 11770\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603094519000,"args":{"JVM stats":"heap_memory_usage: 116974952\nnon_heap_memory_usage: 90395248\nloaded_class_count: 11770\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603094954000,"args":{"JVM stats":"heap_memory_usage: 137864248\nnon_heap_memory_usage: 90730808\nloaded_class_count: 11770\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603094964000,"args":{"JVM stats":"heap_memory_usage: 137864248\nnon_heap_memory_usage: 90768552\nloaded_class_count: 11775\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603094995000,"args":{"JVM stats":"heap_memory_usage: 138345896\nnon_heap_memory_usage: 90822168\nloaded_class_count: 11778\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603094998000,"args":{"JVM stats":"heap_memory_usage: 138345896\nnon_heap_memory_usage: 90831952\nloaded_class_count: 11778\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603095004000,"args":{"JVM stats":"heap_memory_usage: 138345896\nnon_heap_memory_usage: 90835616\nloaded_class_count: 11778\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603095009000,"args":{"JVM stats":"heap_memory_usage: 138345896\nnon_heap_memory_usage: 90837272\nloaded_class_count: 11778\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603095552000,"args":{"JVM stats":"heap_memory_usage: 152840864\nnon_heap_memory_usage: 91969896\nloaded_class_count: 11898\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603097066000,"args":{"JVM stats":"heap_memory_usage: 231996360\nnon_heap_memory_usage: 96490408\nloaded_class_count: 12095\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603097149000,"args":{"JVM stats":"heap_memory_usage: 237379560\nnon_heap_memory_usage: 96617832\nloaded_class_count: 12097\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603097151000,"args":{"JVM stats":"heap_memory_usage: 237379560\nnon_heap_memory_usage: 96618536\nloaded_class_count: 12097\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603097157000,"args":{"JVM stats":"heap_memory_usage: 237379560\nnon_heap_memory_usage: 96618536\nloaded_class_count: 12097\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603097161000,"args":{"JVM stats":"heap_memory_usage: 237379560\nnon_heap_memory_usage: 96624320\nloaded_class_count: 12097\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603097163000,"args":{"JVM stats":"heap_memory_usage: 237379560\nnon_heap_memory_usage: 96624320\nloaded_class_count: 12097\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603097189000,"args":{"JVM stats":"heap_memory_usage: 238351080\nnon_heap_memory_usage: 96696240\nloaded_class_count: 12097\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603097217000,"args":{"JVM stats":"heap_memory_usage: 240020304\nnon_heap_memory_usage: 96750984\nloaded_class_count: 12098\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603097227000,"args":{"JVM stats":"heap_memory_usage: 240020304\nnon_heap_memory_usage: 96759800\nloaded_class_count: 12098\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603097230000,"args":{"JVM stats":"heap_memory_usage: 240020304\nnon_heap_memory_usage: 96791432\nloaded_class_count: 12098\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603097231000,"args":{"JVM stats":"heap_memory_usage: 240020304\nnon_heap_memory_usage: 96791864\nloaded_class_count: 12098\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603097247000,"args":{"JVM stats":"heap_memory_usage: 240506064\nnon_heap_memory_usage: 96818584\nloaded_class_count: 12099\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603097326000,"args":{"JVM stats":"heap_memory_usage: 243843056\nnon_heap_memory_usage: 96855488\nloaded_class_count: 12102\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603097328000,"args":{"JVM stats":"heap_memory_usage: 243843056\nnon_heap_memory_usage: 96856320\nloaded_class_count: 12102\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603097339000,"args":{"JVM stats":"heap_memory_usage: 243843056\nnon_heap_memory_usage: 96890480\nloaded_class_count: 12105\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603097601000,"args":{"JVM stats":"heap_memory_usage: 252386536\nnon_heap_memory_usage: 97075632\nloaded_class_count: 12106\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603097776000,"args":{"JVM stats":"heap_memory_usage: 260502632\nnon_heap_memory_usage: 97173320\nloaded_class_count: 12106\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603097778000,"args":{"JVM stats":"heap_memory_usage: 260502632\nnon_heap_memory_usage: 97173320\nloaded_class_count: 12106\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603097788000,"args":{"JVM stats":"heap_memory_usage: 260502632\nnon_heap_memory_usage: 97183384\nloaded_class_count: 12106\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603097928000,"args":{"JVM stats":"heap_memory_usage: 265477768\nnon_heap_memory_usage: 97279544\nloaded_class_count: 12118\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603098127000,"args":{"JVM stats":"heap_memory_usage: 273994576\nnon_heap_memory_usage: 97461320\nloaded_class_count: 12119\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603098133000,"args":{"JVM stats":"heap_memory_usage: 273994576\nnon_heap_memory_usage: 97468552\nloaded_class_count: 12120\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603098137000,"args":{"JVM stats":"heap_memory_usage: 273994576\nnon_heap_memory_usage: 97469952\nloaded_class_count: 12120\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603098151000,"args":{"JVM stats":"heap_memory_usage: 274893200\nnon_heap_memory_usage: 97476008\nloaded_class_count: 12120\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603098160000,"args":{"JVM stats":"heap_memory_usage: 274893200\nnon_heap_memory_usage: 97515504\nloaded_class_count: 12120\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603098161000,"args":{"JVM stats":"heap_memory_usage: 274893200\nnon_heap_memory_usage: 97517680\nloaded_class_count: 12120\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603098167000,"args":{"JVM stats":"heap_memory_usage: 274893200\nnon_heap_memory_usage: 97525960\nloaded_class_count: 12120\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603098172000,"args":{"JVM stats":"heap_memory_usage: 274893200\nnon_heap_memory_usage: 97529576\nloaded_class_count: 12120\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603098173000,"args":{"JVM stats":"heap_memory_usage: 274893200\nnon_heap_memory_usage: 97532392\nloaded_class_count: 12120\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603098186000,"args":{"JVM stats":"heap_memory_usage: 275374848\nnon_heap_memory_usage: 97555680\nloaded_class_count: 12120\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603098192000,"args":{"JVM stats":"heap_memory_usage: 275374848\nnon_heap_memory_usage: 97569336\nloaded_class_count: 12122\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603098196000,"args":{"JVM stats":"heap_memory_usage: 275374848\nnon_heap_memory_usage: 97575160\nloaded_class_count: 12122\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603098198000,"args":{"JVM stats":"heap_memory_usage: 275374848\nnon_heap_memory_usage: 97576568\nloaded_class_count: 12122\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603098205000,"args":{"JVM stats":"heap_memory_usage: 275374848\nnon_heap_memory_usage: 97589456\nloaded_class_count: 12122\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603098222000,"args":{"JVM stats":"heap_memory_usage: 278771240\nnon_heap_memory_usage: 97610976\nloaded_class_count: 12122\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603100844000,"args":{"JVM stats":"heap_memory_usage: 409577248\nnon_heap_memory_usage: 106188840\nloaded_class_count: 12738\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603100890000,"args":{"JVM stats":"heap_memory_usage: 411477408\nnon_heap_memory_usage: 106267328\nloaded_class_count: 12738\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603104126000,"args":{"JVM stats":"heap_memory_usage: 433773288\nnon_heap_memory_usage: 109509784\nloaded_class_count: 12877\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 99\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 1\n gc_time: 456\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603104138000,"args":{"JVM stats":"heap_memory_usage: 436443784\nnon_heap_memory_usage: 109551280\nloaded_class_count: 12877\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603104141000,"args":{"JVM stats":"heap_memory_usage: 436443784\nnon_heap_memory_usage: 109545904\nloaded_class_count: 12877\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603104150000,"args":{"JVM stats":"heap_memory_usage: 438060720\nnon_heap_memory_usage: 109594872\nloaded_class_count: 12879\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603104159000,"args":{"JVM stats":"heap_memory_usage: 438060720\nnon_heap_memory_usage: 109640816\nloaded_class_count: 12879\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603104167000,"args":{"JVM stats":"heap_memory_usage: 438060720\nnon_heap_memory_usage: 109665408\nloaded_class_count: 12881\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603104170000,"args":{"JVM stats":"heap_memory_usage: 438060720\nnon_heap_memory_usage: 109665408\nloaded_class_count: 12881\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603104180000,"args":{"JVM stats":"heap_memory_usage: 438060720\nnon_heap_memory_usage: 109673360\nloaded_class_count: 12881\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603104189000,"args":{"JVM stats":"heap_memory_usage: 438060720\nnon_heap_memory_usage: 109682336\nloaded_class_count: 12883\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603104194000,"args":{"JVM stats":"heap_memory_usage: 438717400\nnon_heap_memory_usage: 109688040\nloaded_class_count: 12883\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603104296000,"args":{"JVM stats":"heap_memory_usage: 445195088\nnon_heap_memory_usage: 109818120\nloaded_class_count: 12883\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603104298000,"args":{"JVM stats":"heap_memory_usage: 445195088\nnon_heap_memory_usage: 109826504\nloaded_class_count: 12883\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603104383000,"args":{"JVM stats":"heap_memory_usage: 448635792\nnon_heap_memory_usage: 109853576\nloaded_class_count: 12883\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603104387000,"args":{"JVM stats":"heap_memory_usage: 448635792\nnon_heap_memory_usage: 109859024\nloaded_class_count: 12884\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603106572000,"args":{"JVM stats":"heap_memory_usage: 524037536\nnon_heap_memory_usage: 112989088\nloaded_class_count: 13170\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 2\n gc_time: 72\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603106574000,"args":{"JVM stats":"heap_memory_usage: 527451120\nnon_heap_memory_usage: 112979216\nloaded_class_count: 13170\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603106580000,"args":{"JVM stats":"heap_memory_usage: 527848768\nnon_heap_memory_usage: 112955120\nloaded_class_count: 13170\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603106582000,"args":{"JVM stats":"heap_memory_usage: 527848768\nnon_heap_memory_usage: 112964240\nloaded_class_count: 13170\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603106585000,"args":{"JVM stats":"heap_memory_usage: 527848768\nnon_heap_memory_usage: 112956736\nloaded_class_count: 13171\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603106595000,"args":{"JVM stats":"heap_memory_usage: 527848768\nnon_heap_memory_usage: 112766280\nloaded_class_count: 13171\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603106596000,"args":{"JVM stats":"heap_memory_usage: 527848768\nnon_heap_memory_usage: 112772936\nloaded_class_count: 13171\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603106599000,"args":{"JVM stats":"heap_memory_usage: 527848768\nnon_heap_memory_usage: 112481384\nloaded_class_count: 13171\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603106611000,"args":{"JVM stats":"heap_memory_usage: 528256456\nnon_heap_memory_usage: 112496824\nloaded_class_count: 13176\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603106690000,"args":{"JVM stats":"heap_memory_usage: 125573272\nnon_heap_memory_usage: 112729400\nloaded_class_count: 13176\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 5\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603106706000,"args":{"JVM stats":"heap_memory_usage: 126368296\nnon_heap_memory_usage: 112766248\nloaded_class_count: 13182\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603106745000,"args":{"JVM stats":"heap_memory_usage: 127740296\nnon_heap_memory_usage: 112852360\nloaded_class_count: 13184\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603106759000,"args":{"JVM stats":"heap_memory_usage: 128901512\nnon_heap_memory_usage: 112859592\nloaded_class_count: 13184\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603106761000,"args":{"JVM stats":"heap_memory_usage: 128901512\nnon_heap_memory_usage: 112862480\nloaded_class_count: 13184\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603106763000,"args":{"JVM stats":"heap_memory_usage: 128901512\nnon_heap_memory_usage: 112863440\nloaded_class_count: 13184\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603106778000,"args":{"JVM stats":"heap_memory_usage: 129203856\nnon_heap_memory_usage: 112885944\nloaded_class_count: 13188\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603106781000,"args":{"JVM stats":"heap_memory_usage: 129203856\nnon_heap_memory_usage: 112885944\nloaded_class_count: 13188\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603106784000,"args":{"JVM stats":"heap_memory_usage: 129203856\nnon_heap_memory_usage: 112888304\nloaded_class_count: 13189\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603106787000,"args":{"JVM stats":"heap_memory_usage: 129203856\nnon_heap_memory_usage: 112890664\nloaded_class_count: 13190\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603106789000,"args":{"JVM stats":"heap_memory_usage: 129203856\nnon_heap_memory_usage: 112890664\nloaded_class_count: 13190\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603106805000,"args":{"JVM stats":"heap_memory_usage: 130062904\nnon_heap_memory_usage: 112896472\nloaded_class_count: 13192\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603106811000,"args":{"JVM stats":"heap_memory_usage: 130062904\nnon_heap_memory_usage: 112896504\nloaded_class_count: 13192\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603106813000,"args":{"JVM stats":"heap_memory_usage: 130062904\nnon_heap_memory_usage: 112896504\nloaded_class_count: 13192\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603106946000,"args":{"JVM stats":"heap_memory_usage: 133065896\nnon_heap_memory_usage: 112974072\nloaded_class_count: 13199\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603106973000,"args":{"JVM stats":"heap_memory_usage: 133368096\nnon_heap_memory_usage: 112998096\nloaded_class_count: 13199\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603106976000,"args":{"JVM stats":"heap_memory_usage: 133368096\nnon_heap_memory_usage: 112998800\nloaded_class_count: 13199\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603106977000,"args":{"JVM stats":"heap_memory_usage: 133368096\nnon_heap_memory_usage: 113002704\nloaded_class_count: 13199\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603106989000,"args":{"JVM stats":"heap_memory_usage: 133896496\nnon_heap_memory_usage: 113025792\nloaded_class_count: 13205\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603107500000,"args":{"JVM stats":"heap_memory_usage: 157985760\nnon_heap_memory_usage: 113249800\nloaded_class_count: 13205\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603107518000,"args":{"JVM stats":"heap_memory_usage: 158244712\nnon_heap_memory_usage: 113252424\nloaded_class_count: 13205\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603107550000,"args":{"JVM stats":"heap_memory_usage: 159365096\nnon_heap_memory_usage: 113298632\nloaded_class_count: 13205\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603107555000,"args":{"JVM stats":"heap_memory_usage: 159623896\nnon_heap_memory_usage: 113326448\nloaded_class_count: 13205\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603107572000,"args":{"JVM stats":"heap_memory_usage: 160676488\nnon_heap_memory_usage: 113351616\nloaded_class_count: 13205\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603107616000,"args":{"JVM stats":"heap_memory_usage: 163684752\nnon_heap_memory_usage: 113423056\nloaded_class_count: 13212\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603107651000,"args":{"JVM stats":"heap_memory_usage: 167440928\nnon_heap_memory_usage: 113430088\nloaded_class_count: 13212\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603107652000,"args":{"JVM stats":"heap_memory_usage: 167440928\nnon_heap_memory_usage: 113430088\nloaded_class_count: 13212\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603107657000,"args":{"JVM stats":"heap_memory_usage: 167440928\nnon_heap_memory_usage: 113434664\nloaded_class_count: 13212\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603107658000,"args":{"JVM stats":"heap_memory_usage: 167440928\nnon_heap_memory_usage: 113437816\nloaded_class_count: 13212\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603107661000,"args":{"JVM stats":"heap_memory_usage: 167440928\nnon_heap_memory_usage: 113446656\nloaded_class_count: 13212\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603107662000,"args":{"JVM stats":"heap_memory_usage: 167440928\nnon_heap_memory_usage: 113448184\nloaded_class_count: 13212\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603107673000,"args":{"JVM stats":"heap_memory_usage: 168574928\nnon_heap_memory_usage: 113475816\nloaded_class_count: 13212\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603107731000,"args":{"JVM stats":"heap_memory_usage: 170926720\nnon_heap_memory_usage: 113510360\nloaded_class_count: 13218\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603107735000,"args":{"JVM stats":"heap_memory_usage: 171190376\nnon_heap_memory_usage: 113518064\nloaded_class_count: 13219\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603107743000,"args":{"JVM stats":"heap_memory_usage: 171455832\nnon_heap_memory_usage: 113518064\nloaded_class_count: 13219\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603107770000,"args":{"JVM stats":"heap_memory_usage: 172045344\nnon_heap_memory_usage: 113532976\nloaded_class_count: 13221\nthread_count: 30\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603114896000,"args":{"JVM stats":"heap_memory_usage: 146782656\nnon_heap_memory_usage: 134056504\nloaded_class_count: 14575\nthread_count: 28\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 38\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603114905000,"args":{"JVM stats":"heap_memory_usage: 147908760\nnon_heap_memory_usage: 134063408\nloaded_class_count: 14575\nthread_count: 28\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603115002000,"args":{"JVM stats":"heap_memory_usage: 156898800\nnon_heap_memory_usage: 134226688\nloaded_class_count: 14591\nthread_count: 29\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603115088000,"args":{"JVM stats":"heap_memory_usage: 161722120\nnon_heap_memory_usage: 134310784\nloaded_class_count: 14599\nthread_count: 29\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603115494000,"args":{"JVM stats":"heap_memory_usage: 178714544\nnon_heap_memory_usage: 135022072\nloaded_class_count: 14627\nthread_count: 29\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603115496000,"args":{"JVM stats":"heap_memory_usage: 178714544\nnon_heap_memory_usage: 135035064\nloaded_class_count: 14627\nthread_count: 29\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603115497000,"args":{"JVM stats":"heap_memory_usage: 178714544\nnon_heap_memory_usage: 135038448\nloaded_class_count: 14627\nthread_count: 29\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603136814000,"args":{"JVM stats":"heap_memory_usage: 290112168\nnon_heap_memory_usage: 185339216\nloaded_class_count: 18133\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 5\n gc_time: 260\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 1\n gc_time: 675\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603136824000,"args":{"JVM stats":"heap_memory_usage: 292444368\nnon_heap_memory_usage: 185340624\nloaded_class_count: 18133\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603136828000,"args":{"JVM stats":"heap_memory_usage: 292444368\nnon_heap_memory_usage: 185344040\nloaded_class_count: 18134\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603136829000,"args":{"JVM stats":"heap_memory_usage: 292444368\nnon_heap_memory_usage: 185344040\nloaded_class_count: 18134\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603136833000,"args":{"JVM stats":"heap_memory_usage: 292604160\nnon_heap_memory_usage: 185344040\nloaded_class_count: 18134\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603136837000,"args":{"JVM stats":"heap_memory_usage: 292604160\nnon_heap_memory_usage: 185346432\nloaded_class_count: 18135\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603136838000,"args":{"JVM stats":"heap_memory_usage: 292604160\nnon_heap_memory_usage: 185346432\nloaded_class_count: 18135\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603136844000,"args":{"JVM stats":"heap_memory_usage: 292776288\nnon_heap_memory_usage: 185375856\nloaded_class_count: 18135\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603136848000,"args":{"JVM stats":"heap_memory_usage: 292776288\nnon_heap_memory_usage: 185376560\nloaded_class_count: 18135\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603136851000,"args":{"JVM stats":"heap_memory_usage: 292776288\nnon_heap_memory_usage: 185376592\nloaded_class_count: 18135\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603136852000,"args":{"JVM stats":"heap_memory_usage: 292776288\nnon_heap_memory_usage: 185376592\nloaded_class_count: 18135\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603136857000,"args":{"JVM stats":"heap_memory_usage: 292936080\nnon_heap_memory_usage: 185400400\nloaded_class_count: 18135\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603136873000,"args":{"JVM stats":"heap_memory_usage: 294085320\nnon_heap_memory_usage: 185409104\nloaded_class_count: 18135\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603136875000,"args":{"JVM stats":"heap_memory_usage: 294085320\nnon_heap_memory_usage: 185409104\nloaded_class_count: 18135\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603136914000,"args":{"JVM stats":"heap_memory_usage: 298874416\nnon_heap_memory_usage: 185439008\nloaded_class_count: 18135\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603136916000,"args":{"JVM stats":"heap_memory_usage: 298874416\nnon_heap_memory_usage: 185444904\nloaded_class_count: 18135\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603136920000,"args":{"JVM stats":"heap_memory_usage: 298878528\nnon_heap_memory_usage: 185456328\nloaded_class_count: 18135\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603157533000,"args":{"JVM stats":"heap_memory_usage: 402074624\nnon_heap_memory_usage: 193658136\nloaded_class_count: 18488\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 7\n gc_time: 475\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 1\n gc_time: 620\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603176036000,"args":{"JVM stats":"heap_memory_usage: 539473392\nnon_heap_memory_usage: 198897576\nloaded_class_count: 18515\nthread_count: 32\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 12\n gc_time: 1401\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 2\n gc_time: 3694\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603177975000,"args":{"JVM stats":"heap_memory_usage: 534904176\nnon_heap_memory_usage: 200005832\nloaded_class_count: 18543\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 85\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603177981000,"args":{"JVM stats":"heap_memory_usage: 537464656\nnon_heap_memory_usage: 200015880\nloaded_class_count: 18543\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603177983000,"args":{"JVM stats":"heap_memory_usage: 537464656\nnon_heap_memory_usage: 200015880\nloaded_class_count: 18543\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603177988000,"args":{"JVM stats":"heap_memory_usage: 539571936\nnon_heap_memory_usage: 200017504\nloaded_class_count: 18543\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603177994000,"args":{"JVM stats":"heap_memory_usage: 539710544\nnon_heap_memory_usage: 200023088\nloaded_class_count: 18543\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603177999000,"args":{"JVM stats":"heap_memory_usage: 539802864\nnon_heap_memory_usage: 200024448\nloaded_class_count: 18543\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603178004000,"args":{"JVM stats":"heap_memory_usage: 539802864\nnon_heap_memory_usage: 200024448\nloaded_class_count: 18543\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603178012000,"args":{"JVM stats":"heap_memory_usage: 539886952\nnon_heap_memory_usage: 200027432\nloaded_class_count: 18543\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603178015000,"args":{"JVM stats":"heap_memory_usage: 539999512\nnon_heap_memory_usage: 200031576\nloaded_class_count: 18543\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603178020000,"args":{"JVM stats":"heap_memory_usage: 540055808\nnon_heap_memory_usage: 200039968\nloaded_class_count: 18543\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603178082000,"args":{"JVM stats":"heap_memory_usage: 544669544\nnon_heap_memory_usage: 200048576\nloaded_class_count: 18543\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603178085000,"args":{"JVM stats":"heap_memory_usage: 544669544\nnon_heap_memory_usage: 200049408\nloaded_class_count: 18543\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603181288000,"args":{"JVM stats":"heap_memory_usage: 625739432\nnon_heap_memory_usage: 199930792\nloaded_class_count: 18569\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 3\n gc_time: 323\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603181289000,"args":{"JVM stats":"heap_memory_usage: 627071504\nnon_heap_memory_usage: 199935992\nloaded_class_count: 18569\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603181290000,"args":{"JVM stats":"heap_memory_usage: 627071504\nnon_heap_memory_usage: 199939472\nloaded_class_count: 18569\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1547603181415000,"args":{"JVM stats":"heap_memory_usage: 629243888\nnon_heap_memory_usage: 200264040\nloaded_class_count: 18631\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":1,"tid":1,"id":2,"name":"base plugin project configure","args":{"span_id":"2","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603058476000,"dur":582000},{"pid":1,"tid":1,"id":3,"name":"base plugin project base extension creation","args":{"span_id":"3","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603059059000,"dur":456000},{"pid":1,"tid":1,"id":5,"name":"task manager create tasks","args":{"span_id":"5","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603059516000,"dur":77000},{"pid":1,"tid":1,"id":4,"name":"base plugin project tasks creation","args":{"span_id":"4","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603059516000,"dur":78000},{"pid":1,"tid":1,"id":8,"name":"variant manager create variants","args":{"span_id":"8","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603061257000,"dur":220000},{"pid":1,"tid":1,"id":9,"name":"variant manager create tests tasks","args":{"span_id":"9","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603061477000,"dur":27000},{"pid":1,"tid":1,"id":11,"name":"app task manager create merge manifest task","args":{"span_id":"11","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603061552000,"dur":21000},{"pid":1,"tid":1,"id":12,"name":"app task manager create generate res values task","args":{"span_id":"12","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603061573000,"dur":5000},{"pid":1,"tid":1,"id":13,"name":"app task manager create create renderscript task","args":{"span_id":"13","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603061579000,"dur":9000},{"pid":1,"tid":1,"id":14,"name":"app task manager create merge resources task","args":{"span_id":"14","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603061588000,"dur":64000},{"pid":1,"tid":1,"id":15,"name":"app task manager create merge assets task","args":{"span_id":"15","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603061653000,"dur":9000},{"pid":1,"tid":1,"id":16,"name":"app task manager create build config task","args":{"span_id":"16","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603061663000,"dur":8000},{"pid":1,"tid":1,"id":17,"name":"app task manager create process res task","args":{"span_id":"17","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603061671000,"dur":87000},{"pid":1,"tid":1,"id":18,"name":"app task manager create aidl task","args":{"span_id":"18","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603061759000,"dur":12000},{"pid":1,"tid":1,"id":19,"name":"app task manager create shader task","args":{"span_id":"19","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603061772000,"dur":11000},{"pid":1,"tid":1,"id":20,"name":"app task manager create ndk task","args":{"span_id":"20","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603061784000,"dur":9000},{"pid":1,"tid":1,"id":21,"name":"app task manager create external native build task","args":{"span_id":"21","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603061793000,"dur":2000},{"pid":1,"tid":1,"id":22,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"22","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603061795000,"dur":31000},{"pid":1,"tid":1,"id":23,"name":"app task manager create compile task","args":{"span_id":"23","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603061826000,"dur":84000},{"pid":1,"tid":1,"id":24,"name":"app task manager create packaging task","args":{"span_id":"24","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603061910000,"dur":42000},{"pid":1,"tid":1,"id":25,"name":"app task manager create lint task","args":{"span_id":"25","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603061953000,"dur":3000},{"pid":1,"tid":1,"id":10,"name":"variant manager create tasks for variant","args":{"span_id":"10","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603061504000,"dur":452000},{"pid":1,"tid":1,"id":26,"name":"variant manager create tasks for variant","args":{"span_id":"26","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603061957000,"dur":87000},{"pid":1,"tid":1,"id":28,"name":"app task manager create merge manifest task","args":{"span_id":"28","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062047000,"dur":4000},{"pid":1,"tid":1,"id":29,"name":"app task manager create generate res values task","args":{"span_id":"29","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062051000,"dur":100},{"pid":1,"tid":1,"id":30,"name":"app task manager create create renderscript task","args":{"span_id":"30","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062051000,"dur":1000},{"pid":1,"tid":1,"id":31,"name":"app task manager create merge resources task","args":{"span_id":"31","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062052000,"dur":1000},{"pid":1,"tid":1,"id":32,"name":"app task manager create merge assets task","args":{"span_id":"32","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062053000,"dur":1000},{"pid":1,"tid":1,"id":33,"name":"app task manager create build config task","args":{"span_id":"33","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062054000,"dur":100},{"pid":1,"tid":1,"id":34,"name":"app task manager create process res task","args":{"span_id":"34","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062054000,"dur":4000},{"pid":1,"tid":1,"id":35,"name":"app task manager create aidl task","args":{"span_id":"35","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062058000,"dur":100},{"pid":1,"tid":1,"id":36,"name":"app task manager create shader task","args":{"span_id":"36","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062059000,"dur":1000},{"pid":1,"tid":1,"id":37,"name":"app task manager create ndk task","args":{"span_id":"37","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062061000,"dur":100},{"pid":1,"tid":1,"id":38,"name":"app task manager create external native build task","args":{"span_id":"38","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062062000,"dur":100},{"pid":1,"tid":1,"id":39,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"39","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062062000,"dur":1000},{"pid":1,"tid":1,"id":40,"name":"app task manager create compile task","args":{"span_id":"40","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062064000,"dur":15000},{"pid":1,"tid":1,"id":41,"name":"app task manager create packaging task","args":{"span_id":"41","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062080000,"dur":3000},{"pid":1,"tid":1,"id":42,"name":"app task manager create lint task","args":{"span_id":"42","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062083000,"dur":1000},{"pid":1,"tid":1,"id":27,"name":"variant manager create tasks for variant","args":{"span_id":"27","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062044000,"dur":40000},{"pid":1,"tid":1,"id":43,"name":"variant manager create tasks for variant","args":{"span_id":"43","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603062084000,"dur":12000},{"pid":1,"tid":1,"id":44,"name":"variant manager create tasks for variant","args":{"span_id":"44","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603062096000,"dur":67000},{"pid":1,"tid":1,"id":46,"name":"app task manager create merge manifest task","args":{"span_id":"46","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062166000,"dur":3000},{"pid":1,"tid":1,"id":47,"name":"app task manager create generate res values task","args":{"span_id":"47","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062169000,"dur":100},{"pid":1,"tid":1,"id":48,"name":"app task manager create create renderscript task","args":{"span_id":"48","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062169000,"dur":1000},{"pid":1,"tid":1,"id":49,"name":"app task manager create merge resources task","args":{"span_id":"49","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062170000,"dur":1000},{"pid":1,"tid":1,"id":50,"name":"app task manager create merge assets task","args":{"span_id":"50","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062171000,"dur":1000},{"pid":1,"tid":1,"id":51,"name":"app task manager create build config task","args":{"span_id":"51","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062172000,"dur":100},{"pid":1,"tid":1,"id":52,"name":"app task manager create process res task","args":{"span_id":"52","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062172000,"dur":4000},{"pid":1,"tid":1,"id":53,"name":"app task manager create aidl task","args":{"span_id":"53","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062176000,"dur":1000},{"pid":1,"tid":1,"id":54,"name":"app task manager create shader task","args":{"span_id":"54","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062177000,"dur":1000},{"pid":1,"tid":1,"id":55,"name":"app task manager create ndk task","args":{"span_id":"55","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062178000,"dur":100},{"pid":1,"tid":1,"id":56,"name":"app task manager create external native build task","args":{"span_id":"56","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062178000,"dur":100},{"pid":1,"tid":1,"id":57,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"57","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062178000,"dur":2000},{"pid":1,"tid":1,"id":58,"name":"app task manager create compile task","args":{"span_id":"58","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062180000,"dur":5000},{"pid":1,"tid":1,"id":59,"name":"app task manager create packaging task","args":{"span_id":"59","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062185000,"dur":2000},{"pid":1,"tid":1,"id":60,"name":"app task manager create lint task","args":{"span_id":"60","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062187000,"dur":100},{"pid":1,"tid":1,"id":45,"name":"variant manager create tasks for variant","args":{"span_id":"45","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062163000,"dur":24000},{"pid":1,"tid":1,"id":61,"name":"variant manager create tasks for variant","args":{"span_id":"61","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603062187000,"dur":8000},{"pid":1,"tid":1,"id":63,"name":"app task manager create merge manifest task","args":{"span_id":"63","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062198000,"dur":1000},{"pid":1,"tid":1,"id":64,"name":"app task manager create generate res values task","args":{"span_id":"64","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062199000,"dur":100},{"pid":1,"tid":1,"id":65,"name":"app task manager create create renderscript task","args":{"span_id":"65","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062199000,"dur":1000},{"pid":1,"tid":1,"id":66,"name":"app task manager create merge resources task","args":{"span_id":"66","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062200000,"dur":1000},{"pid":1,"tid":1,"id":67,"name":"app task manager create merge assets task","args":{"span_id":"67","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062201000,"dur":1000},{"pid":1,"tid":1,"id":68,"name":"app task manager create build config task","args":{"span_id":"68","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062202000,"dur":100},{"pid":1,"tid":1,"id":69,"name":"app task manager create process res task","args":{"span_id":"69","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062202000,"dur":3000},{"pid":1,"tid":1,"id":70,"name":"app task manager create aidl task","args":{"span_id":"70","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062205000,"dur":1000},{"pid":1,"tid":1,"id":71,"name":"app task manager create shader task","args":{"span_id":"71","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062206000,"dur":100},{"pid":1,"tid":1,"id":72,"name":"app task manager create ndk task","args":{"span_id":"72","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062206000,"dur":1000},{"pid":1,"tid":1,"id":73,"name":"app task manager create external native build task","args":{"span_id":"73","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062207000,"dur":100},{"pid":1,"tid":1,"id":74,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"74","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062207000,"dur":1000},{"pid":1,"tid":1,"id":75,"name":"app task manager create compile task","args":{"span_id":"75","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062208000,"dur":6000},{"pid":1,"tid":1,"id":76,"name":"app task manager create packaging task","args":{"span_id":"76","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062214000,"dur":2000},{"pid":1,"tid":1,"id":77,"name":"app task manager create lint task","args":{"span_id":"77","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062216000,"dur":100},{"pid":1,"tid":1,"id":62,"name":"variant manager create tasks for variant","args":{"span_id":"62","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062195000,"dur":21000},{"pid":1,"tid":1,"id":78,"name":"variant manager create tasks for variant","args":{"span_id":"78","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603062216000,"dur":8000},{"pid":1,"tid":1,"id":79,"name":"variant manager create tasks for variant","args":{"span_id":"79","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603062224000,"dur":22000},{"pid":1,"tid":1,"id":81,"name":"app task manager create merge manifest task","args":{"span_id":"81","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062248000,"dur":100},{"pid":1,"tid":1,"id":82,"name":"app task manager create generate res values task","args":{"span_id":"82","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062248000,"dur":1000},{"pid":1,"tid":1,"id":83,"name":"app task manager create create renderscript task","args":{"span_id":"83","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062249000,"dur":100},{"pid":1,"tid":1,"id":84,"name":"app task manager create merge resources task","args":{"span_id":"84","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062249000,"dur":1000},{"pid":1,"tid":1,"id":85,"name":"app task manager create merge assets task","args":{"span_id":"85","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062250000,"dur":1000},{"pid":1,"tid":1,"id":86,"name":"app task manager create build config task","args":{"span_id":"86","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062251000,"dur":100},{"pid":1,"tid":1,"id":87,"name":"app task manager create process res task","args":{"span_id":"87","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062251000,"dur":2000},{"pid":1,"tid":1,"id":88,"name":"app task manager create aidl task","args":{"span_id":"88","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062253000,"dur":1000},{"pid":1,"tid":1,"id":89,"name":"app task manager create shader task","args":{"span_id":"89","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062254000,"dur":1000},{"pid":1,"tid":1,"id":90,"name":"app task manager create ndk task","args":{"span_id":"90","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062255000,"dur":1000},{"pid":1,"tid":1,"id":91,"name":"app task manager create external native build task","args":{"span_id":"91","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062256000,"dur":100},{"pid":1,"tid":1,"id":92,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"92","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062256000,"dur":1000},{"pid":1,"tid":1,"id":93,"name":"app task manager create compile task","args":{"span_id":"93","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062257000,"dur":4000},{"pid":1,"tid":1,"id":94,"name":"app task manager create packaging task","args":{"span_id":"94","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062261000,"dur":2000},{"pid":1,"tid":1,"id":95,"name":"app task manager create lint task","args":{"span_id":"95","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062263000,"dur":100},{"pid":1,"tid":1,"id":80,"name":"variant manager create tasks for variant","args":{"span_id":"80","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062246000,"dur":17000},{"pid":1,"tid":1,"id":96,"name":"variant manager create tasks for variant","args":{"span_id":"96","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603062263000,"dur":7000},{"pid":1,"tid":1,"id":98,"name":"app task manager create merge manifest task","args":{"span_id":"98","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062272000,"dur":1000},{"pid":1,"tid":1,"id":99,"name":"app task manager create generate res values task","args":{"span_id":"99","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062273000,"dur":1000},{"pid":1,"tid":1,"id":100,"name":"app task manager create create renderscript task","args":{"span_id":"100","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062274000,"dur":100},{"pid":1,"tid":1,"id":101,"name":"app task manager create merge resources task","args":{"span_id":"101","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062274000,"dur":1000},{"pid":1,"tid":1,"id":102,"name":"app task manager create merge assets task","args":{"span_id":"102","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062275000,"dur":100},{"pid":1,"tid":1,"id":103,"name":"app task manager create build config task","args":{"span_id":"103","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062275000,"dur":1000},{"pid":1,"tid":1,"id":104,"name":"app task manager create process res task","args":{"span_id":"104","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062276000,"dur":2000},{"pid":1,"tid":1,"id":105,"name":"app task manager create aidl task","args":{"span_id":"105","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062278000,"dur":100},{"pid":1,"tid":1,"id":106,"name":"app task manager create shader task","args":{"span_id":"106","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062279000,"dur":100},{"pid":1,"tid":1,"id":107,"name":"app task manager create ndk task","args":{"span_id":"107","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062279000,"dur":100},{"pid":1,"tid":1,"id":108,"name":"app task manager create external native build task","args":{"span_id":"108","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062279000,"dur":100},{"pid":1,"tid":1,"id":109,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"109","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062279000,"dur":1000},{"pid":1,"tid":1,"id":110,"name":"app task manager create compile task","args":{"span_id":"110","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062281000,"dur":4000},{"pid":1,"tid":1,"id":111,"name":"app task manager create packaging task","args":{"span_id":"111","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062285000,"dur":2000},{"pid":1,"tid":1,"id":112,"name":"app task manager create lint task","args":{"span_id":"112","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062287000,"dur":100},{"pid":1,"tid":1,"id":97,"name":"variant manager create tasks for variant","args":{"span_id":"97","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062270000,"dur":17000},{"pid":1,"tid":1,"id":113,"name":"variant manager create tasks for variant","args":{"span_id":"113","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603062287000,"dur":7000},{"pid":1,"tid":1,"id":114,"name":"variant manager create tasks for variant","args":{"span_id":"114","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603062294000,"dur":19000},{"pid":1,"tid":1,"id":116,"name":"app task manager create merge manifest task","args":{"span_id":"116","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062314000,"dur":1000},{"pid":1,"tid":1,"id":117,"name":"app task manager create generate res values task","args":{"span_id":"117","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062315000,"dur":100},{"pid":1,"tid":1,"id":118,"name":"app task manager create create renderscript task","args":{"span_id":"118","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062315000,"dur":100},{"pid":1,"tid":1,"id":119,"name":"app task manager create merge resources task","args":{"span_id":"119","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062315000,"dur":100},{"pid":1,"tid":1,"id":120,"name":"app task manager create merge assets task","args":{"span_id":"120","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062316000,"dur":100},{"pid":1,"tid":1,"id":121,"name":"app task manager create build config task","args":{"span_id":"121","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062316000,"dur":100},{"pid":1,"tid":1,"id":122,"name":"app task manager create process res task","args":{"span_id":"122","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062316000,"dur":2000},{"pid":1,"tid":1,"id":123,"name":"app task manager create aidl task","args":{"span_id":"123","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062318000,"dur":1000},{"pid":1,"tid":1,"id":124,"name":"app task manager create shader task","args":{"span_id":"124","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062319000,"dur":100},{"pid":1,"tid":1,"id":125,"name":"app task manager create ndk task","args":{"span_id":"125","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062319000,"dur":100},{"pid":1,"tid":1,"id":126,"name":"app task manager create external native build task","args":{"span_id":"126","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062319000,"dur":100},{"pid":1,"tid":1,"id":127,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"127","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062320000,"dur":100},{"pid":1,"tid":1,"id":128,"name":"app task manager create compile task","args":{"span_id":"128","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062320000,"dur":5000},{"pid":1,"tid":1,"id":129,"name":"app task manager create packaging task","args":{"span_id":"129","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062325000,"dur":2000},{"pid":1,"tid":1,"id":130,"name":"app task manager create lint task","args":{"span_id":"130","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062327000,"dur":100},{"pid":1,"tid":1,"id":115,"name":"variant manager create tasks for variant","args":{"span_id":"115","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062313000,"dur":14000},{"pid":1,"tid":1,"id":131,"name":"variant manager create tasks for variant","args":{"span_id":"131","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603062327000,"dur":6000},{"pid":1,"tid":1,"id":133,"name":"app task manager create merge manifest task","args":{"span_id":"133","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062335000,"dur":1000},{"pid":1,"tid":1,"id":134,"name":"app task manager create generate res values task","args":{"span_id":"134","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062336000,"dur":100},{"pid":1,"tid":1,"id":135,"name":"app task manager create create renderscript task","args":{"span_id":"135","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062336000,"dur":1000},{"pid":1,"tid":1,"id":136,"name":"app task manager create merge resources task","args":{"span_id":"136","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062337000,"dur":100},{"pid":1,"tid":1,"id":137,"name":"app task manager create merge assets task","args":{"span_id":"137","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062337000,"dur":1000},{"pid":1,"tid":1,"id":138,"name":"app task manager create build config task","args":{"span_id":"138","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062338000,"dur":100},{"pid":1,"tid":1,"id":139,"name":"app task manager create process res task","args":{"span_id":"139","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062338000,"dur":3000},{"pid":1,"tid":1,"id":140,"name":"app task manager create aidl task","args":{"span_id":"140","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062341000,"dur":100},{"pid":1,"tid":1,"id":141,"name":"app task manager create shader task","args":{"span_id":"141","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062341000,"dur":1000},{"pid":1,"tid":1,"id":142,"name":"app task manager create ndk task","args":{"span_id":"142","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062342000,"dur":100},{"pid":1,"tid":1,"id":143,"name":"app task manager create external native build task","args":{"span_id":"143","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062342000,"dur":100},{"pid":1,"tid":1,"id":144,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"144","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062342000,"dur":1000},{"pid":1,"tid":1,"id":145,"name":"app task manager create compile task","args":{"span_id":"145","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062343000,"dur":5000},{"pid":1,"tid":1,"id":146,"name":"app task manager create packaging task","args":{"span_id":"146","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062348000,"dur":2000},{"pid":1,"tid":1,"id":147,"name":"app task manager create lint task","args":{"span_id":"147","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062350000,"dur":100},{"pid":1,"tid":1,"id":132,"name":"variant manager create tasks for variant","args":{"span_id":"132","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062333000,"dur":17000},{"pid":1,"tid":1,"id":148,"name":"variant manager create tasks for variant","args":{"span_id":"148","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603062350000,"dur":7000},{"pid":1,"tid":1,"id":149,"name":"variant manager create tasks for variant","args":{"span_id":"149","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603062357000,"dur":20000},{"pid":1,"tid":1,"id":151,"name":"app task manager create merge manifest task","args":{"span_id":"151","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062379000,"dur":1000},{"pid":1,"tid":1,"id":152,"name":"app task manager create generate res values task","args":{"span_id":"152","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062380000,"dur":100},{"pid":1,"tid":1,"id":153,"name":"app task manager create create renderscript task","args":{"span_id":"153","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062380000,"dur":1000},{"pid":1,"tid":1,"id":154,"name":"app task manager create merge resources task","args":{"span_id":"154","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062381000,"dur":2000},{"pid":1,"tid":1,"id":155,"name":"app task manager create merge assets task","args":{"span_id":"155","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062383000,"dur":100},{"pid":1,"tid":1,"id":156,"name":"app task manager create build config task","args":{"span_id":"156","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062383000,"dur":1000},{"pid":1,"tid":1,"id":157,"name":"app task manager create process res task","args":{"span_id":"157","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062384000,"dur":4000},{"pid":1,"tid":1,"id":158,"name":"app task manager create aidl task","args":{"span_id":"158","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062388000,"dur":1000},{"pid":1,"tid":1,"id":159,"name":"app task manager create shader task","args":{"span_id":"159","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062389000,"dur":100},{"pid":1,"tid":1,"id":160,"name":"app task manager create ndk task","args":{"span_id":"160","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062389000,"dur":1000},{"pid":1,"tid":1,"id":161,"name":"app task manager create external native build task","args":{"span_id":"161","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062390000,"dur":100},{"pid":1,"tid":1,"id":162,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"162","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062390000,"dur":1000},{"pid":1,"tid":1,"id":163,"name":"app task manager create compile task","args":{"span_id":"163","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062391000,"dur":5000},{"pid":1,"tid":1,"id":164,"name":"app task manager create packaging task","args":{"span_id":"164","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062396000,"dur":2000},{"pid":1,"tid":1,"id":165,"name":"app task manager create lint task","args":{"span_id":"165","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062398000,"dur":100},{"pid":1,"tid":1,"id":150,"name":"variant manager create tasks for variant","args":{"span_id":"150","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062377000,"dur":21000},{"pid":1,"tid":1,"id":166,"name":"variant manager create tasks for variant","args":{"span_id":"166","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603062398000,"dur":8000},{"pid":1,"tid":1,"id":168,"name":"app task manager create merge manifest task","args":{"span_id":"168","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062408000,"dur":1000},{"pid":1,"tid":1,"id":169,"name":"app task manager create generate res values task","args":{"span_id":"169","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062409000,"dur":100},{"pid":1,"tid":1,"id":170,"name":"app task manager create create renderscript task","args":{"span_id":"170","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062409000,"dur":100},{"pid":1,"tid":1,"id":171,"name":"app task manager create merge resources task","args":{"span_id":"171","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062409000,"dur":1000},{"pid":1,"tid":1,"id":172,"name":"app task manager create merge assets task","args":{"span_id":"172","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062410000,"dur":100},{"pid":1,"tid":1,"id":173,"name":"app task manager create build config task","args":{"span_id":"173","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062410000,"dur":100},{"pid":1,"tid":1,"id":174,"name":"app task manager create process res task","args":{"span_id":"174","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062410000,"dur":2000},{"pid":1,"tid":1,"id":175,"name":"app task manager create aidl task","args":{"span_id":"175","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062412000,"dur":1000},{"pid":1,"tid":1,"id":176,"name":"app task manager create shader task","args":{"span_id":"176","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062413000,"dur":100},{"pid":1,"tid":1,"id":177,"name":"app task manager create ndk task","args":{"span_id":"177","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062414000,"dur":100},{"pid":1,"tid":1,"id":178,"name":"app task manager create external native build task","args":{"span_id":"178","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062414000,"dur":100},{"pid":1,"tid":1,"id":179,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"179","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062414000,"dur":1000},{"pid":1,"tid":1,"id":180,"name":"app task manager create compile task","args":{"span_id":"180","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062415000,"dur":4000},{"pid":1,"tid":1,"id":181,"name":"app task manager create packaging task","args":{"span_id":"181","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062419000,"dur":1000},{"pid":1,"tid":1,"id":182,"name":"app task manager create lint task","args":{"span_id":"182","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062420000,"dur":100},{"pid":1,"tid":1,"id":167,"name":"variant manager create tasks for variant","args":{"span_id":"167","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062407000,"dur":13000},{"pid":1,"tid":1,"id":183,"name":"variant manager create tasks for variant","args":{"span_id":"183","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603062420000,"dur":6000},{"pid":1,"tid":1,"id":184,"name":"variant manager create tasks for variant","args":{"span_id":"184","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603062426000,"dur":14000},{"pid":1,"tid":1,"id":7,"name":"variant manager create android tasks","args":{"span_id":"7","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603061255000,"dur":1307000},{"pid":1,"tid":1,"id":185,"name":"variant manager external native config values","args":{"span_id":"185","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603062567000,"dur":100},{"pid":1,"tid":1,"id":6,"name":"base plugin create android tasks","args":{"span_id":"6","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603059823000,"dur":2744000},{"pid":1,"tid":1,"id":186,"name":"base plugin project configure","args":{"span_id":"186","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603062682000,"dur":12000},{"pid":1,"tid":1,"id":187,"name":"base plugin project base extension creation","args":{"span_id":"187","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603062694000,"dur":21000},{"pid":1,"tid":1,"id":189,"name":"task manager create tasks","args":{"span_id":"189","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603062715000,"dur":1000},{"pid":1,"tid":1,"id":188,"name":"base plugin project tasks creation","args":{"span_id":"188","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603062715000,"dur":1000},{"pid":1,"tid":1,"id":192,"name":"variant manager create variants","args":{"span_id":"192","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603062895000,"dur":49000},{"pid":1,"tid":1,"id":193,"name":"variant manager create tests tasks","args":{"span_id":"193","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603062944000,"dur":2000},{"pid":1,"tid":1,"id":195,"name":"lib task manager create generate res values task","args":{"span_id":"195","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062949000,"dur":100},{"pid":1,"tid":1,"id":196,"name":"lib task manager create merge manifest task","args":{"span_id":"196","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062950000,"dur":13000},{"pid":1,"tid":1,"id":197,"name":"lib task manager create create renderscript task","args":{"span_id":"197","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062964000,"dur":1000},{"pid":1,"tid":1,"id":198,"name":"lib task manager create merge resources task","args":{"span_id":"198","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062966000,"dur":3000},{"pid":1,"tid":1,"id":199,"name":"lib task manager create merge assets task","args":{"span_id":"199","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062975000,"dur":1000},{"pid":1,"tid":1,"id":200,"name":"lib task manager create build config task","args":{"span_id":"200","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062976000,"dur":1000},{"pid":1,"tid":1,"id":201,"name":"lib task manager create process res task","args":{"span_id":"201","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062978000,"dur":4000},{"pid":1,"tid":1,"id":202,"name":"lib task manager create aidl task","args":{"span_id":"202","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062983000,"dur":1000},{"pid":1,"tid":1,"id":203,"name":"lib task manager create shader task","args":{"span_id":"203","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062984000,"dur":1000},{"pid":1,"tid":1,"id":204,"name":"lib task manager create compile task","args":{"span_id":"204","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062986000,"dur":1000},{"pid":1,"tid":1,"id":205,"name":"lib task manager create ndk task","args":{"span_id":"205","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062988000,"dur":1000},{"pid":1,"tid":1,"id":206,"name":"lib task manager create external native build task","args":{"span_id":"206","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062989000,"dur":100},{"pid":1,"tid":1,"id":207,"name":"lib task manager create packaging task","args":{"span_id":"207","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062991000,"dur":4000},{"pid":1,"tid":1,"id":208,"name":"lib task manager create merge proguard file task","args":{"span_id":"208","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062995000,"dur":18000},{"pid":1,"tid":1,"id":209,"name":"lib task manager create post compilation task","args":{"span_id":"209","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063060000,"dur":31000},{"pid":1,"tid":1,"id":210,"name":"lib task manager create lint task","args":{"span_id":"210","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063093000,"dur":1000},{"pid":1,"tid":1,"id":194,"name":"variant manager create tasks for variant","args":{"span_id":"194","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603062946000,"dur":148000},{"pid":1,"tid":1,"id":211,"name":"variant manager create tasks for variant","args":{"span_id":"211","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603063094000,"dur":6000},{"pid":1,"tid":1,"id":213,"name":"lib task manager create generate res values task","args":{"span_id":"213","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063125000,"dur":100},{"pid":1,"tid":1,"id":214,"name":"lib task manager create merge manifest task","args":{"span_id":"214","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063125000,"dur":1000},{"pid":1,"tid":1,"id":215,"name":"lib task manager create create renderscript task","args":{"span_id":"215","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063126000,"dur":1000},{"pid":1,"tid":1,"id":216,"name":"lib task manager create merge resources task","args":{"span_id":"216","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063127000,"dur":1000},{"pid":1,"tid":1,"id":217,"name":"lib task manager create merge assets task","args":{"span_id":"217","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063128000,"dur":100},{"pid":1,"tid":1,"id":218,"name":"lib task manager create build config task","args":{"span_id":"218","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063128000,"dur":100},{"pid":1,"tid":1,"id":219,"name":"lib task manager create process res task","args":{"span_id":"219","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063128000,"dur":22000},{"pid":1,"tid":1,"id":220,"name":"lib task manager create aidl task","args":{"span_id":"220","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063150000,"dur":100},{"pid":1,"tid":1,"id":221,"name":"lib task manager create shader task","args":{"span_id":"221","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063150000,"dur":1000},{"pid":1,"tid":1,"id":222,"name":"lib task manager create compile task","args":{"span_id":"222","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063152000,"dur":1000},{"pid":1,"tid":1,"id":223,"name":"lib task manager create ndk task","args":{"span_id":"223","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063153000,"dur":100},{"pid":1,"tid":1,"id":224,"name":"lib task manager create external native build task","args":{"span_id":"224","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063153000,"dur":100},{"pid":1,"tid":1,"id":225,"name":"lib task manager create packaging task","args":{"span_id":"225","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063154000,"dur":100},{"pid":1,"tid":1,"id":226,"name":"lib task manager create merge proguard file task","args":{"span_id":"226","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063155000,"dur":100},{"pid":1,"tid":1,"id":227,"name":"lib task manager create post compilation task","args":{"span_id":"227","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063155000,"dur":3000},{"pid":1,"tid":1,"id":228,"name":"lib task manager create lint task","args":{"span_id":"228","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063170000,"dur":100},{"pid":1,"tid":1,"id":212,"name":"variant manager create tasks for variant","args":{"span_id":"212","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063100000,"dur":70000},{"pid":1,"tid":1,"id":229,"name":"variant manager create tasks for variant","args":{"span_id":"229","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603063170000,"dur":5000},{"pid":1,"tid":1,"id":230,"name":"variant manager create tasks for variant","args":{"span_id":"230","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603063175000,"dur":14000},{"pid":1,"tid":1,"id":191,"name":"variant manager create android tasks","args":{"span_id":"191","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603062895000,"dur":306000},{"pid":1,"tid":1,"id":231,"name":"variant manager external native config values","args":{"span_id":"231","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603063202000,"dur":100},{"pid":1,"tid":1,"id":190,"name":"base plugin create android tasks","args":{"span_id":"190","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603062893000,"dur":309000},{"pid":1,"tid":1,"id":232,"name":"base plugin project configure","args":{"span_id":"232","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603063353000,"dur":27000},{"pid":1,"tid":1,"id":233,"name":"base plugin project base extension creation","args":{"span_id":"233","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603063380000,"dur":6000},{"pid":1,"tid":1,"id":235,"name":"task manager create tasks","args":{"span_id":"235","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603063386000,"dur":3000},{"pid":1,"tid":1,"id":234,"name":"base plugin project tasks creation","args":{"span_id":"234","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603063386000,"dur":3000},{"pid":1,"tid":1,"id":238,"name":"variant manager create variants","args":{"span_id":"238","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603063426000,"dur":5000},{"pid":1,"tid":1,"id":239,"name":"variant manager create tests tasks","args":{"span_id":"239","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603063431000,"dur":1000},{"pid":1,"tid":1,"id":241,"name":"lib task manager create generate res values task","args":{"span_id":"241","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063434000,"dur":100},{"pid":1,"tid":1,"id":242,"name":"lib task manager create merge manifest task","args":{"span_id":"242","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063434000,"dur":100},{"pid":1,"tid":1,"id":243,"name":"lib task manager create create renderscript task","args":{"span_id":"243","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063434000,"dur":100},{"pid":1,"tid":1,"id":244,"name":"lib task manager create merge resources task","args":{"span_id":"244","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063434000,"dur":2000},{"pid":1,"tid":1,"id":245,"name":"lib task manager create merge assets task","args":{"span_id":"245","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063436000,"dur":100},{"pid":1,"tid":1,"id":246,"name":"lib task manager create build config task","args":{"span_id":"246","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063436000,"dur":100},{"pid":1,"tid":1,"id":247,"name":"lib task manager create process res task","args":{"span_id":"247","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063436000,"dur":5000},{"pid":1,"tid":1,"id":248,"name":"lib task manager create aidl task","args":{"span_id":"248","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063441000,"dur":1000},{"pid":1,"tid":1,"id":249,"name":"lib task manager create shader task","args":{"span_id":"249","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063442000,"dur":100},{"pid":1,"tid":1,"id":250,"name":"lib task manager create compile task","args":{"span_id":"250","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063442000,"dur":2000},{"pid":1,"tid":1,"id":251,"name":"lib task manager create ndk task","args":{"span_id":"251","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063444000,"dur":100},{"pid":1,"tid":1,"id":252,"name":"lib task manager create external native build task","args":{"span_id":"252","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063445000,"dur":100},{"pid":1,"tid":1,"id":253,"name":"lib task manager create packaging task","args":{"span_id":"253","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063446000,"dur":1000},{"pid":1,"tid":1,"id":254,"name":"lib task manager create merge proguard file task","args":{"span_id":"254","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063447000,"dur":100},{"pid":1,"tid":1,"id":255,"name":"lib task manager create post compilation task","args":{"span_id":"255","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063448000,"dur":3000},{"pid":1,"tid":1,"id":256,"name":"lib task manager create lint task","args":{"span_id":"256","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063451000,"dur":100},{"pid":1,"tid":1,"id":240,"name":"variant manager create tasks for variant","args":{"span_id":"240","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063432000,"dur":19000},{"pid":1,"tid":1,"id":257,"name":"variant manager create tasks for variant","args":{"span_id":"257","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603063451000,"dur":8000},{"pid":1,"tid":1,"id":259,"name":"lib task manager create generate res values task","args":{"span_id":"259","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063460000,"dur":100},{"pid":1,"tid":1,"id":260,"name":"lib task manager create merge manifest task","args":{"span_id":"260","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063460000,"dur":2000},{"pid":1,"tid":1,"id":261,"name":"lib task manager create create renderscript task","args":{"span_id":"261","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063462000,"dur":100},{"pid":1,"tid":1,"id":262,"name":"lib task manager create merge resources task","args":{"span_id":"262","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063462000,"dur":1000},{"pid":1,"tid":1,"id":263,"name":"lib task manager create merge assets task","args":{"span_id":"263","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063463000,"dur":100},{"pid":1,"tid":1,"id":264,"name":"lib task manager create build config task","args":{"span_id":"264","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063463000,"dur":100},{"pid":1,"tid":1,"id":265,"name":"lib task manager create process res task","args":{"span_id":"265","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063463000,"dur":2000},{"pid":1,"tid":1,"id":266,"name":"lib task manager create aidl task","args":{"span_id":"266","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063465000,"dur":1000},{"pid":1,"tid":1,"id":267,"name":"lib task manager create shader task","args":{"span_id":"267","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063466000,"dur":100},{"pid":1,"tid":1,"id":268,"name":"lib task manager create compile task","args":{"span_id":"268","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063466000,"dur":1000},{"pid":1,"tid":1,"id":269,"name":"lib task manager create ndk task","args":{"span_id":"269","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063467000,"dur":100},{"pid":1,"tid":1,"id":270,"name":"lib task manager create external native build task","args":{"span_id":"270","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063467000,"dur":100},{"pid":1,"tid":1,"id":271,"name":"lib task manager create packaging task","args":{"span_id":"271","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063468000,"dur":1000},{"pid":1,"tid":1,"id":272,"name":"lib task manager create merge proguard file task","args":{"span_id":"272","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063469000,"dur":100},{"pid":1,"tid":1,"id":273,"name":"lib task manager create post compilation task","args":{"span_id":"273","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063470000,"dur":2000},{"pid":1,"tid":1,"id":274,"name":"lib task manager create lint task","args":{"span_id":"274","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063472000,"dur":1000},{"pid":1,"tid":1,"id":258,"name":"variant manager create tasks for variant","args":{"span_id":"258","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1547603063459000,"dur":14000},{"pid":1,"tid":1,"id":275,"name":"variant manager create tasks for variant","args":{"span_id":"275","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603063473000,"dur":4000},{"pid":1,"tid":1,"id":276,"name":"variant manager create tasks for variant","args":{"span_id":"276","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603063477000,"dur":13000},{"pid":1,"tid":1,"id":237,"name":"variant manager create android tasks","args":{"span_id":"237","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603063426000,"dur":65000},{"pid":1,"tid":1,"id":277,"name":"variant manager external native config values","args":{"span_id":"277","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603063491000,"dur":100},{"pid":1,"tid":1,"id":236,"name":"base plugin create android tasks","args":{"span_id":"236","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603063423000,"dur":68000},{"pid":1,"tid":0,"id":278,"name":"task: unknown task type","args":{"span_id":"278","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603063803000,"dur":2000},{"pid":1,"tid":0,"id":279,"name":"task: unknown task type","args":{"span_id":"279","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603063830000,"dur":1000},{"pid":1,"tid":0,"id":280,"name":"task: unknown task type","args":{"span_id":"280","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603063832000,"dur":100},{"pid":1,"tid":0,"id":281,"name":"task: check manifest","args":{"span_id":"281","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603063835000,"dur":76000},{"pid":1,"tid":0,"id":282,"name":"task: process manifest","args":{"span_id":"282","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 52\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603063915000,"dur":28000},{"pid":1,"tid":0,"id":283,"name":"task: unknown task type","args":{"span_id":"283","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603063944000,"dur":1000},{"pid":1,"tid":0,"id":284,"name":"task: unknown task type","args":{"span_id":"284","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603063946000,"dur":100},{"pid":1,"tid":0,"id":285,"name":"task: check manifest","args":{"span_id":"285","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603063947000,"dur":4000},{"pid":1,"tid":0,"id":286,"name":"task: process manifest","args":{"span_id":"286","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 52\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603063953000,"dur":28000},{"pid":1,"tid":0,"id":287,"name":"task: app pre build","args":{"span_id":"287","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 92\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603063983000,"dur":30073000},{"pid":1,"tid":0,"id":288,"name":"task: aidl compile","args":{"span_id":"288","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603094058000,"dur":170000},{"pid":1,"tid":0,"id":289,"name":"task: aidl compile","args":{"span_id":"289","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603094230000,"dur":54000},{"pid":1,"tid":0,"id":290,"name":"task: aidl compile","args":{"span_id":"290","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603094298000,"dur":27000},{"pid":1,"tid":0,"id":291,"name":"task: unknown task type","args":{"span_id":"291","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603094326000,"dur":1000},{"pid":1,"tid":0,"id":292,"name":"task: unknown task type","args":{"span_id":"292","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603094333000,"dur":2000},{"pid":1,"tid":0,"id":293,"name":"task: renderscript compile","args":{"span_id":"293","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603094337000,"dur":26000},{"pid":1,"tid":0,"id":294,"name":"task: check manifest","args":{"span_id":"294","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603094367000,"dur":4000},{"pid":1,"tid":0,"id":295,"name":"task: generate build config","args":{"span_id":"295","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603094372000,"dur":5000},{"pid":1,"tid":0,"id":296,"name":"task: prepare lint jar","args":{"span_id":"296","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 119\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603094379000,"dur":5000},{"pid":1,"tid":0,"id":297,"name":"task: generate res values","args":{"span_id":"297","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603094385000,"dur":2000},{"pid":1,"tid":0,"id":298,"name":"task: unknown task type","args":{"span_id":"298","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603094388000,"dur":100},{"pid":1,"tid":0,"id":299,"name":"task: renderscript compile","args":{"span_id":"299","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603094392000,"dur":18000},{"pid":1,"tid":0,"id":300,"name":"task: generate res values","args":{"span_id":"300","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603094412000,"dur":2000},{"pid":1,"tid":0,"id":301,"name":"task: unknown task type","args":{"span_id":"301","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603094415000,"dur":1000},{"pid":1,"tid":0,"id":302,"name":"task: merge resources","args":{"span_id":"302","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603094418000,"dur":61000},{"pid":1,"tid":0,"id":303,"name":"task: renderscript compile","args":{"span_id":"303","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603094481000,"dur":9000},{"pid":1,"tid":0,"id":304,"name":"task: generate res values","args":{"span_id":"304","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603094492000,"dur":2000},{"pid":1,"tid":0,"id":305,"name":"task: unknown task type","args":{"span_id":"305","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603094495000,"dur":100},{"pid":1,"tid":0,"id":306,"name":"task: merge resources","args":{"span_id":"306","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603094498000,"dur":21000},{"pid":1,"tid":0,"id":307,"name":"task: merge resources","args":{"span_id":"307","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603094522000,"dur":432000},{"pid":1,"tid":0,"id":308,"name":"task: compatible screens manifest","args":{"span_id":"308","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 9\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603094955000,"dur":9000},{"pid":1,"tid":0,"id":309,"name":"task: merge manifests","args":{"span_id":"309","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 39\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603094966000,"dur":28000},{"pid":1,"tid":0,"id":310,"name":"task: splits discovery","args":{"span_id":"310","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 87\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603094996000,"dur":2000},{"pid":1,"tid":0,"id":311,"name":"task: platform attr extractor","args":{"span_id":"311","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 109\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603095000000,"dur":3000},{"pid":1,"tid":0,"id":312,"name":"task: platform attr extractor","args":{"span_id":"312","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 109\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603095005000,"dur":4000},{"pid":1,"tid":0,"id":313,"name":"task: process android resources","args":{"span_id":"313","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603095010000,"dur":542000},{"pid":1,"tid":0,"id":314,"name":"task: process android resources","args":{"span_id":"314","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603095554000,"dur":1512000},{"pid":1,"tid":0,"id":315,"name":"task: process android resources","args":{"span_id":"315","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603097070000,"dur":79000},{"pid":1,"tid":0,"id":316,"name":"task: unknown task type","args":{"span_id":"316","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603097151000,"dur":100},{"pid":1,"tid":0,"id":317,"name":"task: generate build config","args":{"span_id":"317","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603097152000,"dur":5000},{"pid":1,"tid":0,"id":318,"name":"task: prepare lint jar","args":{"span_id":"318","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 119\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603097158000,"dur":3000},{"pid":1,"tid":0,"id":319,"name":"task: unknown task type","args":{"span_id":"319","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603097162000,"dur":100},{"pid":1,"tid":0,"id":320,"name":"task: unknown task type","args":{"span_id":"320","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603097163000,"dur":26000},{"pid":1,"tid":0,"id":321,"name":"task: unknown task type","args":{"span_id":"321","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603097203000,"dur":14000},{"pid":1,"tid":0,"id":322,"name":"task: generate build config","args":{"span_id":"322","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603097220000,"dur":7000},{"pid":1,"tid":0,"id":323,"name":"task: prepare lint jar","args":{"span_id":"323","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 119\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603097228000,"dur":2000},{"pid":1,"tid":0,"id":324,"name":"task: unknown task type","args":{"span_id":"324","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603097231000,"dur":100},{"pid":1,"tid":0,"id":325,"name":"task: java pre compile","args":{"span_id":"325","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 76\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603097232000,"dur":15000},{"pid":1,"tid":0,"id":326,"name":"task: android java compile","args":{"span_id":"326","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 3\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603097249000,"dur":77000},{"pid":1,"tid":0,"id":327,"name":"task: unknown task type","args":{"span_id":"327","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603097327000,"dur":1000},{"pid":1,"tid":0,"id":328,"name":"task: transform","args":{"span_id":"328","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603097333000,"dur":6000},{"pid":1,"tid":0,"id":329,"name":"task: java pre compile","args":{"span_id":"329","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 76\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603097341000,"dur":260000},{"pid":1,"tid":0,"id":330,"name":"task: android java compile","args":{"span_id":"330","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 3\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603097603000,"dur":173000},{"pid":1,"tid":0,"id":331,"name":"task: unknown task type","args":{"span_id":"331","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603097777000,"dur":1000},{"pid":1,"tid":0,"id":332,"name":"task: transform","args":{"span_id":"332","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603097780000,"dur":8000},{"pid":1,"tid":0,"id":333,"name":"task: java pre compile","args":{"span_id":"333","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 76\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603097789000,"dur":139000},{"pid":1,"tid":0,"id":334,"name":"task: android java compile","args":{"span_id":"334","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 3\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603097929000,"dur":198000},{"pid":1,"tid":0,"id":335,"name":"task: ndk compile","args":{"span_id":"335","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 43\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603098131000,"dur":2000},{"pid":1,"tid":0,"id":336,"name":"task: unknown task type","args":{"span_id":"336","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603098137000,"dur":100},{"pid":1,"tid":0,"id":337,"name":"task: merge source set folders","args":{"span_id":"337","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603098139000,"dur":11000},{"pid":1,"tid":0,"id":338,"name":"task: shader compile","args":{"span_id":"338","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603098153000,"dur":3000},{"pid":1,"tid":0,"id":339,"name":"task: unknown task type","args":{"span_id":"339","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603098161000,"dur":100},{"pid":1,"tid":0,"id":340,"name":"task: merge source set folders","args":{"span_id":"340","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603098162000,"dur":4000},{"pid":1,"tid":0,"id":341,"name":"task: shader compile","args":{"span_id":"341","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603098167000,"dur":5000},{"pid":1,"tid":0,"id":342,"name":"task: unknown task type","args":{"span_id":"342","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603098173000,"dur":100},{"pid":1,"tid":0,"id":343,"name":"task: merge source set folders","args":{"span_id":"343","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603098175000,"dur":11000},{"pid":1,"tid":0,"id":344,"name":"task: merge source set folders","args":{"span_id":"344","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603098187000,"dur":5000},{"pid":1,"tid":0,"id":345,"name":"task: shader compile","args":{"span_id":"345","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603098193000,"dur":3000},{"pid":1,"tid":0,"id":346,"name":"task: unknown task type","args":{"span_id":"346","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603098198000,"dur":100},{"pid":1,"tid":0,"id":347,"name":"task: merge source set folders","args":{"span_id":"347","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603098200000,"dur":5000},{"pid":1,"tid":0,"id":348,"name":"task: merge source set folders","args":{"span_id":"348","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603098206000,"dur":16000},{"pid":1,"tid":1,"id":350,"name":"transform prep: dex archive builder","args":{"span_id":"350","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 29\nis_incremental: true\n"},"ph":"X","ts":1547603098581000,"dur":85000},{"pid":1,"tid":1,"id":351,"name":"transform: dex archive builder","args":{"span_id":"351","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 29\nis_incremental: true\n"},"ph":"X","ts":1547603098673000,"dur":2148000},{"pid":1,"tid":0,"id":349,"name":"task: transform","args":{"span_id":"349","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603098224000,"dur":2620000},{"pid":1,"tid":1,"id":353,"name":"transform prep: external libs merger","args":{"span_id":"353","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 34\nis_incremental: true\n"},"ph":"X","ts":1547603100878000,"dur":8000},{"pid":1,"tid":1,"id":354,"name":"transform: external libs merger","args":{"span_id":"354","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 34\nis_incremental: true\n"},"ph":"X","ts":1547603100886000,"dur":2000},{"pid":1,"tid":0,"id":352,"name":"task: transform","args":{"span_id":"352","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603100845000,"dur":45000},{"pid":1,"tid":1,"id":356,"name":"transform prep: dex merger","args":{"span_id":"356","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 30\nis_incremental: true\n"},"ph":"X","ts":1547603100918000,"dur":9000},{"pid":1,"tid":1,"id":357,"name":"transform: dex merger","args":{"span_id":"357","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 30\nis_incremental: true\n"},"ph":"X","ts":1547603100927000,"dur":3106000},{"pid":1,"tid":0,"id":355,"name":"task: transform","args":{"span_id":"355","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603100891000,"dur":3235000},{"pid":1,"tid":0,"id":358,"name":"task: merge source set folders","args":{"span_id":"358","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603104129000,"dur":8000},{"pid":1,"tid":0,"id":359,"name":"task: ndk compile","args":{"span_id":"359","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 43\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603104139000,"dur":1000},{"pid":1,"tid":0,"id":360,"name":"task: merge source set folders","args":{"span_id":"360","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603104142000,"dur":8000},{"pid":1,"tid":0,"id":361,"name":"task: transform","args":{"span_id":"361","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603104151000,"dur":8000},{"pid":1,"tid":0,"id":362,"name":"task: transform","args":{"span_id":"362","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603104161000,"dur":6000},{"pid":1,"tid":0,"id":363,"name":"task: ndk compile","args":{"span_id":"363","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 43\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603104169000,"dur":1000},{"pid":1,"tid":0,"id":364,"name":"task: merge source set folders","args":{"span_id":"364","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603104171000,"dur":9000},{"pid":1,"tid":0,"id":365,"name":"task: transform","args":{"span_id":"365","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603104181000,"dur":8000},{"pid":1,"tid":0,"id":366,"name":"task: transform","args":{"span_id":"366","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603104190000,"dur":4000},{"pid":1,"tid":0,"id":367,"name":"task: transform","args":{"span_id":"367","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603104196000,"dur":100000},{"pid":1,"tid":0,"id":368,"name":"task: unknown task type","args":{"span_id":"368","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603104297000,"dur":1000},{"pid":1,"tid":0,"id":369,"name":"task: transform","args":{"span_id":"369","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603104301000,"dur":82000},{"pid":1,"tid":0,"id":370,"name":"task: validate signing","args":{"span_id":"370","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 67\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603104383000,"dur":4000},{"pid":1,"tid":0,"id":371,"name":"task: package application","args":{"span_id":"371","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 45\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603104390000,"dur":2182000},{"pid":1,"tid":0,"id":372,"name":"task: unknown task type","args":{"span_id":"372","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603106572000,"dur":2000},{"pid":1,"tid":0,"id":373,"name":"task: extract proguard files","args":{"span_id":"373","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 20\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603106575000,"dur":5000},{"pid":1,"tid":0,"id":374,"name":"task: unknown task type","args":{"span_id":"374","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603106581000,"dur":100},{"pid":1,"tid":0,"id":375,"name":"task: check manifest","args":{"span_id":"375","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603106582000,"dur":3000},{"pid":1,"tid":0,"id":376,"name":"task: process manifest","args":{"span_id":"376","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 52\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603106586000,"dur":9000},{"pid":1,"tid":0,"id":377,"name":"task: unknown task type","args":{"span_id":"377","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603106596000,"dur":100},{"pid":1,"tid":0,"id":378,"name":"task: check manifest","args":{"span_id":"378","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603106597000,"dur":2000},{"pid":1,"tid":0,"id":379,"name":"task: process manifest","args":{"span_id":"379","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 52\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603106600000,"dur":11000},{"pid":1,"tid":0,"id":380,"name":"task: app pre build","args":{"span_id":"380","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 92\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603106612000,"dur":78000},{"pid":1,"tid":0,"id":381,"name":"task: aidl compile","args":{"span_id":"381","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603106692000,"dur":14000},{"pid":1,"tid":0,"id":382,"name":"task: aidl compile","args":{"span_id":"382","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603106707000,"dur":37000},{"pid":1,"tid":0,"id":383,"name":"task: aidl compile","args":{"span_id":"383","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603106746000,"dur":13000},{"pid":1,"tid":0,"id":384,"name":"task: unknown task type","args":{"span_id":"384","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603106760000,"dur":100},{"pid":1,"tid":0,"id":385,"name":"task: unknown task type","args":{"span_id":"385","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603106761000,"dur":1000},{"pid":1,"tid":0,"id":386,"name":"task: renderscript compile","args":{"span_id":"386","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603106764000,"dur":14000},{"pid":1,"tid":0,"id":387,"name":"task: check manifest","args":{"span_id":"387","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603106779000,"dur":1000},{"pid":1,"tid":0,"id":388,"name":"task: generate build config","args":{"span_id":"388","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603106781000,"dur":3000},{"pid":1,"tid":0,"id":389,"name":"task: generate res values","args":{"span_id":"389","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603106785000,"dur":2000},{"pid":1,"tid":0,"id":390,"name":"task: unknown task type","args":{"span_id":"390","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603106788000,"dur":100},{"pid":1,"tid":0,"id":391,"name":"task: renderscript compile","args":{"span_id":"391","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603106790000,"dur":15000},{"pid":1,"tid":0,"id":392,"name":"task: generate res values","args":{"span_id":"392","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603106806000,"dur":5000},{"pid":1,"tid":0,"id":393,"name":"task: unknown task type","args":{"span_id":"393","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603106812000,"dur":1000},{"pid":1,"tid":0,"id":394,"name":"task: merge resources","args":{"span_id":"394","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603106815000,"dur":131000},{"pid":1,"tid":0,"id":395,"name":"task: renderscript compile","args":{"span_id":"395","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603106948000,"dur":24000},{"pid":1,"tid":0,"id":396,"name":"task: generate res values","args":{"span_id":"396","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603106974000,"dur":2000},{"pid":1,"tid":0,"id":397,"name":"task: unknown task type","args":{"span_id":"397","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603106977000,"dur":100},{"pid":1,"tid":0,"id":398,"name":"task: merge resources","args":{"span_id":"398","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603106979000,"dur":9000},{"pid":1,"tid":0,"id":399,"name":"task: merge resources","args":{"span_id":"399","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603106991000,"dur":508000},{"pid":1,"tid":0,"id":400,"name":"task: compatible screens manifest","args":{"span_id":"400","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 9\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603107508000,"dur":10000},{"pid":1,"tid":0,"id":401,"name":"task: merge manifests","args":{"span_id":"401","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 39\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603107523000,"dur":26000},{"pid":1,"tid":0,"id":402,"name":"task: splits discovery","args":{"span_id":"402","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 87\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603107551000,"dur":4000},{"pid":1,"tid":0,"id":403,"name":"task: process android resources","args":{"span_id":"403","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603107557000,"dur":15000},{"pid":1,"tid":0,"id":404,"name":"task: process android resources","args":{"span_id":"404","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603107573000,"dur":43000},{"pid":1,"tid":0,"id":405,"name":"task: process android resources","args":{"span_id":"405","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603107618000,"dur":33000},{"pid":1,"tid":0,"id":406,"name":"task: unknown task type","args":{"span_id":"406","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603107651000,"dur":1000},{"pid":1,"tid":0,"id":407,"name":"task: generate build config","args":{"span_id":"407","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603107652000,"dur":5000},{"pid":1,"tid":0,"id":408,"name":"task: unknown task type","args":{"span_id":"408","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603107657000,"dur":1000},{"pid":1,"tid":0,"id":409,"name":"task: generate build config","args":{"span_id":"409","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603107659000,"dur":2000},{"pid":1,"tid":0,"id":410,"name":"task: unknown task type","args":{"span_id":"410","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603107662000,"dur":100},{"pid":1,"tid":0,"id":411,"name":"task: java pre compile","args":{"span_id":"411","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 76\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603107663000,"dur":10000},{"pid":1,"tid":0,"id":412,"name":"task: android java compile","args":{"span_id":"412","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 3\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603107677000,"dur":53000},{"pid":1,"tid":0,"id":413,"name":"task: unknown task type","args":{"span_id":"413","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603107733000,"dur":1000},{"pid":1,"tid":0,"id":414,"name":"task: transform","args":{"span_id":"414","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603107737000,"dur":6000},{"pid":1,"tid":0,"id":415,"name":"task: java pre compile","args":{"span_id":"415","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 76\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603107744000,"dur":26000},{"pid":1,"tid":0,"id":416,"name":"task: android java compile","args":{"span_id":"416","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 3\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603107772000,"dur":7124000},{"pid":1,"tid":0,"id":417,"name":"task: unknown task type","args":{"span_id":"417","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603114898000,"dur":7000},{"pid":1,"tid":2,"id":419,"name":"transform prep: unknown transform type","args":{"span_id":"419","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 0\nis_incremental: true\n"},"ph":"X","ts":1547603114915000,"dur":2000},{"pid":1,"tid":2,"id":420,"name":"transform: unknown transform type","args":{"span_id":"420","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 0\nis_incremental: true\n"},"ph":"X","ts":1547603114917000,"dur":82000},{"pid":1,"tid":0,"id":418,"name":"task: transform","args":{"span_id":"418","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603114907000,"dur":95000},{"pid":1,"tid":0,"id":421,"name":"task: java pre compile","args":{"span_id":"421","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 76\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603115003000,"dur":85000},{"pid":1,"tid":0,"id":422,"name":"task: android java compile","args":{"span_id":"422","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 3\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603115089000,"dur":404000},{"pid":1,"tid":0,"id":423,"name":"task: ndk compile","args":{"span_id":"423","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 43\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603115495000,"dur":1000},{"pid":1,"tid":0,"id":424,"name":"task: unknown task type","args":{"span_id":"424","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603115497000,"dur":100},{"pid":1,"tid":0,"id":425,"name":"task: lint per variant","args":{"span_id":"425","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 118\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603115498000,"dur":21316000},{"pid":1,"tid":0,"id":426,"name":"task: merge source set folders","args":{"span_id":"426","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603136815000,"dur":9000},{"pid":1,"tid":0,"id":427,"name":"task: shader compile","args":{"span_id":"427","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603136825000,"dur":3000},{"pid":1,"tid":0,"id":428,"name":"task: unknown task type","args":{"span_id":"428","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603136828000,"dur":100},{"pid":1,"tid":0,"id":429,"name":"task: merge source set folders","args":{"span_id":"429","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603136829000,"dur":4000},{"pid":1,"tid":0,"id":430,"name":"task: shader compile","args":{"span_id":"430","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603136833000,"dur":4000},{"pid":1,"tid":0,"id":431,"name":"task: unknown task type","args":{"span_id":"431","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603136837000,"dur":1000},{"pid":1,"tid":0,"id":432,"name":"task: merge source set folders","args":{"span_id":"432","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603136839000,"dur":5000},{"pid":1,"tid":0,"id":433,"name":"task: merge source set folders","args":{"span_id":"433","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603136845000,"dur":3000},{"pid":1,"tid":0,"id":434,"name":"task: shader compile","args":{"span_id":"434","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603136849000,"dur":2000},{"pid":1,"tid":0,"id":435,"name":"task: unknown task type","args":{"span_id":"435","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603136851000,"dur":100},{"pid":1,"tid":0,"id":436,"name":"task: merge source set folders","args":{"span_id":"436","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603136853000,"dur":4000},{"pid":1,"tid":0,"id":437,"name":"task: merge source set folders","args":{"span_id":"437","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603136858000,"dur":15000},{"pid":1,"tid":0,"id":438,"name":"task: unknown task type","args":{"span_id":"438","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603136873000,"dur":2000},{"pid":1,"tid":0,"id":439,"name":"task: transform","args":{"span_id":"439","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603136876000,"dur":38000},{"pid":1,"tid":0,"id":440,"name":"task: merge file","args":{"span_id":"440","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 38\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603136915000,"dur":1000},{"pid":1,"tid":0,"id":441,"name":"task: merge file","args":{"span_id":"441","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 38\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603136917000,"dur":2000},{"pid":1,"tid":1,"id":443,"name":"transform prep: pro guard","args":{"span_id":"443","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 17\nis_incremental: false\n"},"ph":"X","ts":1547603136991000,"dur":37000},{"pid":1,"tid":1,"id":444,"name":"transform: pro guard","args":{"span_id":"444","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 17\nis_incremental: false\n"},"ph":"X","ts":1547603137028000,"dur":20128000},{"pid":1,"tid":0,"id":442,"name":"task: transform","args":{"span_id":"442","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603136922000,"dur":20611000},{"pid":1,"tid":1,"id":446,"name":"transform prep: dex","args":{"span_id":"446","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 1\nis_incremental: false\n"},"ph":"X","ts":1547603157543000,"dur":1000},{"pid":1,"tid":1,"id":447,"name":"transform: dex","args":{"span_id":"447","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 1\nis_incremental: false\n"},"ph":"X","ts":1547603157544000,"dur":18470000},{"pid":1,"tid":0,"id":445,"name":"task: transform","args":{"span_id":"445","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603157534000,"dur":18502000},{"pid":1,"tid":2,"id":449,"name":"transform prep: shrink resources","args":{"span_id":"449","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 18\nis_incremental: false\n"},"ph":"X","ts":1547603176099000,"dur":100},{"pid":1,"tid":2,"id":450,"name":"transform: shrink resources","args":{"span_id":"450","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 18\nis_incremental: false\n"},"ph":"X","ts":1547603176099000,"dur":1867000},{"pid":1,"tid":0,"id":448,"name":"task: transform","args":{"span_id":"448","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603176037000,"dur":1938000},{"pid":1,"tid":0,"id":451,"name":"task: merge source set folders","args":{"span_id":"451","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603177976000,"dur":5000},{"pid":1,"tid":0,"id":452,"name":"task: ndk compile","args":{"span_id":"452","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 43\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603177982000,"dur":100},{"pid":1,"tid":0,"id":453,"name":"task: merge source set folders","args":{"span_id":"453","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603177983000,"dur":5000},{"pid":1,"tid":0,"id":454,"name":"task: transform","args":{"span_id":"454","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603177989000,"dur":5000},{"pid":1,"tid":0,"id":455,"name":"task: transform","args":{"span_id":"455","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nannotation_processors {\n spec: \"compiler.jar (com.github.bumptech.glide:compiler:4.6.1)\"\n}\nannotation_processors {\n spec: \"dagger-compiler.jar (com.google.dagger:dagger-compiler:2.0.2)\"\n}\nannotation_processors {\n spec: \"eventbus-annotation-processor.jar (org.greenrobot:eventbus-annotation-processor:3.1.1)\"\n}\nannotation_processors {\n spec: \"butterknife-compiler.jar (com.jakewharton:butterknife-compiler:8.8.1)\"\n}\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603177995000,"dur":3000},{"pid":1,"tid":0,"id":456,"name":"task: ndk compile","args":{"span_id":"456","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 43\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603178001000,"dur":3000},{"pid":1,"tid":0,"id":457,"name":"task: merge source set folders","args":{"span_id":"457","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603178006000,"dur":6000},{"pid":1,"tid":0,"id":458,"name":"task: transform","args":{"span_id":"458","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603178013000,"dur":2000},{"pid":1,"tid":0,"id":459,"name":"task: transform","args":{"span_id":"459","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603178016000,"dur":4000},{"pid":1,"tid":0,"id":460,"name":"task: transform","args":{"span_id":"460","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1547603178021000,"dur":61000},{"pid":1,"tid":0,"id":461,"name":"task: validate signing","args":{"span_id":"461","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 67\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603178083000,"dur":2000},{"pid":1,"tid":0,"id":462,"name":"task: package application","args":{"span_id":"462","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 45\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603178086000,"dur":3202000},{"pid":1,"tid":0,"id":463,"name":"task: unknown task type","args":{"span_id":"463","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603181289000,"dur":100},{"pid":1,"tid":0,"id":464,"name":"task: unknown task type","args":{"span_id":"464","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1547603181290000,"dur":100},{"pid":1,"tid":1,"id":465,"name":"base plugin build finished","args":{"span_id":"465","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603181313000,"dur":14000},{"pid":1,"tid":1,"id":466,"name":"base plugin build finished","args":{"span_id":"466","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603181327000,"dur":2000},{"pid":1,"tid":1,"id":467,"name":"base plugin build finished","args":{"span_id":"467","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1547603181329000,"dur":1000}] \ No newline at end of file diff --git a/AndroidLearnProject/build/android-profile/profile-2019-01-16-09-46-21-399.rawproto b/AndroidLearnProject/build/android-profile/profile-2019-01-16-09-46-21-399.rawproto deleted file mode 100644 index 2b139c5..0000000 Binary files a/AndroidLearnProject/build/android-profile/profile-2019-01-16-09-46-21-399.rawproto and /dev/null differ diff --git a/AndroidLearnProject/build/android-profile/profile-2019-01-21-09-48-02-239.json b/AndroidLearnProject/build/android-profile/profile-2019-01-21-09-48-02-239.json deleted file mode 100644 index 26951e8..0000000 --- a/AndroidLearnProject/build/android-profile/profile-2019-01-21-09-48-02-239.json +++ /dev/null @@ -1 +0,0 @@ -[{"pid":0,"ph":"i","name":"Memory sample","ts":1548035273583000,"args":{"JVM stats":"heap_memory_usage: 429552912\nnon_heap_memory_usage: 156155592\nloaded_class_count: 17984\nthread_count: 36\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035275032000,"args":{"JVM stats":"heap_memory_usage: 165613136\nnon_heap_memory_usage: 157427376\nloaded_class_count: 18016\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 65\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035276796000,"args":{"JVM stats":"heap_memory_usage: 191163616\nnon_heap_memory_usage: 157708760\nloaded_class_count: 18016\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277044000,"args":{"JVM stats":"heap_memory_usage: 194422608\nnon_heap_memory_usage: 157710696\nloaded_class_count: 18016\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277141000,"args":{"JVM stats":"heap_memory_usage: 196051520\nnon_heap_memory_usage: 157719152\nloaded_class_count: 18016\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277142000,"args":{"JVM stats":"heap_memory_usage: 196051520\nnon_heap_memory_usage: 157720048\nloaded_class_count: 18016\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277143000,"args":{"JVM stats":"heap_memory_usage: 196051520\nnon_heap_memory_usage: 157720048\nloaded_class_count: 18016\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277207000,"args":{"JVM stats":"heap_memory_usage: 201340304\nnon_heap_memory_usage: 157700816\nloaded_class_count: 18018\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277231000,"args":{"JVM stats":"heap_memory_usage: 202197888\nnon_heap_memory_usage: 157268112\nloaded_class_count: 18018\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277234000,"args":{"JVM stats":"heap_memory_usage: 202197888\nnon_heap_memory_usage: 157261880\nloaded_class_count: 18018\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277241000,"args":{"JVM stats":"heap_memory_usage: 202197888\nnon_heap_memory_usage: 156978456\nloaded_class_count: 18018\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277243000,"args":{"JVM stats":"heap_memory_usage: 202197888\nnon_heap_memory_usage: 156881352\nloaded_class_count: 18018\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277245000,"args":{"JVM stats":"heap_memory_usage: 202740712\nnon_heap_memory_usage: 156718472\nloaded_class_count: 18018\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277246000,"args":{"JVM stats":"heap_memory_usage: 202740712\nnon_heap_memory_usage: 156720584\nloaded_class_count: 18018\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277255000,"args":{"JVM stats":"heap_memory_usage: 203287616\nnon_heap_memory_usage: 156738688\nloaded_class_count: 18018\nthread_count: 33\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277280000,"args":{"JVM stats":"heap_memory_usage: 207087496\nnon_heap_memory_usage: 156744176\nloaded_class_count: 18019\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277300000,"args":{"JVM stats":"heap_memory_usage: 207937984\nnon_heap_memory_usage: 156779384\nloaded_class_count: 18021\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277378000,"args":{"JVM stats":"heap_memory_usage: 217239072\nnon_heap_memory_usage: 156808704\nloaded_class_count: 18021\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277383000,"args":{"JVM stats":"heap_memory_usage: 218093552\nnon_heap_memory_usage: 156816408\nloaded_class_count: 18021\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277385000,"args":{"JVM stats":"heap_memory_usage: 218093552\nnon_heap_memory_usage: 156819968\nloaded_class_count: 18021\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277386000,"args":{"JVM stats":"heap_memory_usage: 218093552\nnon_heap_memory_usage: 156819968\nloaded_class_count: 18021\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277387000,"args":{"JVM stats":"heap_memory_usage: 218093552\nnon_heap_memory_usage: 156824128\nloaded_class_count: 18021\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277392000,"args":{"JVM stats":"heap_memory_usage: 218093552\nnon_heap_memory_usage: 156843992\nloaded_class_count: 18024\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277416000,"args":{"JVM stats":"heap_memory_usage: 218093552\nnon_heap_memory_usage: 156860040\nloaded_class_count: 18024\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277620000,"args":{"JVM stats":"heap_memory_usage: 234754152\nnon_heap_memory_usage: 156904360\nloaded_class_count: 18025\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277656000,"args":{"JVM stats":"heap_memory_usage: 235997072\nnon_heap_memory_usage: 156920904\nloaded_class_count: 18028\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277676000,"args":{"JVM stats":"heap_memory_usage: 241051464\nnon_heap_memory_usage: 156931464\nloaded_class_count: 18028\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277677000,"args":{"JVM stats":"heap_memory_usage: 241051464\nnon_heap_memory_usage: 156932168\nloaded_class_count: 18028\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277680000,"args":{"JVM stats":"heap_memory_usage: 241051464\nnon_heap_memory_usage: 156934728\nloaded_class_count: 18028\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277708000,"args":{"JVM stats":"heap_memory_usage: 242294744\nnon_heap_memory_usage: 156981248\nloaded_class_count: 18039\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277712000,"args":{"JVM stats":"heap_memory_usage: 242294744\nnon_heap_memory_usage: 156985528\nloaded_class_count: 18039\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277722000,"args":{"JVM stats":"heap_memory_usage: 242294744\nnon_heap_memory_usage: 157032712\nloaded_class_count: 18048\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277724000,"args":{"JVM stats":"heap_memory_usage: 242294744\nnon_heap_memory_usage: 157032712\nloaded_class_count: 18048\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277728000,"args":{"JVM stats":"heap_memory_usage: 242837568\nnon_heap_memory_usage: 157042824\nloaded_class_count: 18049\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277730000,"args":{"JVM stats":"heap_memory_usage: 242837568\nnon_heap_memory_usage: 157043656\nloaded_class_count: 18049\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277753000,"args":{"JVM stats":"heap_memory_usage: 244623688\nnon_heap_memory_usage: 157045184\nloaded_class_count: 18049\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277755000,"args":{"JVM stats":"heap_memory_usage: 244623688\nnon_heap_memory_usage: 157046824\nloaded_class_count: 18049\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277758000,"args":{"JVM stats":"heap_memory_usage: 244623688\nnon_heap_memory_usage: 157046824\nloaded_class_count: 18049\nthread_count: 34\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035277987000,"args":{"JVM stats":"heap_memory_usage: 273218048\nnon_heap_memory_usage: 157276688\nloaded_class_count: 18059\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035279782000,"args":{"JVM stats":"heap_memory_usage: 436234888\nnon_heap_memory_usage: 158115952\nloaded_class_count: 18059\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035279789000,"args":{"JVM stats":"heap_memory_usage: 437353256\nnon_heap_memory_usage: 158123864\nloaded_class_count: 18060\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035279894000,"args":{"JVM stats":"heap_memory_usage: 451272496\nnon_heap_memory_usage: 158215200\nloaded_class_count: 18062\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035279898000,"args":{"JVM stats":"heap_memory_usage: 451815432\nnon_heap_memory_usage: 158233400\nloaded_class_count: 18063\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035279907000,"args":{"JVM stats":"heap_memory_usage: 453443872\nnon_heap_memory_usage: 158253112\nloaded_class_count: 18063\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035279908000,"args":{"JVM stats":"heap_memory_usage: 453986664\nnon_heap_memory_usage: 158253112\nloaded_class_count: 18063\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035279914000,"args":{"JVM stats":"heap_memory_usage: 456158096\nnon_heap_memory_usage: 158254512\nloaded_class_count: 18063\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035280976000,"args":{"JVM stats":"heap_memory_usage: 167882648\nnon_heap_memory_usage: 158326160\nloaded_class_count: 18069\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 60\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 1\n gc_time: 588\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035282223000,"args":{"JVM stats":"heap_memory_usage: 212956400\nnon_heap_memory_usage: 158663216\nloaded_class_count: 18069\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035282224000,"args":{"JVM stats":"heap_memory_usage: 212956400\nnon_heap_memory_usage: 158663216\nloaded_class_count: 18069\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035282225000,"args":{"JVM stats":"heap_memory_usage: 212956400\nnon_heap_memory_usage: 158667536\nloaded_class_count: 18069\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035282239000,"args":{"JVM stats":"heap_memory_usage: 212956400\nnon_heap_memory_usage: 158667824\nloaded_class_count: 18069\nthread_count: 39\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":1,"tid":1,"id":2,"name":"base plugin project configure","args":{"span_id":"2","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035273584000,"dur":23000},{"pid":1,"tid":1,"id":3,"name":"base plugin project base extension creation","args":{"span_id":"3","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035273607000,"dur":11000},{"pid":1,"tid":1,"id":5,"name":"task manager create tasks","args":{"span_id":"5","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035273618000,"dur":21000},{"pid":1,"tid":1,"id":4,"name":"base plugin project tasks creation","args":{"span_id":"4","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035273618000,"dur":21000},{"pid":1,"tid":1,"id":8,"name":"variant manager create variants","args":{"span_id":"8","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274293000,"dur":65000},{"pid":1,"tid":1,"id":9,"name":"variant manager create tests tasks","args":{"span_id":"9","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274358000,"dur":1000},{"pid":1,"tid":1,"id":11,"name":"app task manager create merge manifest task","args":{"span_id":"11","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274361000,"dur":1000},{"pid":1,"tid":1,"id":12,"name":"app task manager create generate res values task","args":{"span_id":"12","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274362000,"dur":1000},{"pid":1,"tid":1,"id":13,"name":"app task manager create create renderscript task","args":{"span_id":"13","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274363000,"dur":100},{"pid":1,"tid":1,"id":14,"name":"app task manager create merge resources task","args":{"span_id":"14","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274363000,"dur":1000},{"pid":1,"tid":1,"id":15,"name":"app task manager create merge assets task","args":{"span_id":"15","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274364000,"dur":1000},{"pid":1,"tid":1,"id":16,"name":"app task manager create build config task","args":{"span_id":"16","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274365000,"dur":100},{"pid":1,"tid":1,"id":17,"name":"app task manager create process res task","args":{"span_id":"17","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274365000,"dur":6000},{"pid":1,"tid":1,"id":18,"name":"app task manager create aidl task","args":{"span_id":"18","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274371000,"dur":1000},{"pid":1,"tid":1,"id":19,"name":"app task manager create shader task","args":{"span_id":"19","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274372000,"dur":2000},{"pid":1,"tid":1,"id":20,"name":"app task manager create ndk task","args":{"span_id":"20","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274374000,"dur":1000},{"pid":1,"tid":1,"id":21,"name":"app task manager create external native build task","args":{"span_id":"21","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274375000,"dur":100},{"pid":1,"tid":1,"id":22,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"22","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274375000,"dur":1000},{"pid":1,"tid":1,"id":23,"name":"app task manager create compile task","args":{"span_id":"23","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274376000,"dur":5000},{"pid":1,"tid":1,"id":24,"name":"app task manager create packaging task","args":{"span_id":"24","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274381000,"dur":3000},{"pid":1,"tid":1,"id":25,"name":"app task manager create lint task","args":{"span_id":"25","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274384000,"dur":1000},{"pid":1,"tid":1,"id":10,"name":"variant manager create tasks for variant","args":{"span_id":"10","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274359000,"dur":26000},{"pid":1,"tid":1,"id":26,"name":"variant manager create tasks for variant","args":{"span_id":"26","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274385000,"dur":5000},{"pid":1,"tid":1,"id":28,"name":"app task manager create merge manifest task","args":{"span_id":"28","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274390000,"dur":1000},{"pid":1,"tid":1,"id":29,"name":"app task manager create generate res values task","args":{"span_id":"29","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274391000,"dur":100},{"pid":1,"tid":1,"id":30,"name":"app task manager create create renderscript task","args":{"span_id":"30","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274391000,"dur":100},{"pid":1,"tid":1,"id":31,"name":"app task manager create merge resources task","args":{"span_id":"31","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274391000,"dur":100},{"pid":1,"tid":1,"id":32,"name":"app task manager create merge assets task","args":{"span_id":"32","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274391000,"dur":100},{"pid":1,"tid":1,"id":33,"name":"app task manager create build config task","args":{"span_id":"33","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274391000,"dur":100},{"pid":1,"tid":1,"id":34,"name":"app task manager create process res task","args":{"span_id":"34","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274391000,"dur":2000},{"pid":1,"tid":1,"id":35,"name":"app task manager create aidl task","args":{"span_id":"35","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274393000,"dur":100},{"pid":1,"tid":1,"id":36,"name":"app task manager create shader task","args":{"span_id":"36","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274393000,"dur":100},{"pid":1,"tid":1,"id":37,"name":"app task manager create ndk task","args":{"span_id":"37","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274393000,"dur":100},{"pid":1,"tid":1,"id":38,"name":"app task manager create external native build task","args":{"span_id":"38","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274393000,"dur":100},{"pid":1,"tid":1,"id":39,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"39","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274393000,"dur":1000},{"pid":1,"tid":1,"id":40,"name":"app task manager create compile task","args":{"span_id":"40","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274394000,"dur":3000},{"pid":1,"tid":1,"id":41,"name":"app task manager create packaging task","args":{"span_id":"41","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274397000,"dur":1000},{"pid":1,"tid":1,"id":42,"name":"app task manager create lint task","args":{"span_id":"42","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274398000,"dur":100},{"pid":1,"tid":1,"id":27,"name":"variant manager create tasks for variant","args":{"span_id":"27","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274390000,"dur":8000},{"pid":1,"tid":1,"id":43,"name":"variant manager create tasks for variant","args":{"span_id":"43","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274398000,"dur":6000},{"pid":1,"tid":1,"id":44,"name":"variant manager create tasks for variant","args":{"span_id":"44","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274404000,"dur":11000},{"pid":1,"tid":1,"id":46,"name":"app task manager create merge manifest task","args":{"span_id":"46","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274416000,"dur":2000},{"pid":1,"tid":1,"id":47,"name":"app task manager create generate res values task","args":{"span_id":"47","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274418000,"dur":100},{"pid":1,"tid":1,"id":48,"name":"app task manager create create renderscript task","args":{"span_id":"48","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274418000,"dur":100},{"pid":1,"tid":1,"id":49,"name":"app task manager create merge resources task","args":{"span_id":"49","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274418000,"dur":1000},{"pid":1,"tid":1,"id":50,"name":"app task manager create merge assets task","args":{"span_id":"50","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274419000,"dur":100},{"pid":1,"tid":1,"id":51,"name":"app task manager create build config task","args":{"span_id":"51","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274419000,"dur":100},{"pid":1,"tid":1,"id":52,"name":"app task manager create process res task","args":{"span_id":"52","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274419000,"dur":2000},{"pid":1,"tid":1,"id":53,"name":"app task manager create aidl task","args":{"span_id":"53","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274421000,"dur":100},{"pid":1,"tid":1,"id":54,"name":"app task manager create shader task","args":{"span_id":"54","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274421000,"dur":100},{"pid":1,"tid":1,"id":55,"name":"app task manager create ndk task","args":{"span_id":"55","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274421000,"dur":1000},{"pid":1,"tid":1,"id":56,"name":"app task manager create external native build task","args":{"span_id":"56","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274422000,"dur":100},{"pid":1,"tid":1,"id":57,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"57","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274422000,"dur":100},{"pid":1,"tid":1,"id":58,"name":"app task manager create compile task","args":{"span_id":"58","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274422000,"dur":3000},{"pid":1,"tid":1,"id":59,"name":"app task manager create packaging task","args":{"span_id":"59","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274425000,"dur":10000},{"pid":1,"tid":1,"id":60,"name":"app task manager create lint task","args":{"span_id":"60","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274435000,"dur":1000},{"pid":1,"tid":1,"id":45,"name":"variant manager create tasks for variant","args":{"span_id":"45","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274415000,"dur":21000},{"pid":1,"tid":1,"id":61,"name":"variant manager create tasks for variant","args":{"span_id":"61","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274436000,"dur":9000},{"pid":1,"tid":1,"id":63,"name":"app task manager create merge manifest task","args":{"span_id":"63","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274445000,"dur":1000},{"pid":1,"tid":1,"id":64,"name":"app task manager create generate res values task","args":{"span_id":"64","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274446000,"dur":100},{"pid":1,"tid":1,"id":65,"name":"app task manager create create renderscript task","args":{"span_id":"65","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274446000,"dur":100},{"pid":1,"tid":1,"id":66,"name":"app task manager create merge resources task","args":{"span_id":"66","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274446000,"dur":1000},{"pid":1,"tid":1,"id":67,"name":"app task manager create merge assets task","args":{"span_id":"67","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274447000,"dur":100},{"pid":1,"tid":1,"id":68,"name":"app task manager create build config task","args":{"span_id":"68","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274447000,"dur":100},{"pid":1,"tid":1,"id":69,"name":"app task manager create process res task","args":{"span_id":"69","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274447000,"dur":1000},{"pid":1,"tid":1,"id":70,"name":"app task manager create aidl task","args":{"span_id":"70","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274448000,"dur":1000},{"pid":1,"tid":1,"id":71,"name":"app task manager create shader task","args":{"span_id":"71","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274449000,"dur":100},{"pid":1,"tid":1,"id":72,"name":"app task manager create ndk task","args":{"span_id":"72","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274449000,"dur":100},{"pid":1,"tid":1,"id":73,"name":"app task manager create external native build task","args":{"span_id":"73","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274449000,"dur":100},{"pid":1,"tid":1,"id":74,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"74","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274449000,"dur":1000},{"pid":1,"tid":1,"id":75,"name":"app task manager create compile task","args":{"span_id":"75","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274450000,"dur":4000},{"pid":1,"tid":1,"id":76,"name":"app task manager create packaging task","args":{"span_id":"76","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274454000,"dur":1000},{"pid":1,"tid":1,"id":77,"name":"app task manager create lint task","args":{"span_id":"77","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274455000,"dur":100},{"pid":1,"tid":1,"id":62,"name":"variant manager create tasks for variant","args":{"span_id":"62","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274445000,"dur":10000},{"pid":1,"tid":1,"id":78,"name":"variant manager create tasks for variant","args":{"span_id":"78","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274455000,"dur":15000},{"pid":1,"tid":1,"id":79,"name":"variant manager create tasks for variant","args":{"span_id":"79","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274470000,"dur":13000},{"pid":1,"tid":1,"id":81,"name":"app task manager create merge manifest task","args":{"span_id":"81","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274485000,"dur":100},{"pid":1,"tid":1,"id":82,"name":"app task manager create generate res values task","args":{"span_id":"82","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274485000,"dur":100},{"pid":1,"tid":1,"id":83,"name":"app task manager create create renderscript task","args":{"span_id":"83","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274485000,"dur":100},{"pid":1,"tid":1,"id":84,"name":"app task manager create merge resources task","args":{"span_id":"84","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274485000,"dur":1000},{"pid":1,"tid":1,"id":85,"name":"app task manager create merge assets task","args":{"span_id":"85","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274486000,"dur":100},{"pid":1,"tid":1,"id":86,"name":"app task manager create build config task","args":{"span_id":"86","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274486000,"dur":1000},{"pid":1,"tid":1,"id":87,"name":"app task manager create process res task","args":{"span_id":"87","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274487000,"dur":1000},{"pid":1,"tid":1,"id":88,"name":"app task manager create aidl task","args":{"span_id":"88","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274488000,"dur":100},{"pid":1,"tid":1,"id":89,"name":"app task manager create shader task","args":{"span_id":"89","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274488000,"dur":100},{"pid":1,"tid":1,"id":90,"name":"app task manager create ndk task","args":{"span_id":"90","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274488000,"dur":100},{"pid":1,"tid":1,"id":91,"name":"app task manager create external native build task","args":{"span_id":"91","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274488000,"dur":100},{"pid":1,"tid":1,"id":92,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"92","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274488000,"dur":1000},{"pid":1,"tid":1,"id":93,"name":"app task manager create compile task","args":{"span_id":"93","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274489000,"dur":2000},{"pid":1,"tid":1,"id":94,"name":"app task manager create packaging task","args":{"span_id":"94","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274491000,"dur":1000},{"pid":1,"tid":1,"id":95,"name":"app task manager create lint task","args":{"span_id":"95","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274492000,"dur":100},{"pid":1,"tid":1,"id":80,"name":"variant manager create tasks for variant","args":{"span_id":"80","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274483000,"dur":9000},{"pid":1,"tid":1,"id":96,"name":"variant manager create tasks for variant","args":{"span_id":"96","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274492000,"dur":5000},{"pid":1,"tid":1,"id":98,"name":"app task manager create merge manifest task","args":{"span_id":"98","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274497000,"dur":1000},{"pid":1,"tid":1,"id":99,"name":"app task manager create generate res values task","args":{"span_id":"99","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274498000,"dur":100},{"pid":1,"tid":1,"id":100,"name":"app task manager create create renderscript task","args":{"span_id":"100","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274498000,"dur":100},{"pid":1,"tid":1,"id":101,"name":"app task manager create merge resources task","args":{"span_id":"101","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274498000,"dur":100},{"pid":1,"tid":1,"id":102,"name":"app task manager create merge assets task","args":{"span_id":"102","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274498000,"dur":100},{"pid":1,"tid":1,"id":103,"name":"app task manager create build config task","args":{"span_id":"103","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274498000,"dur":100},{"pid":1,"tid":1,"id":104,"name":"app task manager create process res task","args":{"span_id":"104","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274498000,"dur":4000},{"pid":1,"tid":1,"id":105,"name":"app task manager create aidl task","args":{"span_id":"105","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274502000,"dur":100},{"pid":1,"tid":1,"id":106,"name":"app task manager create shader task","args":{"span_id":"106","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274503000,"dur":100},{"pid":1,"tid":1,"id":107,"name":"app task manager create ndk task","args":{"span_id":"107","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274503000,"dur":100},{"pid":1,"tid":1,"id":108,"name":"app task manager create external native build task","args":{"span_id":"108","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274503000,"dur":100},{"pid":1,"tid":1,"id":109,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"109","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274503000,"dur":100},{"pid":1,"tid":1,"id":110,"name":"app task manager create compile task","args":{"span_id":"110","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274503000,"dur":3000},{"pid":1,"tid":1,"id":111,"name":"app task manager create packaging task","args":{"span_id":"111","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274506000,"dur":1000},{"pid":1,"tid":1,"id":112,"name":"app task manager create lint task","args":{"span_id":"112","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274507000,"dur":1000},{"pid":1,"tid":1,"id":97,"name":"variant manager create tasks for variant","args":{"span_id":"97","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274497000,"dur":11000},{"pid":1,"tid":1,"id":113,"name":"variant manager create tasks for variant","args":{"span_id":"113","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274508000,"dur":87000},{"pid":1,"tid":1,"id":114,"name":"variant manager create tasks for variant","args":{"span_id":"114","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274595000,"dur":49000},{"pid":1,"tid":1,"id":116,"name":"app task manager create merge manifest task","args":{"span_id":"116","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274647000,"dur":100},{"pid":1,"tid":1,"id":117,"name":"app task manager create generate res values task","args":{"span_id":"117","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274647000,"dur":100},{"pid":1,"tid":1,"id":118,"name":"app task manager create create renderscript task","args":{"span_id":"118","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274647000,"dur":1000},{"pid":1,"tid":1,"id":119,"name":"app task manager create merge resources task","args":{"span_id":"119","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274648000,"dur":100},{"pid":1,"tid":1,"id":120,"name":"app task manager create merge assets task","args":{"span_id":"120","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274648000,"dur":100},{"pid":1,"tid":1,"id":121,"name":"app task manager create build config task","args":{"span_id":"121","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274648000,"dur":100},{"pid":1,"tid":1,"id":122,"name":"app task manager create process res task","args":{"span_id":"122","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274648000,"dur":1000},{"pid":1,"tid":1,"id":123,"name":"app task manager create aidl task","args":{"span_id":"123","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274649000,"dur":1000},{"pid":1,"tid":1,"id":124,"name":"app task manager create shader task","args":{"span_id":"124","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274650000,"dur":100},{"pid":1,"tid":1,"id":125,"name":"app task manager create ndk task","args":{"span_id":"125","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274650000,"dur":100},{"pid":1,"tid":1,"id":126,"name":"app task manager create external native build task","args":{"span_id":"126","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274650000,"dur":100},{"pid":1,"tid":1,"id":127,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"127","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274650000,"dur":1000},{"pid":1,"tid":1,"id":128,"name":"app task manager create compile task","args":{"span_id":"128","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274651000,"dur":2000},{"pid":1,"tid":1,"id":129,"name":"app task manager create packaging task","args":{"span_id":"129","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274653000,"dur":1000},{"pid":1,"tid":1,"id":130,"name":"app task manager create lint task","args":{"span_id":"130","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274654000,"dur":100},{"pid":1,"tid":1,"id":115,"name":"variant manager create tasks for variant","args":{"span_id":"115","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274644000,"dur":10000},{"pid":1,"tid":1,"id":131,"name":"variant manager create tasks for variant","args":{"span_id":"131","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274654000,"dur":4000},{"pid":1,"tid":1,"id":133,"name":"app task manager create merge manifest task","args":{"span_id":"133","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274663000,"dur":100},{"pid":1,"tid":1,"id":134,"name":"app task manager create generate res values task","args":{"span_id":"134","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274663000,"dur":100},{"pid":1,"tid":1,"id":135,"name":"app task manager create create renderscript task","args":{"span_id":"135","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274663000,"dur":1000},{"pid":1,"tid":1,"id":136,"name":"app task manager create merge resources task","args":{"span_id":"136","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274664000,"dur":100},{"pid":1,"tid":1,"id":137,"name":"app task manager create merge assets task","args":{"span_id":"137","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274664000,"dur":100},{"pid":1,"tid":1,"id":138,"name":"app task manager create build config task","args":{"span_id":"138","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274664000,"dur":100},{"pid":1,"tid":1,"id":139,"name":"app task manager create process res task","args":{"span_id":"139","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274664000,"dur":1000},{"pid":1,"tid":1,"id":140,"name":"app task manager create aidl task","args":{"span_id":"140","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274665000,"dur":100},{"pid":1,"tid":1,"id":141,"name":"app task manager create shader task","args":{"span_id":"141","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274665000,"dur":100},{"pid":1,"tid":1,"id":142,"name":"app task manager create ndk task","args":{"span_id":"142","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274665000,"dur":1000},{"pid":1,"tid":1,"id":143,"name":"app task manager create external native build task","args":{"span_id":"143","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274666000,"dur":100},{"pid":1,"tid":1,"id":144,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"144","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274666000,"dur":100},{"pid":1,"tid":1,"id":145,"name":"app task manager create compile task","args":{"span_id":"145","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274666000,"dur":2000},{"pid":1,"tid":1,"id":146,"name":"app task manager create packaging task","args":{"span_id":"146","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274668000,"dur":1000},{"pid":1,"tid":1,"id":147,"name":"app task manager create lint task","args":{"span_id":"147","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274669000,"dur":100},{"pid":1,"tid":1,"id":132,"name":"variant manager create tasks for variant","args":{"span_id":"132","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274658000,"dur":11000},{"pid":1,"tid":1,"id":148,"name":"variant manager create tasks for variant","args":{"span_id":"148","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274669000,"dur":6000},{"pid":1,"tid":1,"id":149,"name":"variant manager create tasks for variant","args":{"span_id":"149","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274675000,"dur":8000},{"pid":1,"tid":1,"id":151,"name":"app task manager create merge manifest task","args":{"span_id":"151","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274684000,"dur":1000},{"pid":1,"tid":1,"id":152,"name":"app task manager create generate res values task","args":{"span_id":"152","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274685000,"dur":1000},{"pid":1,"tid":1,"id":153,"name":"app task manager create create renderscript task","args":{"span_id":"153","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274686000,"dur":100},{"pid":1,"tid":1,"id":154,"name":"app task manager create merge resources task","args":{"span_id":"154","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274686000,"dur":1000},{"pid":1,"tid":1,"id":155,"name":"app task manager create merge assets task","args":{"span_id":"155","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274687000,"dur":1000},{"pid":1,"tid":1,"id":156,"name":"app task manager create build config task","args":{"span_id":"156","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274688000,"dur":1000},{"pid":1,"tid":1,"id":157,"name":"app task manager create process res task","args":{"span_id":"157","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274689000,"dur":1000},{"pid":1,"tid":1,"id":158,"name":"app task manager create aidl task","args":{"span_id":"158","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274690000,"dur":100},{"pid":1,"tid":1,"id":159,"name":"app task manager create shader task","args":{"span_id":"159","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274690000,"dur":1000},{"pid":1,"tid":1,"id":160,"name":"app task manager create ndk task","args":{"span_id":"160","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274691000,"dur":100},{"pid":1,"tid":1,"id":161,"name":"app task manager create external native build task","args":{"span_id":"161","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274691000,"dur":100},{"pid":1,"tid":1,"id":162,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"162","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274691000,"dur":100},{"pid":1,"tid":1,"id":163,"name":"app task manager create compile task","args":{"span_id":"163","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274691000,"dur":2000},{"pid":1,"tid":1,"id":164,"name":"app task manager create packaging task","args":{"span_id":"164","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274693000,"dur":1000},{"pid":1,"tid":1,"id":165,"name":"app task manager create lint task","args":{"span_id":"165","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274694000,"dur":100},{"pid":1,"tid":1,"id":150,"name":"variant manager create tasks for variant","args":{"span_id":"150","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274683000,"dur":11000},{"pid":1,"tid":1,"id":166,"name":"variant manager create tasks for variant","args":{"span_id":"166","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274694000,"dur":3000},{"pid":1,"tid":1,"id":168,"name":"app task manager create merge manifest task","args":{"span_id":"168","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274698000,"dur":100},{"pid":1,"tid":1,"id":169,"name":"app task manager create generate res values task","args":{"span_id":"169","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274699000,"dur":100},{"pid":1,"tid":1,"id":170,"name":"app task manager create create renderscript task","args":{"span_id":"170","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274699000,"dur":100},{"pid":1,"tid":1,"id":171,"name":"app task manager create merge resources task","args":{"span_id":"171","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274699000,"dur":100},{"pid":1,"tid":1,"id":172,"name":"app task manager create merge assets task","args":{"span_id":"172","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274699000,"dur":1000},{"pid":1,"tid":1,"id":173,"name":"app task manager create build config task","args":{"span_id":"173","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274700000,"dur":100},{"pid":1,"tid":1,"id":174,"name":"app task manager create process res task","args":{"span_id":"174","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274700000,"dur":1000},{"pid":1,"tid":1,"id":175,"name":"app task manager create aidl task","args":{"span_id":"175","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274701000,"dur":100},{"pid":1,"tid":1,"id":176,"name":"app task manager create shader task","args":{"span_id":"176","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274701000,"dur":1000},{"pid":1,"tid":1,"id":177,"name":"app task manager create ndk task","args":{"span_id":"177","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274702000,"dur":100},{"pid":1,"tid":1,"id":178,"name":"app task manager create external native build task","args":{"span_id":"178","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274702000,"dur":100},{"pid":1,"tid":1,"id":179,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"179","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274702000,"dur":1000},{"pid":1,"tid":1,"id":180,"name":"app task manager create compile task","args":{"span_id":"180","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274703000,"dur":4000},{"pid":1,"tid":1,"id":181,"name":"app task manager create packaging task","args":{"span_id":"181","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274707000,"dur":1000},{"pid":1,"tid":1,"id":182,"name":"app task manager create lint task","args":{"span_id":"182","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274708000,"dur":1000},{"pid":1,"tid":1,"id":167,"name":"variant manager create tasks for variant","args":{"span_id":"167","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274697000,"dur":12000},{"pid":1,"tid":1,"id":183,"name":"variant manager create tasks for variant","args":{"span_id":"183","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274709000,"dur":3000},{"pid":1,"tid":1,"id":184,"name":"variant manager create tasks for variant","args":{"span_id":"184","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274712000,"dur":8000},{"pid":1,"tid":1,"id":7,"name":"variant manager create android tasks","args":{"span_id":"7","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274292000,"dur":435000},{"pid":1,"tid":1,"id":185,"name":"variant manager external native config values","args":{"span_id":"185","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274727000,"dur":100},{"pid":1,"tid":1,"id":6,"name":"base plugin create android tasks","args":{"span_id":"6","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035273655000,"dur":1072000},{"pid":1,"tid":1,"id":186,"name":"base plugin project configure","args":{"span_id":"186","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548035274734000,"dur":6000},{"pid":1,"tid":1,"id":187,"name":"base plugin project base extension creation","args":{"span_id":"187","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548035274740000,"dur":6000},{"pid":1,"tid":1,"id":189,"name":"task manager create tasks","args":{"span_id":"189","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548035274746000,"dur":3000},{"pid":1,"tid":1,"id":188,"name":"base plugin project tasks creation","args":{"span_id":"188","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548035274746000,"dur":3000},{"pid":1,"tid":1,"id":192,"name":"variant manager create variants","args":{"span_id":"192","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548035274784000,"dur":4000},{"pid":1,"tid":1,"id":193,"name":"variant manager create tests tasks","args":{"span_id":"193","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548035274788000,"dur":1000},{"pid":1,"tid":1,"id":195,"name":"lib task manager create generate res values task","args":{"span_id":"195","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274789000,"dur":100},{"pid":1,"tid":1,"id":196,"name":"lib task manager create merge manifest task","args":{"span_id":"196","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274789000,"dur":1000},{"pid":1,"tid":1,"id":197,"name":"lib task manager create create renderscript task","args":{"span_id":"197","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274790000,"dur":100},{"pid":1,"tid":1,"id":198,"name":"lib task manager create merge resources task","args":{"span_id":"198","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274790000,"dur":1000},{"pid":1,"tid":1,"id":199,"name":"lib task manager create merge assets task","args":{"span_id":"199","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274791000,"dur":100},{"pid":1,"tid":1,"id":200,"name":"lib task manager create build config task","args":{"span_id":"200","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274791000,"dur":100},{"pid":1,"tid":1,"id":201,"name":"lib task manager create process res task","args":{"span_id":"201","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274791000,"dur":4000},{"pid":1,"tid":1,"id":202,"name":"lib task manager create aidl task","args":{"span_id":"202","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274795000,"dur":100},{"pid":1,"tid":1,"id":203,"name":"lib task manager create shader task","args":{"span_id":"203","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274795000,"dur":1000},{"pid":1,"tid":1,"id":204,"name":"lib task manager create compile task","args":{"span_id":"204","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274796000,"dur":100},{"pid":1,"tid":1,"id":205,"name":"lib task manager create ndk task","args":{"span_id":"205","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274796000,"dur":1000},{"pid":1,"tid":1,"id":206,"name":"lib task manager create external native build task","args":{"span_id":"206","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274797000,"dur":100},{"pid":1,"tid":1,"id":207,"name":"lib task manager create packaging task","args":{"span_id":"207","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274798000,"dur":100},{"pid":1,"tid":1,"id":208,"name":"lib task manager create merge proguard file task","args":{"span_id":"208","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274798000,"dur":1000},{"pid":1,"tid":1,"id":209,"name":"lib task manager create post compilation task","args":{"span_id":"209","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274801000,"dur":2000},{"pid":1,"tid":1,"id":210,"name":"lib task manager create lint task","args":{"span_id":"210","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274803000,"dur":100},{"pid":1,"tid":1,"id":194,"name":"variant manager create tasks for variant","args":{"span_id":"194","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274789000,"dur":14000},{"pid":1,"tid":1,"id":211,"name":"variant manager create tasks for variant","args":{"span_id":"211","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548035274803000,"dur":4000},{"pid":1,"tid":1,"id":213,"name":"lib task manager create generate res values task","args":{"span_id":"213","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274808000,"dur":100},{"pid":1,"tid":1,"id":214,"name":"lib task manager create merge manifest task","args":{"span_id":"214","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274808000,"dur":100},{"pid":1,"tid":1,"id":215,"name":"lib task manager create create renderscript task","args":{"span_id":"215","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274808000,"dur":100},{"pid":1,"tid":1,"id":216,"name":"lib task manager create merge resources task","args":{"span_id":"216","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274808000,"dur":1000},{"pid":1,"tid":1,"id":217,"name":"lib task manager create merge assets task","args":{"span_id":"217","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274809000,"dur":100},{"pid":1,"tid":1,"id":218,"name":"lib task manager create build config task","args":{"span_id":"218","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274809000,"dur":100},{"pid":1,"tid":1,"id":219,"name":"lib task manager create process res task","args":{"span_id":"219","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274809000,"dur":2000},{"pid":1,"tid":1,"id":220,"name":"lib task manager create aidl task","args":{"span_id":"220","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274811000,"dur":100},{"pid":1,"tid":1,"id":221,"name":"lib task manager create shader task","args":{"span_id":"221","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274811000,"dur":100},{"pid":1,"tid":1,"id":222,"name":"lib task manager create compile task","args":{"span_id":"222","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274811000,"dur":1000},{"pid":1,"tid":1,"id":223,"name":"lib task manager create ndk task","args":{"span_id":"223","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274812000,"dur":100},{"pid":1,"tid":1,"id":224,"name":"lib task manager create external native build task","args":{"span_id":"224","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274812000,"dur":100},{"pid":1,"tid":1,"id":225,"name":"lib task manager create packaging task","args":{"span_id":"225","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274812000,"dur":100},{"pid":1,"tid":1,"id":226,"name":"lib task manager create merge proguard file task","args":{"span_id":"226","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274812000,"dur":1000},{"pid":1,"tid":1,"id":227,"name":"lib task manager create post compilation task","args":{"span_id":"227","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274813000,"dur":1000},{"pid":1,"tid":1,"id":228,"name":"lib task manager create lint task","args":{"span_id":"228","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274815000,"dur":100},{"pid":1,"tid":1,"id":212,"name":"variant manager create tasks for variant","args":{"span_id":"212","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274807000,"dur":8000},{"pid":1,"tid":1,"id":229,"name":"variant manager create tasks for variant","args":{"span_id":"229","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548035274815000,"dur":2000},{"pid":1,"tid":1,"id":230,"name":"variant manager create tasks for variant","args":{"span_id":"230","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548035274817000,"dur":15000},{"pid":1,"tid":1,"id":191,"name":"variant manager create android tasks","args":{"span_id":"191","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548035274784000,"dur":50000},{"pid":1,"tid":1,"id":231,"name":"variant manager external native config values","args":{"span_id":"231","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548035274834000,"dur":100},{"pid":1,"tid":1,"id":190,"name":"base plugin create android tasks","args":{"span_id":"190","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548035274783000,"dur":51000},{"pid":1,"tid":1,"id":232,"name":"base plugin project configure","args":{"span_id":"232","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274871000,"dur":7000},{"pid":1,"tid":1,"id":233,"name":"base plugin project base extension creation","args":{"span_id":"233","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274878000,"dur":4000},{"pid":1,"tid":1,"id":235,"name":"task manager create tasks","args":{"span_id":"235","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274882000,"dur":1000},{"pid":1,"tid":1,"id":234,"name":"base plugin project tasks creation","args":{"span_id":"234","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274882000,"dur":1000},{"pid":1,"tid":1,"id":238,"name":"variant manager create variants","args":{"span_id":"238","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274888000,"dur":3000},{"pid":1,"tid":1,"id":239,"name":"variant manager create tests tasks","args":{"span_id":"239","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274891000,"dur":1000},{"pid":1,"tid":1,"id":241,"name":"lib task manager create generate res values task","args":{"span_id":"241","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274894000,"dur":100},{"pid":1,"tid":1,"id":242,"name":"lib task manager create merge manifest task","args":{"span_id":"242","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274894000,"dur":1000},{"pid":1,"tid":1,"id":243,"name":"lib task manager create create renderscript task","args":{"span_id":"243","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274895000,"dur":100},{"pid":1,"tid":1,"id":244,"name":"lib task manager create merge resources task","args":{"span_id":"244","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274895000,"dur":1000},{"pid":1,"tid":1,"id":245,"name":"lib task manager create merge assets task","args":{"span_id":"245","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274896000,"dur":100},{"pid":1,"tid":1,"id":246,"name":"lib task manager create build config task","args":{"span_id":"246","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274896000,"dur":100},{"pid":1,"tid":1,"id":247,"name":"lib task manager create process res task","args":{"span_id":"247","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274896000,"dur":4000},{"pid":1,"tid":1,"id":248,"name":"lib task manager create aidl task","args":{"span_id":"248","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274900000,"dur":100},{"pid":1,"tid":1,"id":249,"name":"lib task manager create shader task","args":{"span_id":"249","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274900000,"dur":1000},{"pid":1,"tid":1,"id":250,"name":"lib task manager create compile task","args":{"span_id":"250","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274901000,"dur":1000},{"pid":1,"tid":1,"id":251,"name":"lib task manager create ndk task","args":{"span_id":"251","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274902000,"dur":1000},{"pid":1,"tid":1,"id":252,"name":"lib task manager create external native build task","args":{"span_id":"252","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274903000,"dur":100},{"pid":1,"tid":1,"id":253,"name":"lib task manager create packaging task","args":{"span_id":"253","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274903000,"dur":2000},{"pid":1,"tid":1,"id":254,"name":"lib task manager create merge proguard file task","args":{"span_id":"254","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274905000,"dur":1000},{"pid":1,"tid":1,"id":255,"name":"lib task manager create post compilation task","args":{"span_id":"255","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274906000,"dur":2000},{"pid":1,"tid":1,"id":256,"name":"lib task manager create lint task","args":{"span_id":"256","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274908000,"dur":100},{"pid":1,"tid":1,"id":240,"name":"variant manager create tasks for variant","args":{"span_id":"240","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274892000,"dur":16000},{"pid":1,"tid":1,"id":257,"name":"variant manager create tasks for variant","args":{"span_id":"257","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274908000,"dur":4000},{"pid":1,"tid":1,"id":259,"name":"lib task manager create generate res values task","args":{"span_id":"259","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274912000,"dur":100},{"pid":1,"tid":1,"id":260,"name":"lib task manager create merge manifest task","args":{"span_id":"260","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274912000,"dur":3000},{"pid":1,"tid":1,"id":261,"name":"lib task manager create create renderscript task","args":{"span_id":"261","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274915000,"dur":100},{"pid":1,"tid":1,"id":262,"name":"lib task manager create merge resources task","args":{"span_id":"262","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274915000,"dur":1000},{"pid":1,"tid":1,"id":263,"name":"lib task manager create merge assets task","args":{"span_id":"263","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274916000,"dur":100},{"pid":1,"tid":1,"id":264,"name":"lib task manager create build config task","args":{"span_id":"264","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274918000,"dur":1000},{"pid":1,"tid":1,"id":265,"name":"lib task manager create process res task","args":{"span_id":"265","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274919000,"dur":4000},{"pid":1,"tid":1,"id":266,"name":"lib task manager create aidl task","args":{"span_id":"266","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274923000,"dur":1000},{"pid":1,"tid":1,"id":267,"name":"lib task manager create shader task","args":{"span_id":"267","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274924000,"dur":100},{"pid":1,"tid":1,"id":268,"name":"lib task manager create compile task","args":{"span_id":"268","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274924000,"dur":100},{"pid":1,"tid":1,"id":269,"name":"lib task manager create ndk task","args":{"span_id":"269","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274924000,"dur":1000},{"pid":1,"tid":1,"id":270,"name":"lib task manager create external native build task","args":{"span_id":"270","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274925000,"dur":100},{"pid":1,"tid":1,"id":271,"name":"lib task manager create packaging task","args":{"span_id":"271","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274925000,"dur":100},{"pid":1,"tid":1,"id":272,"name":"lib task manager create merge proguard file task","args":{"span_id":"272","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274925000,"dur":1000},{"pid":1,"tid":1,"id":273,"name":"lib task manager create post compilation task","args":{"span_id":"273","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274927000,"dur":2000},{"pid":1,"tid":1,"id":274,"name":"lib task manager create lint task","args":{"span_id":"274","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274929000,"dur":1000},{"pid":1,"tid":1,"id":258,"name":"variant manager create tasks for variant","args":{"span_id":"258","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035274912000,"dur":18000},{"pid":1,"tid":1,"id":275,"name":"variant manager create tasks for variant","args":{"span_id":"275","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274930000,"dur":15000},{"pid":1,"tid":1,"id":276,"name":"variant manager create tasks for variant","args":{"span_id":"276","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274945000,"dur":12000},{"pid":1,"tid":1,"id":237,"name":"variant manager create android tasks","args":{"span_id":"237","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274888000,"dur":70000},{"pid":1,"tid":1,"id":277,"name":"variant manager external native config values","args":{"span_id":"277","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274959000,"dur":100},{"pid":1,"tid":1,"id":236,"name":"base plugin create android tasks","args":{"span_id":"236","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035274887000,"dur":72000},{"pid":1,"tid":0,"id":278,"name":"task: delete","args":{"span_id":"278","task":"type: 104\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035275025000,"dur":7000},{"pid":1,"tid":0,"id":279,"name":"task: delete","args":{"span_id":"279","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 104\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035275033000,"dur":1763000},{"pid":1,"tid":0,"id":280,"name":"task: delete","args":{"span_id":"280","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 104\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035276797000,"dur":247000},{"pid":1,"tid":0,"id":281,"name":"task: delete","args":{"span_id":"281","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 104\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277045000,"dur":96000},{"pid":1,"tid":0,"id":282,"name":"task: unknown task type","args":{"span_id":"282","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035277141000,"dur":1000},{"pid":1,"tid":0,"id":283,"name":"task: unknown task type","args":{"span_id":"283","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035277142000,"dur":1000},{"pid":1,"tid":0,"id":284,"name":"task: aidl compile","args":{"span_id":"284","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277144000,"dur":62000},{"pid":1,"tid":0,"id":285,"name":"task: renderscript compile","args":{"span_id":"285","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277208000,"dur":22000},{"pid":1,"tid":0,"id":286,"name":"task: check manifest","args":{"span_id":"286","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277231000,"dur":3000},{"pid":1,"tid":0,"id":287,"name":"task: generate build config","args":{"span_id":"287","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277235000,"dur":6000},{"pid":1,"tid":0,"id":288,"name":"task: prepare lint jar","args":{"span_id":"288","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 119\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035277242000,"dur":1000},{"pid":1,"tid":0,"id":289,"name":"task: generate res values","args":{"span_id":"289","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277244000,"dur":1000},{"pid":1,"tid":0,"id":290,"name":"task: unknown task type","args":{"span_id":"290","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277246000,"dur":100},{"pid":1,"tid":0,"id":291,"name":"task: merge resources","args":{"span_id":"291","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277248000,"dur":7000},{"pid":1,"tid":0,"id":292,"name":"task: platform attr extractor","args":{"span_id":"292","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 109\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277256000,"dur":24000},{"pid":1,"tid":0,"id":293,"name":"task: process manifest","args":{"span_id":"293","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 52\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277282000,"dur":18000},{"pid":1,"tid":0,"id":294,"name":"task: process android resources","args":{"span_id":"294","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277303000,"dur":75000},{"pid":1,"tid":0,"id":295,"name":"task: unknown task type","args":{"span_id":"295","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277382000,"dur":1000},{"pid":1,"tid":0,"id":296,"name":"task: unknown task type","args":{"span_id":"296","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035277384000,"dur":1000},{"pid":1,"tid":0,"id":297,"name":"task: unknown task type","args":{"span_id":"297","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035277386000,"dur":100},{"pid":1,"tid":0,"id":298,"name":"task: unknown task type","args":{"span_id":"298","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035277387000,"dur":100},{"pid":1,"tid":0,"id":299,"name":"task: check manifest","args":{"span_id":"299","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277388000,"dur":4000},{"pid":1,"tid":0,"id":300,"name":"task: process manifest","args":{"span_id":"300","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 52\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277393000,"dur":23000},{"pid":1,"tid":0,"id":301,"name":"task: app pre build","args":{"span_id":"301","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 92\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277417000,"dur":203000},{"pid":1,"tid":0,"id":302,"name":"task: aidl compile","args":{"span_id":"302","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277622000,"dur":34000},{"pid":1,"tid":0,"id":303,"name":"task: aidl compile","args":{"span_id":"303","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277658000,"dur":17000},{"pid":1,"tid":0,"id":304,"name":"task: unknown task type","args":{"span_id":"304","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277677000,"dur":100},{"pid":1,"tid":0,"id":305,"name":"task: unknown task type","args":{"span_id":"305","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277678000,"dur":1000},{"pid":1,"tid":0,"id":306,"name":"task: renderscript compile","args":{"span_id":"306","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277682000,"dur":26000},{"pid":1,"tid":0,"id":307,"name":"task: check manifest","args":{"span_id":"307","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277709000,"dur":3000},{"pid":1,"tid":0,"id":308,"name":"task: generate build config","args":{"span_id":"308","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277713000,"dur":9000},{"pid":1,"tid":0,"id":309,"name":"task: prepare lint jar","args":{"span_id":"309","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 119\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035277723000,"dur":1000},{"pid":1,"tid":0,"id":310,"name":"task: generate res values","args":{"span_id":"310","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277725000,"dur":3000},{"pid":1,"tid":0,"id":311,"name":"task: unknown task type","args":{"span_id":"311","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277730000,"dur":100},{"pid":1,"tid":0,"id":312,"name":"task: renderscript compile","args":{"span_id":"312","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277732000,"dur":21000},{"pid":1,"tid":0,"id":313,"name":"task: generate res values","args":{"span_id":"313","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277753000,"dur":2000},{"pid":1,"tid":0,"id":314,"name":"task: unknown task type","args":{"span_id":"314","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277757000,"dur":100},{"pid":1,"tid":0,"id":315,"name":"task: merge resources","args":{"span_id":"315","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277759000,"dur":228000},{"pid":1,"tid":0,"id":316,"name":"task: merge resources","args":{"span_id":"316","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035277989000,"dur":1793000},{"pid":1,"tid":0,"id":317,"name":"task: compatible screens manifest","args":{"span_id":"317","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 9\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035279784000,"dur":5000},{"pid":1,"tid":0,"id":318,"name":"task: merge manifests","args":{"span_id":"318","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 39\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035279791000,"dur":103000},{"pid":1,"tid":0,"id":319,"name":"task: splits discovery","args":{"span_id":"319","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 87\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035279895000,"dur":3000},{"pid":1,"tid":0,"id":321,"name":"task: generate build config","args":{"span_id":"321","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035279903000,"dur":3000},{"pid":1,"tid":0,"id":322,"name":"task: prepare lint jar","args":{"span_id":"322","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 119\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035279907000,"dur":1000},{"pid":1,"tid":0,"id":320,"name":"task: platform attr extractor","args":{"span_id":"320","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 109\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035279899000,"dur":15000},{"pid":1,"tid":0,"id":323,"name":"task: process android resources","args":{"span_id":"323","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035279917000,"dur":1058000},{"pid":1,"tid":0,"id":324,"name":"task: process android resources","args":{"span_id":"324","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035280978000,"dur":1245000},{"pid":1,"tid":0,"id":325,"name":"task: unknown task type","args":{"span_id":"325","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035282224000,"dur":100},{"pid":1,"tid":0,"id":326,"name":"task: unknown task type","args":{"span_id":"326","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035282225000,"dur":100},{"pid":1,"tid":1,"id":327,"name":"base plugin build finished","args":{"span_id":"327","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035282232000,"dur":100},{"pid":1,"tid":1,"id":328,"name":"base plugin build finished","args":{"span_id":"328","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548035282232000,"dur":100},{"pid":1,"tid":1,"id":329,"name":"base plugin build finished","args":{"span_id":"329","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035282232000,"dur":100}] \ No newline at end of file diff --git a/AndroidLearnProject/build/android-profile/profile-2019-01-21-09-48-02-239.rawproto b/AndroidLearnProject/build/android-profile/profile-2019-01-21-09-48-02-239.rawproto deleted file mode 100644 index db80dc1..0000000 Binary files a/AndroidLearnProject/build/android-profile/profile-2019-01-21-09-48-02-239.rawproto and /dev/null differ diff --git a/AndroidLearnProject/build/android-profile/profile-2019-01-21-09-48-28-490.json b/AndroidLearnProject/build/android-profile/profile-2019-01-21-09-48-28-490.json deleted file mode 100644 index 7ef8c16..0000000 --- a/AndroidLearnProject/build/android-profile/profile-2019-01-21-09-48-28-490.json +++ /dev/null @@ -1 +0,0 @@ -[{"pid":0,"ph":"i","name":"Memory sample","ts":1548035291888000,"args":{"JVM stats":"heap_memory_usage: 233351616\nnon_heap_memory_usage: 158964448\nloaded_class_count: 18123\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293217000,"args":{"JVM stats":"heap_memory_usage: 264697008\nnon_heap_memory_usage: 159822760\nloaded_class_count: 18126\nthread_count: 40\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293224000,"args":{"JVM stats":"heap_memory_usage: 265158480\nnon_heap_memory_usage: 159823464\nloaded_class_count: 18126\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293231000,"args":{"JVM stats":"heap_memory_usage: 265619848\nnon_heap_memory_usage: 159823464\nloaded_class_count: 18126\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293233000,"args":{"JVM stats":"heap_memory_usage: 265619848\nnon_heap_memory_usage: 159823464\nloaded_class_count: 18126\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293241000,"args":{"JVM stats":"heap_memory_usage: 266081320\nnon_heap_memory_usage: 159832560\nloaded_class_count: 18128\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293248000,"args":{"JVM stats":"heap_memory_usage: 266546800\nnon_heap_memory_usage: 159835624\nloaded_class_count: 18129\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293249000,"args":{"JVM stats":"heap_memory_usage: 266546800\nnon_heap_memory_usage: 159835624\nloaded_class_count: 18129\nthread_count: 42\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293288000,"args":{"JVM stats":"heap_memory_usage: 272548504\nnon_heap_memory_usage: 159869368\nloaded_class_count: 18130\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293302000,"args":{"JVM stats":"heap_memory_usage: 273009872\nnon_heap_memory_usage: 159874464\nloaded_class_count: 18130\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293306000,"args":{"JVM stats":"heap_memory_usage: 273009872\nnon_heap_memory_usage: 159901928\nloaded_class_count: 18130\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293307000,"args":{"JVM stats":"heap_memory_usage: 273009872\nnon_heap_memory_usage: 159904512\nloaded_class_count: 18130\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293317000,"args":{"JVM stats":"heap_memory_usage: 273471264\nnon_heap_memory_usage: 159914352\nloaded_class_count: 18130\nthread_count: 43\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293620000,"args":{"JVM stats":"heap_memory_usage: 295171448\nnon_heap_memory_usage: 159975200\nloaded_class_count: 18130\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293621000,"args":{"JVM stats":"heap_memory_usage: 295171448\nnon_heap_memory_usage: 159975200\nloaded_class_count: 18130\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293623000,"args":{"JVM stats":"heap_memory_usage: 295171448\nnon_heap_memory_usage: 159975200\nloaded_class_count: 18130\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293624000,"args":{"JVM stats":"heap_memory_usage: 295171448\nnon_heap_memory_usage: 159975200\nloaded_class_count: 18130\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293626000,"args":{"JVM stats":"heap_memory_usage: 295632840\nnon_heap_memory_usage: 159975200\nloaded_class_count: 18130\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293640000,"args":{"JVM stats":"heap_memory_usage: 295632840\nnon_heap_memory_usage: 159976592\nloaded_class_count: 18130\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293640001,"args":{"JVM stats":"heap_memory_usage: 295632840\nnon_heap_memory_usage: 159976592\nloaded_class_count: 18130\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293641000,"args":{"JVM stats":"heap_memory_usage: 295632840\nnon_heap_memory_usage: 159976592\nloaded_class_count: 18130\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293647000,"args":{"JVM stats":"heap_memory_usage: 295632840\nnon_heap_memory_usage: 159977296\nloaded_class_count: 18130\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293663000,"args":{"JVM stats":"heap_memory_usage: 296094208\nnon_heap_memory_usage: 159999608\nloaded_class_count: 18138\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293686000,"args":{"JVM stats":"heap_memory_usage: 298403544\nnon_heap_memory_usage: 160041280\nloaded_class_count: 18138\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293688000,"args":{"JVM stats":"heap_memory_usage: 298403544\nnon_heap_memory_usage: 160042576\nloaded_class_count: 18138\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293691000,"args":{"JVM stats":"heap_memory_usage: 298403544\nnon_heap_memory_usage: 160049080\nloaded_class_count: 18138\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293893000,"args":{"JVM stats":"heap_memory_usage: 311891040\nnon_heap_memory_usage: 160185528\nloaded_class_count: 18138\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293895000,"args":{"JVM stats":"heap_memory_usage: 311891040\nnon_heap_memory_usage: 160191520\nloaded_class_count: 18138\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293897000,"args":{"JVM stats":"heap_memory_usage: 312352408\nnon_heap_memory_usage: 160191520\nloaded_class_count: 18138\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293913000,"args":{"JVM stats":"heap_memory_usage: 313275624\nnon_heap_memory_usage: 160196896\nloaded_class_count: 18138\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293915000,"args":{"JVM stats":"heap_memory_usage: 313275624\nnon_heap_memory_usage: 160214624\nloaded_class_count: 18138\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293915001,"args":{"JVM stats":"heap_memory_usage: 313275624\nnon_heap_memory_usage: 160215072\nloaded_class_count: 18138\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293944000,"args":{"JVM stats":"heap_memory_usage: 315583664\nnon_heap_memory_usage: 160225312\nloaded_class_count: 18138\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293945000,"args":{"JVM stats":"heap_memory_usage: 315583664\nnon_heap_memory_usage: 160225312\nloaded_class_count: 18138\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293946000,"args":{"JVM stats":"heap_memory_usage: 315583664\nnon_heap_memory_usage: 160225312\nloaded_class_count: 18138\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293955000,"args":{"JVM stats":"heap_memory_usage: 316045224\nnon_heap_memory_usage: 160225312\nloaded_class_count: 18138\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293991000,"args":{"JVM stats":"heap_memory_usage: 319276496\nnon_heap_memory_usage: 160242584\nloaded_class_count: 18138\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293994000,"args":{"JVM stats":"heap_memory_usage: 319276496\nnon_heap_memory_usage: 160243288\nloaded_class_count: 18138\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293995000,"args":{"JVM stats":"heap_memory_usage: 319276496\nnon_heap_memory_usage: 160245464\nloaded_class_count: 18138\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035293999000,"args":{"JVM stats":"heap_memory_usage: 319276496\nnon_heap_memory_usage: 160251064\nloaded_class_count: 18138\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035294240000,"args":{"JVM stats":"heap_memory_usage: 325276200\nnon_heap_memory_usage: 160274728\nloaded_class_count: 18138\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035294241000,"args":{"JVM stats":"heap_memory_usage: 325276200\nnon_heap_memory_usage: 160274728\nloaded_class_count: 18138\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035294243000,"args":{"JVM stats":"heap_memory_usage: 325276200\nnon_heap_memory_usage: 160274728\nloaded_class_count: 18138\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035294245000,"args":{"JVM stats":"heap_memory_usage: 325276200\nnon_heap_memory_usage: 160275432\nloaded_class_count: 18138\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035294426000,"args":{"JVM stats":"heap_memory_usage: 334065360\nnon_heap_memory_usage: 160304568\nloaded_class_count: 18138\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035295062000,"args":{"JVM stats":"heap_memory_usage: 399628944\nnon_heap_memory_usage: 160497504\nloaded_class_count: 18138\nthread_count: 44\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035296113000,"args":{"JVM stats":"heap_memory_usage: 445763344\nnon_heap_memory_usage: 160791968\nloaded_class_count: 18138\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035296531000,"args":{"JVM stats":"heap_memory_usage: 489072400\nnon_heap_memory_usage: 160833944\nloaded_class_count: 18141\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 36\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035296546000,"args":{"JVM stats":"heap_memory_usage: 493773856\nnon_heap_memory_usage: 160838960\nloaded_class_count: 18141\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035296559000,"args":{"JVM stats":"heap_memory_usage: 493775944\nnon_heap_memory_usage: 160874168\nloaded_class_count: 18141\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035296568000,"args":{"JVM stats":"heap_memory_usage: 495299312\nnon_heap_memory_usage: 160872664\nloaded_class_count: 18141\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035296571000,"args":{"JVM stats":"heap_memory_usage: 495299312\nnon_heap_memory_usage: 160879000\nloaded_class_count: 18141\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035296573000,"args":{"JVM stats":"heap_memory_usage: 495299312\nnon_heap_memory_usage: 160879000\nloaded_class_count: 18141\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035296574000,"args":{"JVM stats":"heap_memory_usage: 495299312\nnon_heap_memory_usage: 160880088\nloaded_class_count: 18141\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035296576000,"args":{"JVM stats":"heap_memory_usage: 495738464\nnon_heap_memory_usage: 160881496\nloaded_class_count: 18141\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035296579000,"args":{"JVM stats":"heap_memory_usage: 495738464\nnon_heap_memory_usage: 160888200\nloaded_class_count: 18141\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035296580000,"args":{"JVM stats":"heap_memory_usage: 495738464\nnon_heap_memory_usage: 160888200\nloaded_class_count: 18141\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035296581000,"args":{"JVM stats":"heap_memory_usage: 495738464\nnon_heap_memory_usage: 160889024\nloaded_class_count: 18141\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035296620000,"args":{"JVM stats":"heap_memory_usage: 495738464\nnon_heap_memory_usage: 160904000\nloaded_class_count: 18143\nthread_count: 45\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035297098000,"args":{"JVM stats":"heap_memory_usage: 518375824\nnon_heap_memory_usage: 161571592\nloaded_class_count: 18145\nthread_count: 46\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035297101000,"args":{"JVM stats":"heap_memory_usage: 518375824\nnon_heap_memory_usage: 161571592\nloaded_class_count: 18145\nthread_count: 46\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035297118000,"args":{"JVM stats":"heap_memory_usage: 519653752\nnon_heap_memory_usage: 161605856\nloaded_class_count: 18145\nthread_count: 48\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035308475000,"args":{"JVM stats":"heap_memory_usage: 537930016\nnon_heap_memory_usage: 161850416\nloaded_class_count: 18147\nthread_count: 47\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035308478000,"args":{"JVM stats":"heap_memory_usage: 539358904\nnon_heap_memory_usage: 161850416\nloaded_class_count: 18147\nthread_count: 47\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548035308490000,"args":{"JVM stats":"heap_memory_usage: 539592000\nnon_heap_memory_usage: 161799688\nloaded_class_count: 18147\nthread_count: 41\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":1,"tid":1,"id":2,"name":"base plugin project configure","args":{"span_id":"2","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035291888000,"dur":17000},{"pid":1,"tid":1,"id":3,"name":"base plugin project base extension creation","args":{"span_id":"3","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035291905000,"dur":11000},{"pid":1,"tid":1,"id":5,"name":"task manager create tasks","args":{"span_id":"5","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035291916000,"dur":4000},{"pid":1,"tid":1,"id":4,"name":"base plugin project tasks creation","args":{"span_id":"4","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035291916000,"dur":4000},{"pid":1,"tid":1,"id":8,"name":"variant manager create variants","args":{"span_id":"8","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035292070000,"dur":9000},{"pid":1,"tid":1,"id":9,"name":"variant manager create tests tasks","args":{"span_id":"9","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035292079000,"dur":3000},{"pid":1,"tid":1,"id":11,"name":"app task manager create merge manifest task","args":{"span_id":"11","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292092000,"dur":3000},{"pid":1,"tid":1,"id":12,"name":"app task manager create generate res values task","args":{"span_id":"12","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292095000,"dur":100},{"pid":1,"tid":1,"id":13,"name":"app task manager create create renderscript task","args":{"span_id":"13","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292095000,"dur":1000},{"pid":1,"tid":1,"id":14,"name":"app task manager create merge resources task","args":{"span_id":"14","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292096000,"dur":9000},{"pid":1,"tid":1,"id":15,"name":"app task manager create merge assets task","args":{"span_id":"15","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292105000,"dur":2000},{"pid":1,"tid":1,"id":16,"name":"app task manager create build config task","args":{"span_id":"16","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292107000,"dur":2000},{"pid":1,"tid":1,"id":17,"name":"app task manager create process res task","args":{"span_id":"17","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292109000,"dur":10000},{"pid":1,"tid":1,"id":18,"name":"app task manager create aidl task","args":{"span_id":"18","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292119000,"dur":100},{"pid":1,"tid":1,"id":19,"name":"app task manager create shader task","args":{"span_id":"19","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292119000,"dur":3000},{"pid":1,"tid":1,"id":20,"name":"app task manager create ndk task","args":{"span_id":"20","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292122000,"dur":2000},{"pid":1,"tid":1,"id":21,"name":"app task manager create external native build task","args":{"span_id":"21","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292124000,"dur":100},{"pid":1,"tid":1,"id":22,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"22","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292125000,"dur":1000},{"pid":1,"tid":1,"id":23,"name":"app task manager create compile task","args":{"span_id":"23","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292126000,"dur":81000},{"pid":1,"tid":1,"id":24,"name":"app task manager create packaging task","args":{"span_id":"24","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292207000,"dur":15000},{"pid":1,"tid":1,"id":25,"name":"app task manager create lint task","args":{"span_id":"25","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292222000,"dur":4000},{"pid":1,"tid":1,"id":10,"name":"variant manager create tasks for variant","args":{"span_id":"10","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292082000,"dur":144000},{"pid":1,"tid":1,"id":26,"name":"variant manager create tasks for variant","args":{"span_id":"26","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035292226000,"dur":9000},{"pid":1,"tid":1,"id":27,"name":"variant manager create tasks for variant","args":{"span_id":"27","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035292259000,"dur":19000},{"pid":1,"tid":1,"id":7,"name":"variant manager create android tasks","args":{"span_id":"7","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035292069000,"dur":210000},{"pid":1,"tid":1,"id":28,"name":"variant manager external native config values","args":{"span_id":"28","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035292280000,"dur":100},{"pid":1,"tid":1,"id":6,"name":"base plugin create android tasks","args":{"span_id":"6","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035291954000,"dur":326000},{"pid":1,"tid":1,"id":29,"name":"base plugin project configure","args":{"span_id":"29","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548035292301000,"dur":25000},{"pid":1,"tid":1,"id":30,"name":"base plugin project base extension creation","args":{"span_id":"30","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548035292326000,"dur":44000},{"pid":1,"tid":1,"id":32,"name":"task manager create tasks","args":{"span_id":"32","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548035292370000,"dur":1000},{"pid":1,"tid":1,"id":31,"name":"base plugin project tasks creation","args":{"span_id":"31","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548035292370000,"dur":1000},{"pid":1,"tid":1,"id":35,"name":"variant manager create variants","args":{"span_id":"35","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548035292415000,"dur":9000},{"pid":1,"tid":1,"id":36,"name":"variant manager create tests tasks","args":{"span_id":"36","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548035292424000,"dur":100},{"pid":1,"tid":1,"id":38,"name":"lib task manager create generate res values task","args":{"span_id":"38","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292425000,"dur":100},{"pid":1,"tid":1,"id":39,"name":"lib task manager create merge manifest task","args":{"span_id":"39","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292425000,"dur":2000},{"pid":1,"tid":1,"id":40,"name":"lib task manager create create renderscript task","args":{"span_id":"40","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292427000,"dur":100},{"pid":1,"tid":1,"id":41,"name":"lib task manager create merge resources task","args":{"span_id":"41","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292427000,"dur":1000},{"pid":1,"tid":1,"id":42,"name":"lib task manager create merge assets task","args":{"span_id":"42","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292428000,"dur":100},{"pid":1,"tid":1,"id":43,"name":"lib task manager create build config task","args":{"span_id":"43","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292428000,"dur":1000},{"pid":1,"tid":1,"id":44,"name":"lib task manager create process res task","args":{"span_id":"44","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292429000,"dur":3000},{"pid":1,"tid":1,"id":45,"name":"lib task manager create aidl task","args":{"span_id":"45","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292432000,"dur":1000},{"pid":1,"tid":1,"id":46,"name":"lib task manager create shader task","args":{"span_id":"46","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292433000,"dur":100},{"pid":1,"tid":1,"id":47,"name":"lib task manager create compile task","args":{"span_id":"47","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292433000,"dur":1000},{"pid":1,"tid":1,"id":48,"name":"lib task manager create ndk task","args":{"span_id":"48","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292434000,"dur":1000},{"pid":1,"tid":1,"id":49,"name":"lib task manager create external native build task","args":{"span_id":"49","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292435000,"dur":100},{"pid":1,"tid":1,"id":50,"name":"lib task manager create packaging task","args":{"span_id":"50","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292435000,"dur":1000},{"pid":1,"tid":1,"id":51,"name":"lib task manager create merge proguard file task","args":{"span_id":"51","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292436000,"dur":1000},{"pid":1,"tid":1,"id":52,"name":"lib task manager create post compilation task","args":{"span_id":"52","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292439000,"dur":4000},{"pid":1,"tid":1,"id":53,"name":"lib task manager create lint task","args":{"span_id":"53","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292443000,"dur":1000},{"pid":1,"tid":1,"id":37,"name":"variant manager create tasks for variant","args":{"span_id":"37","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292425000,"dur":19000},{"pid":1,"tid":1,"id":54,"name":"variant manager create tasks for variant","args":{"span_id":"54","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548035292444000,"dur":8000},{"pid":1,"tid":1,"id":56,"name":"lib task manager create generate res values task","args":{"span_id":"56","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292528000,"dur":1000},{"pid":1,"tid":1,"id":57,"name":"lib task manager create merge manifest task","args":{"span_id":"57","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292529000,"dur":100},{"pid":1,"tid":1,"id":58,"name":"lib task manager create create renderscript task","args":{"span_id":"58","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292529000,"dur":100},{"pid":1,"tid":1,"id":59,"name":"lib task manager create merge resources task","args":{"span_id":"59","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292529000,"dur":1000},{"pid":1,"tid":1,"id":60,"name":"lib task manager create merge assets task","args":{"span_id":"60","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292530000,"dur":1000},{"pid":1,"tid":1,"id":61,"name":"lib task manager create build config task","args":{"span_id":"61","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292531000,"dur":100},{"pid":1,"tid":1,"id":62,"name":"lib task manager create process res task","args":{"span_id":"62","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292531000,"dur":3000},{"pid":1,"tid":1,"id":63,"name":"lib task manager create aidl task","args":{"span_id":"63","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292534000,"dur":100},{"pid":1,"tid":1,"id":64,"name":"lib task manager create shader task","args":{"span_id":"64","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292534000,"dur":1000},{"pid":1,"tid":1,"id":65,"name":"lib task manager create compile task","args":{"span_id":"65","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292535000,"dur":3000},{"pid":1,"tid":1,"id":66,"name":"lib task manager create ndk task","args":{"span_id":"66","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292538000,"dur":100},{"pid":1,"tid":1,"id":67,"name":"lib task manager create external native build task","args":{"span_id":"67","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292538000,"dur":100},{"pid":1,"tid":1,"id":68,"name":"lib task manager create packaging task","args":{"span_id":"68","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292539000,"dur":1000},{"pid":1,"tid":1,"id":69,"name":"lib task manager create merge proguard file task","args":{"span_id":"69","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292540000,"dur":100},{"pid":1,"tid":1,"id":70,"name":"lib task manager create post compilation task","args":{"span_id":"70","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292541000,"dur":2000},{"pid":1,"tid":1,"id":71,"name":"lib task manager create lint task","args":{"span_id":"71","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292543000,"dur":1000},{"pid":1,"tid":1,"id":55,"name":"variant manager create tasks for variant","args":{"span_id":"55","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292452000,"dur":92000},{"pid":1,"tid":1,"id":72,"name":"variant manager create tasks for variant","args":{"span_id":"72","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548035292544000,"dur":25000},{"pid":1,"tid":1,"id":73,"name":"variant manager create tasks for variant","args":{"span_id":"73","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548035292569000,"dur":27000},{"pid":1,"tid":1,"id":34,"name":"variant manager create android tasks","args":{"span_id":"34","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548035292415000,"dur":182000},{"pid":1,"tid":1,"id":74,"name":"variant manager external native config values","args":{"span_id":"74","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548035292600000,"dur":100},{"pid":1,"tid":1,"id":33,"name":"base plugin create android tasks","args":{"span_id":"33","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548035292413000,"dur":187000},{"pid":1,"tid":1,"id":75,"name":"base plugin project configure","args":{"span_id":"75","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035292744000,"dur":21000},{"pid":1,"tid":1,"id":76,"name":"base plugin project base extension creation","args":{"span_id":"76","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035292765000,"dur":11000},{"pid":1,"tid":1,"id":78,"name":"task manager create tasks","args":{"span_id":"78","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035292776000,"dur":2000},{"pid":1,"tid":1,"id":77,"name":"base plugin project tasks creation","args":{"span_id":"77","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035292776000,"dur":2000},{"pid":1,"tid":1,"id":81,"name":"variant manager create variants","args":{"span_id":"81","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035292786000,"dur":7000},{"pid":1,"tid":1,"id":82,"name":"variant manager create tests tasks","args":{"span_id":"82","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035292793000,"dur":100},{"pid":1,"tid":1,"id":84,"name":"lib task manager create generate res values task","args":{"span_id":"84","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292794000,"dur":100},{"pid":1,"tid":1,"id":85,"name":"lib task manager create merge manifest task","args":{"span_id":"85","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292794000,"dur":100},{"pid":1,"tid":1,"id":86,"name":"lib task manager create create renderscript task","args":{"span_id":"86","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292794000,"dur":1000},{"pid":1,"tid":1,"id":87,"name":"lib task manager create merge resources task","args":{"span_id":"87","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292795000,"dur":100},{"pid":1,"tid":1,"id":88,"name":"lib task manager create merge assets task","args":{"span_id":"88","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292795000,"dur":1000},{"pid":1,"tid":1,"id":89,"name":"lib task manager create build config task","args":{"span_id":"89","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292796000,"dur":100},{"pid":1,"tid":1,"id":90,"name":"lib task manager create process res task","args":{"span_id":"90","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292796000,"dur":9000},{"pid":1,"tid":1,"id":91,"name":"lib task manager create aidl task","args":{"span_id":"91","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292805000,"dur":1000},{"pid":1,"tid":1,"id":92,"name":"lib task manager create shader task","args":{"span_id":"92","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292806000,"dur":100},{"pid":1,"tid":1,"id":93,"name":"lib task manager create compile task","args":{"span_id":"93","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292806000,"dur":1000},{"pid":1,"tid":1,"id":94,"name":"lib task manager create ndk task","args":{"span_id":"94","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292807000,"dur":100},{"pid":1,"tid":1,"id":95,"name":"lib task manager create external native build task","args":{"span_id":"95","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292807000,"dur":100},{"pid":1,"tid":1,"id":96,"name":"lib task manager create packaging task","args":{"span_id":"96","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292808000,"dur":1000},{"pid":1,"tid":1,"id":97,"name":"lib task manager create merge proguard file task","args":{"span_id":"97","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292809000,"dur":1000},{"pid":1,"tid":1,"id":98,"name":"lib task manager create post compilation task","args":{"span_id":"98","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292810000,"dur":2000},{"pid":1,"tid":1,"id":99,"name":"lib task manager create lint task","args":{"span_id":"99","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292812000,"dur":100},{"pid":1,"tid":1,"id":83,"name":"variant manager create tasks for variant","args":{"span_id":"83","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292793000,"dur":19000},{"pid":1,"tid":1,"id":100,"name":"variant manager create tasks for variant","args":{"span_id":"100","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035292812000,"dur":6000},{"pid":1,"tid":1,"id":102,"name":"lib task manager create generate res values task","args":{"span_id":"102","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292819000,"dur":1000},{"pid":1,"tid":1,"id":103,"name":"lib task manager create merge manifest task","args":{"span_id":"103","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292820000,"dur":100},{"pid":1,"tid":1,"id":104,"name":"lib task manager create create renderscript task","args":{"span_id":"104","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292820000,"dur":100},{"pid":1,"tid":1,"id":105,"name":"lib task manager create merge resources task","args":{"span_id":"105","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292820000,"dur":1000},{"pid":1,"tid":1,"id":106,"name":"lib task manager create merge assets task","args":{"span_id":"106","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292821000,"dur":1000},{"pid":1,"tid":1,"id":107,"name":"lib task manager create build config task","args":{"span_id":"107","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292822000,"dur":100},{"pid":1,"tid":1,"id":108,"name":"lib task manager create process res task","args":{"span_id":"108","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292822000,"dur":2000},{"pid":1,"tid":1,"id":109,"name":"lib task manager create aidl task","args":{"span_id":"109","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292824000,"dur":1000},{"pid":1,"tid":1,"id":110,"name":"lib task manager create shader task","args":{"span_id":"110","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292825000,"dur":100},{"pid":1,"tid":1,"id":111,"name":"lib task manager create compile task","args":{"span_id":"111","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292825000,"dur":1000},{"pid":1,"tid":1,"id":112,"name":"lib task manager create ndk task","args":{"span_id":"112","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292826000,"dur":8000},{"pid":1,"tid":1,"id":113,"name":"lib task manager create external native build task","args":{"span_id":"113","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292834000,"dur":100},{"pid":1,"tid":1,"id":114,"name":"lib task manager create packaging task","args":{"span_id":"114","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292848000,"dur":2000},{"pid":1,"tid":1,"id":115,"name":"lib task manager create merge proguard file task","args":{"span_id":"115","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292850000,"dur":100},{"pid":1,"tid":1,"id":116,"name":"lib task manager create post compilation task","args":{"span_id":"116","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292851000,"dur":2000},{"pid":1,"tid":1,"id":117,"name":"lib task manager create lint task","args":{"span_id":"117","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292853000,"dur":55000},{"pid":1,"tid":1,"id":101,"name":"variant manager create tasks for variant","args":{"span_id":"101","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548035292818000,"dur":90000},{"pid":1,"tid":1,"id":118,"name":"variant manager create tasks for variant","args":{"span_id":"118","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035292908000,"dur":5000},{"pid":1,"tid":1,"id":119,"name":"variant manager create tasks for variant","args":{"span_id":"119","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035292913000,"dur":22000},{"pid":1,"tid":1,"id":80,"name":"variant manager create android tasks","args":{"span_id":"80","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035292786000,"dur":151000},{"pid":1,"tid":1,"id":120,"name":"variant manager external native config values","args":{"span_id":"120","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035292937000,"dur":100},{"pid":1,"tid":1,"id":79,"name":"base plugin create android tasks","args":{"span_id":"79","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035292782000,"dur":155000},{"pid":1,"tid":0,"id":121,"name":"task: build info loader","args":{"span_id":"121","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 7\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035293216000,"dur":1000},{"pid":1,"tid":0,"id":122,"name":"task: merge source set folders","args":{"span_id":"122","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035293219000,"dur":5000},{"pid":1,"tid":0,"id":123,"name":"task: shader compile","args":{"span_id":"123","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035293227000,"dur":3000},{"pid":1,"tid":0,"id":124,"name":"task: unknown task type","args":{"span_id":"124","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035293232000,"dur":100},{"pid":1,"tid":0,"id":125,"name":"task: merge source set folders","args":{"span_id":"125","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035293234000,"dur":7000},{"pid":1,"tid":0,"id":126,"name":"task: shader compile","args":{"span_id":"126","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035293242000,"dur":5000},{"pid":1,"tid":0,"id":127,"name":"task: unknown task type","args":{"span_id":"127","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035293248000,"dur":100},{"pid":1,"tid":0,"id":128,"name":"task: merge source set folders","args":{"span_id":"128","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035293250000,"dur":37000},{"pid":1,"tid":0,"id":129,"name":"task: merge source set folders","args":{"span_id":"129","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035293290000,"dur":12000},{"pid":1,"tid":0,"id":130,"name":"task: shader compile","args":{"span_id":"130","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035293303000,"dur":3000},{"pid":1,"tid":0,"id":131,"name":"task: unknown task type","args":{"span_id":"131","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035293307000,"dur":100},{"pid":1,"tid":0,"id":132,"name":"task: merge source set folders","args":{"span_id":"132","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035293308000,"dur":9000},{"pid":1,"tid":0,"id":133,"name":"task: merge source set folders","args":{"span_id":"133","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035293318000,"dur":302000},{"pid":1,"tid":0,"id":134,"name":"task: unknown task type","args":{"span_id":"134","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035293620000,"dur":1000},{"pid":1,"tid":0,"id":135,"name":"task: unknown task type","args":{"span_id":"135","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035293623000,"dur":100},{"pid":1,"tid":0,"id":136,"name":"task: unknown task type","args":{"span_id":"136","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035293624000,"dur":100},{"pid":1,"tid":0,"id":137,"name":"task: check manifest","args":{"span_id":"137","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035293625000,"dur":1000},{"pid":1,"tid":0,"id":138,"name":"task: process manifest","args":{"span_id":"138","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 52\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035293631000,"dur":8000},{"pid":1,"tid":0,"id":139,"name":"task: unknown task type","args":{"span_id":"139","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035293640000,"dur":100},{"pid":1,"tid":0,"id":140,"name":"task: unknown task type","args":{"span_id":"140","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035293641000,"dur":100},{"pid":1,"tid":0,"id":141,"name":"task: check manifest","args":{"span_id":"141","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035293644000,"dur":3000},{"pid":1,"tid":0,"id":142,"name":"task: process manifest","args":{"span_id":"142","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 52\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035293658000,"dur":4000},{"pid":1,"tid":0,"id":143,"name":"task: app pre build","args":{"span_id":"143","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 92\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035293663000,"dur":23000},{"pid":1,"tid":0,"id":144,"name":"task: check manifest","args":{"span_id":"144","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035293687000,"dur":1000},{"pid":1,"tid":0,"id":145,"name":"task: compatible screens manifest","args":{"span_id":"145","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 9\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035293689000,"dur":2000},{"pid":1,"tid":0,"id":146,"name":"task: merge manifests","args":{"span_id":"146","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 39\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035293692000,"dur":201000},{"pid":1,"tid":0,"id":147,"name":"task: unknown task type","args":{"span_id":"147","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035293894000,"dur":1000},{"pid":1,"tid":0,"id":148,"name":"task: unknown task type","args":{"span_id":"148","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035293896000,"dur":1000},{"pid":1,"tid":0,"id":149,"name":"task: renderscript compile","args":{"span_id":"149","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035293898000,"dur":15000},{"pid":1,"tid":0,"id":150,"name":"task: generate res values","args":{"span_id":"150","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035293914000,"dur":100},{"pid":1,"tid":0,"id":151,"name":"task: unknown task type","args":{"span_id":"151","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035293915000,"dur":100},{"pid":1,"tid":0,"id":152,"name":"task: renderscript compile","args":{"span_id":"152","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035293916000,"dur":27000},{"pid":1,"tid":0,"id":153,"name":"task: generate res values","args":{"span_id":"153","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035293944000,"dur":1000},{"pid":1,"tid":0,"id":154,"name":"task: unknown task type","args":{"span_id":"154","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035293946000,"dur":100},{"pid":1,"tid":0,"id":155,"name":"task: merge resources","args":{"span_id":"155","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035293947000,"dur":8000},{"pid":1,"tid":0,"id":156,"name":"task: renderscript compile","args":{"span_id":"156","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035293956000,"dur":35000},{"pid":1,"tid":0,"id":157,"name":"task: generate res values","args":{"span_id":"157","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035293992000,"dur":1000},{"pid":1,"tid":0,"id":158,"name":"task: unknown task type","args":{"span_id":"158","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035293995000,"dur":100},{"pid":1,"tid":0,"id":159,"name":"task: merge resources","args":{"span_id":"159","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035293996000,"dur":3000},{"pid":1,"tid":0,"id":160,"name":"task: merge resources","args":{"span_id":"160","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035294000000,"dur":240000},{"pid":1,"tid":0,"id":161,"name":"task: splits discovery","args":{"span_id":"161","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 87\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035294241000,"dur":100},{"pid":1,"tid":0,"id":162,"name":"task: platform attr extractor","args":{"span_id":"162","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 109\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035294242000,"dur":1000},{"pid":1,"tid":0,"id":163,"name":"task: platform attr extractor","args":{"span_id":"163","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 109\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035294244000,"dur":100},{"pid":1,"tid":0,"id":164,"name":"task: process android resources","args":{"span_id":"164","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035294245000,"dur":181000},{"pid":1,"tid":0,"id":165,"name":"task: process android resources","args":{"span_id":"165","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035294429000,"dur":633000},{"pid":1,"tid":0,"id":166,"name":"task: process android resources","args":{"span_id":"166","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035295064000,"dur":1049000},{"pid":1,"tid":0,"id":167,"name":"task: package application","args":{"span_id":"167","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 45\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035296114000,"dur":417000},{"pid":1,"tid":0,"id":168,"name":"task: aidl compile","args":{"span_id":"168","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035296532000,"dur":14000},{"pid":1,"tid":0,"id":169,"name":"task: aidl compile","args":{"span_id":"169","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035296547000,"dur":12000},{"pid":1,"tid":0,"id":170,"name":"task: aidl compile","args":{"span_id":"170","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035296560000,"dur":8000},{"pid":1,"tid":0,"id":171,"name":"task: generate build config","args":{"span_id":"171","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035296569000,"dur":2000},{"pid":1,"tid":0,"id":172,"name":"task: prepare lint jar","args":{"span_id":"172","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 119\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035296572000,"dur":1000},{"pid":1,"tid":0,"id":173,"name":"task: unknown task type","args":{"span_id":"173","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035296573000,"dur":1000},{"pid":1,"tid":0,"id":174,"name":"task: generate build config","args":{"span_id":"174","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035296574000,"dur":2000},{"pid":1,"tid":0,"id":175,"name":"task: generate build config","args":{"span_id":"175","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035296576000,"dur":3000},{"pid":1,"tid":0,"id":176,"name":"task: prepare lint jar","args":{"span_id":"176","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 119\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548035296579000,"dur":1000},{"pid":1,"tid":0,"id":177,"name":"task: unknown task type","args":{"span_id":"177","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035296581000,"dur":100},{"pid":1,"tid":0,"id":178,"name":"task: java pre compile","args":{"span_id":"178","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 76\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035296582000,"dur":37000},{"pid":1,"tid":0,"id":179,"name":"task: android java compile","args":{"span_id":"179","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 3\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035296621000,"dur":477000},{"pid":1,"tid":0,"id":180,"name":"task: unknown task type","args":{"span_id":"180","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035297100000,"dur":100},{"pid":1,"tid":3,"id":182,"name":"transform prep: unknown transform type","args":{"span_id":"182","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 0\nis_incremental: false\n"},"ph":"X","ts":1548035297106000,"dur":1000},{"pid":1,"tid":3,"id":183,"name":"transform: unknown transform type","args":{"span_id":"183","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","transform":"type: 0\nis_incremental: false\n"},"ph":"X","ts":1548035297107000,"dur":9000},{"pid":1,"tid":0,"id":181,"name":"task: transform","args":{"span_id":"181","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035297102000,"dur":16000},{"pid":1,"tid":0,"id":184,"name":"task: kotlin compile","args":{"span_id":"184","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 116\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: true\n"},"ph":"X","ts":1548035297119000,"dur":11355000},{"pid":1,"tid":0,"id":185,"name":"task: build info writer","args":{"span_id":"185","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 70\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548035308476000,"dur":2000},{"pid":1,"tid":1,"id":186,"name":"base plugin build finished","args":{"span_id":"186","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\nmetrics {\n metrics_time_ns: 43861\n apk_size: 2819782\n resources_ap_size: 1421000\n}\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035308481000,"dur":100},{"pid":1,"tid":1,"id":187,"name":"base plugin build finished","args":{"span_id":"187","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548035308481000,"dur":100},{"pid":1,"tid":1,"id":188,"name":"base plugin build finished","args":{"span_id":"188","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548035308481000,"dur":1000}] \ No newline at end of file diff --git a/AndroidLearnProject/build/android-profile/profile-2019-01-21-09-48-28-490.rawproto b/AndroidLearnProject/build/android-profile/profile-2019-01-21-09-48-28-490.rawproto deleted file mode 100644 index 3fcc483..0000000 Binary files a/AndroidLearnProject/build/android-profile/profile-2019-01-21-09-48-28-490.rawproto and /dev/null differ diff --git a/AndroidLearnProject/build/android-profile/profile-2019-01-21-16-54-53-990.json b/AndroidLearnProject/build/android-profile/profile-2019-01-21-16-54-53-990.json deleted file mode 100644 index 611b1a3..0000000 --- a/AndroidLearnProject/build/android-profile/profile-2019-01-21-16-54-53-990.json +++ /dev/null @@ -1 +0,0 @@ -[{"pid":0,"ph":"i","name":"Memory sample","ts":1548060879592000,"args":{"JVM stats":"heap_memory_usage: 21691352\nnon_heap_memory_usage: 50114640\nloaded_class_count: 7546\nthread_count: 21\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 7\n gc_time: 101\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 2\n gc_time: 151\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060893999000,"args":{"JVM stats":"heap_memory_usage: 148514848\nnon_heap_memory_usage: 103229144\nloaded_class_count: 13205\nthread_count: 22\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 6\n gc_time: 240\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 1\n gc_time: 357\n}\n"}},{"pid":1,"tid":1,"id":2,"name":"base plugin project configure","args":{"span_id":"2","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060879680000,"dur":690000},{"pid":1,"tid":1,"id":3,"name":"base plugin project base extension creation","args":{"span_id":"3","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060880371000,"dur":505000},{"pid":1,"tid":1,"id":5,"name":"task manager create tasks","args":{"span_id":"5","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060880878000,"dur":109000},{"pid":1,"tid":1,"id":4,"name":"base plugin project tasks creation","args":{"span_id":"4","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060880877000,"dur":112000},{"pid":1,"tid":1,"id":8,"name":"variant manager create variants","args":{"span_id":"8","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060883248000,"dur":223000},{"pid":1,"tid":1,"id":9,"name":"variant manager create tests tasks","args":{"span_id":"9","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060883472000,"dur":33000},{"pid":1,"tid":1,"id":11,"name":"app task manager create merge manifest task","args":{"span_id":"11","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060883553000,"dur":33000},{"pid":1,"tid":1,"id":12,"name":"app task manager create generate res values task","args":{"span_id":"12","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060883587000,"dur":5000},{"pid":1,"tid":1,"id":13,"name":"app task manager create create renderscript task","args":{"span_id":"13","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060883592000,"dur":12000},{"pid":1,"tid":1,"id":14,"name":"app task manager create merge resources task","args":{"span_id":"14","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060883604000,"dur":36000},{"pid":1,"tid":1,"id":15,"name":"app task manager create merge assets task","args":{"span_id":"15","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060883642000,"dur":28000},{"pid":1,"tid":1,"id":16,"name":"app task manager create build config task","args":{"span_id":"16","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060883670000,"dur":8000},{"pid":1,"tid":1,"id":17,"name":"app task manager create process res task","args":{"span_id":"17","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060883679000,"dur":109000},{"pid":1,"tid":1,"id":18,"name":"app task manager create aidl task","args":{"span_id":"18","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060883789000,"dur":10000},{"pid":1,"tid":1,"id":19,"name":"app task manager create shader task","args":{"span_id":"19","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060883800000,"dur":10000},{"pid":1,"tid":1,"id":20,"name":"app task manager create ndk task","args":{"span_id":"20","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060883810000,"dur":12000},{"pid":1,"tid":1,"id":21,"name":"app task manager create external native build task","args":{"span_id":"21","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060883822000,"dur":3000},{"pid":1,"tid":1,"id":22,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"22","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060883825000,"dur":41000},{"pid":1,"tid":1,"id":23,"name":"app task manager create compile task","args":{"span_id":"23","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060883866000,"dur":103000},{"pid":1,"tid":1,"id":24,"name":"app task manager create packaging task","args":{"span_id":"24","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060883970000,"dur":79000},{"pid":1,"tid":1,"id":25,"name":"app task manager create lint task","args":{"span_id":"25","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884050000,"dur":9000},{"pid":1,"tid":1,"id":10,"name":"variant manager create tasks for variant","args":{"span_id":"10","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060883505000,"dur":554000},{"pid":1,"tid":1,"id":26,"name":"variant manager create tasks for variant","args":{"span_id":"26","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060884059000,"dur":110000},{"pid":1,"tid":1,"id":28,"name":"app task manager create merge manifest task","args":{"span_id":"28","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884172000,"dur":2000},{"pid":1,"tid":1,"id":29,"name":"app task manager create generate res values task","args":{"span_id":"29","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884174000,"dur":100},{"pid":1,"tid":1,"id":30,"name":"app task manager create create renderscript task","args":{"span_id":"30","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884174000,"dur":1000},{"pid":1,"tid":1,"id":31,"name":"app task manager create merge resources task","args":{"span_id":"31","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884175000,"dur":2000},{"pid":1,"tid":1,"id":32,"name":"app task manager create merge assets task","args":{"span_id":"32","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884177000,"dur":100},{"pid":1,"tid":1,"id":33,"name":"app task manager create build config task","args":{"span_id":"33","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884177000,"dur":2000},{"pid":1,"tid":1,"id":34,"name":"app task manager create process res task","args":{"span_id":"34","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884179000,"dur":15000},{"pid":1,"tid":1,"id":35,"name":"app task manager create aidl task","args":{"span_id":"35","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884195000,"dur":1000},{"pid":1,"tid":1,"id":36,"name":"app task manager create shader task","args":{"span_id":"36","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884196000,"dur":1000},{"pid":1,"tid":1,"id":37,"name":"app task manager create ndk task","args":{"span_id":"37","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884197000,"dur":1000},{"pid":1,"tid":1,"id":38,"name":"app task manager create external native build task","args":{"span_id":"38","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884198000,"dur":100},{"pid":1,"tid":1,"id":39,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"39","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884198000,"dur":2000},{"pid":1,"tid":1,"id":40,"name":"app task manager create compile task","args":{"span_id":"40","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884200000,"dur":17000},{"pid":1,"tid":1,"id":41,"name":"app task manager create packaging task","args":{"span_id":"41","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884217000,"dur":5000},{"pid":1,"tid":1,"id":42,"name":"app task manager create lint task","args":{"span_id":"42","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884222000,"dur":1000},{"pid":1,"tid":1,"id":27,"name":"variant manager create tasks for variant","args":{"span_id":"27","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884169000,"dur":54000},{"pid":1,"tid":1,"id":43,"name":"variant manager create tasks for variant","args":{"span_id":"43","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060884223000,"dur":11000},{"pid":1,"tid":1,"id":44,"name":"variant manager create tasks for variant","args":{"span_id":"44","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060884234000,"dur":70000},{"pid":1,"tid":1,"id":46,"name":"app task manager create merge manifest task","args":{"span_id":"46","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884307000,"dur":1000},{"pid":1,"tid":1,"id":47,"name":"app task manager create generate res values task","args":{"span_id":"47","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884308000,"dur":100},{"pid":1,"tid":1,"id":48,"name":"app task manager create create renderscript task","args":{"span_id":"48","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884308000,"dur":1000},{"pid":1,"tid":1,"id":49,"name":"app task manager create merge resources task","args":{"span_id":"49","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884309000,"dur":1000},{"pid":1,"tid":1,"id":50,"name":"app task manager create merge assets task","args":{"span_id":"50","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884310000,"dur":100},{"pid":1,"tid":1,"id":51,"name":"app task manager create build config task","args":{"span_id":"51","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884310000,"dur":100},{"pid":1,"tid":1,"id":52,"name":"app task manager create process res task","args":{"span_id":"52","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884310000,"dur":3000},{"pid":1,"tid":1,"id":53,"name":"app task manager create aidl task","args":{"span_id":"53","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884313000,"dur":1000},{"pid":1,"tid":1,"id":54,"name":"app task manager create shader task","args":{"span_id":"54","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884314000,"dur":1000},{"pid":1,"tid":1,"id":55,"name":"app task manager create ndk task","args":{"span_id":"55","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884315000,"dur":2000},{"pid":1,"tid":1,"id":56,"name":"app task manager create external native build task","args":{"span_id":"56","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884317000,"dur":100},{"pid":1,"tid":1,"id":57,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"57","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884317000,"dur":1000},{"pid":1,"tid":1,"id":58,"name":"app task manager create compile task","args":{"span_id":"58","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884319000,"dur":11000},{"pid":1,"tid":1,"id":59,"name":"app task manager create packaging task","args":{"span_id":"59","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884330000,"dur":6000},{"pid":1,"tid":1,"id":60,"name":"app task manager create lint task","args":{"span_id":"60","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884337000,"dur":100},{"pid":1,"tid":1,"id":45,"name":"variant manager create tasks for variant","args":{"span_id":"45","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884304000,"dur":33000},{"pid":1,"tid":1,"id":61,"name":"variant manager create tasks for variant","args":{"span_id":"61","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060884338000,"dur":9000},{"pid":1,"tid":1,"id":63,"name":"app task manager create merge manifest task","args":{"span_id":"63","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884350000,"dur":100},{"pid":1,"tid":1,"id":64,"name":"app task manager create generate res values task","args":{"span_id":"64","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884350000,"dur":100},{"pid":1,"tid":1,"id":65,"name":"app task manager create create renderscript task","args":{"span_id":"65","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884350000,"dur":1000},{"pid":1,"tid":1,"id":66,"name":"app task manager create merge resources task","args":{"span_id":"66","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884351000,"dur":100},{"pid":1,"tid":1,"id":67,"name":"app task manager create merge assets task","args":{"span_id":"67","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884351000,"dur":1000},{"pid":1,"tid":1,"id":68,"name":"app task manager create build config task","args":{"span_id":"68","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884352000,"dur":1000},{"pid":1,"tid":1,"id":69,"name":"app task manager create process res task","args":{"span_id":"69","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884353000,"dur":2000},{"pid":1,"tid":1,"id":70,"name":"app task manager create aidl task","args":{"span_id":"70","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884355000,"dur":1000},{"pid":1,"tid":1,"id":71,"name":"app task manager create shader task","args":{"span_id":"71","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884356000,"dur":100},{"pid":1,"tid":1,"id":72,"name":"app task manager create ndk task","args":{"span_id":"72","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884357000,"dur":100},{"pid":1,"tid":1,"id":73,"name":"app task manager create external native build task","args":{"span_id":"73","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884357000,"dur":100},{"pid":1,"tid":1,"id":74,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"74","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884357000,"dur":1000},{"pid":1,"tid":1,"id":75,"name":"app task manager create compile task","args":{"span_id":"75","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884359000,"dur":8000},{"pid":1,"tid":1,"id":76,"name":"app task manager create packaging task","args":{"span_id":"76","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884367000,"dur":2000},{"pid":1,"tid":1,"id":77,"name":"app task manager create lint task","args":{"span_id":"77","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884369000,"dur":1000},{"pid":1,"tid":1,"id":62,"name":"variant manager create tasks for variant","args":{"span_id":"62","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884347000,"dur":23000},{"pid":1,"tid":1,"id":78,"name":"variant manager create tasks for variant","args":{"span_id":"78","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060884370000,"dur":9000},{"pid":1,"tid":1,"id":79,"name":"variant manager create tasks for variant","args":{"span_id":"79","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060884379000,"dur":28000},{"pid":1,"tid":1,"id":81,"name":"app task manager create merge manifest task","args":{"span_id":"81","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884411000,"dur":100},{"pid":1,"tid":1,"id":82,"name":"app task manager create generate res values task","args":{"span_id":"82","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884412000,"dur":100},{"pid":1,"tid":1,"id":83,"name":"app task manager create create renderscript task","args":{"span_id":"83","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884412000,"dur":1000},{"pid":1,"tid":1,"id":84,"name":"app task manager create merge resources task","args":{"span_id":"84","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884413000,"dur":100},{"pid":1,"tid":1,"id":85,"name":"app task manager create merge assets task","args":{"span_id":"85","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884413000,"dur":1000},{"pid":1,"tid":1,"id":86,"name":"app task manager create build config task","args":{"span_id":"86","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884414000,"dur":100},{"pid":1,"tid":1,"id":87,"name":"app task manager create process res task","args":{"span_id":"87","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884414000,"dur":3000},{"pid":1,"tid":1,"id":88,"name":"app task manager create aidl task","args":{"span_id":"88","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884417000,"dur":100},{"pid":1,"tid":1,"id":89,"name":"app task manager create shader task","args":{"span_id":"89","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884417000,"dur":1000},{"pid":1,"tid":1,"id":90,"name":"app task manager create ndk task","args":{"span_id":"90","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884418000,"dur":100},{"pid":1,"tid":1,"id":91,"name":"app task manager create external native build task","args":{"span_id":"91","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884418000,"dur":100},{"pid":1,"tid":1,"id":92,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"92","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884418000,"dur":1000},{"pid":1,"tid":1,"id":93,"name":"app task manager create compile task","args":{"span_id":"93","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884419000,"dur":4000},{"pid":1,"tid":1,"id":94,"name":"app task manager create packaging task","args":{"span_id":"94","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884423000,"dur":2000},{"pid":1,"tid":1,"id":95,"name":"app task manager create lint task","args":{"span_id":"95","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884425000,"dur":100},{"pid":1,"tid":1,"id":80,"name":"variant manager create tasks for variant","args":{"span_id":"80","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884407000,"dur":18000},{"pid":1,"tid":1,"id":96,"name":"variant manager create tasks for variant","args":{"span_id":"96","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060884425000,"dur":12000},{"pid":1,"tid":1,"id":98,"name":"app task manager create merge manifest task","args":{"span_id":"98","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884439000,"dur":1000},{"pid":1,"tid":1,"id":99,"name":"app task manager create generate res values task","args":{"span_id":"99","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884440000,"dur":100},{"pid":1,"tid":1,"id":100,"name":"app task manager create create renderscript task","args":{"span_id":"100","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884440000,"dur":2000},{"pid":1,"tid":1,"id":101,"name":"app task manager create merge resources task","args":{"span_id":"101","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884442000,"dur":1000},{"pid":1,"tid":1,"id":102,"name":"app task manager create merge assets task","args":{"span_id":"102","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884443000,"dur":1000},{"pid":1,"tid":1,"id":103,"name":"app task manager create build config task","args":{"span_id":"103","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884444000,"dur":1000},{"pid":1,"tid":1,"id":104,"name":"app task manager create process res task","args":{"span_id":"104","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884445000,"dur":2000},{"pid":1,"tid":1,"id":105,"name":"app task manager create aidl task","args":{"span_id":"105","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884447000,"dur":1000},{"pid":1,"tid":1,"id":106,"name":"app task manager create shader task","args":{"span_id":"106","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884448000,"dur":100},{"pid":1,"tid":1,"id":107,"name":"app task manager create ndk task","args":{"span_id":"107","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884448000,"dur":1000},{"pid":1,"tid":1,"id":108,"name":"app task manager create external native build task","args":{"span_id":"108","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884449000,"dur":100},{"pid":1,"tid":1,"id":109,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"109","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884449000,"dur":1000},{"pid":1,"tid":1,"id":110,"name":"app task manager create compile task","args":{"span_id":"110","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884450000,"dur":9000},{"pid":1,"tid":1,"id":111,"name":"app task manager create packaging task","args":{"span_id":"111","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884459000,"dur":3000},{"pid":1,"tid":1,"id":112,"name":"app task manager create lint task","args":{"span_id":"112","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884462000,"dur":1000},{"pid":1,"tid":1,"id":97,"name":"variant manager create tasks for variant","args":{"span_id":"97","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884437000,"dur":26000},{"pid":1,"tid":1,"id":113,"name":"variant manager create tasks for variant","args":{"span_id":"113","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060884463000,"dur":8000},{"pid":1,"tid":1,"id":114,"name":"variant manager create tasks for variant","args":{"span_id":"114","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060884471000,"dur":29000},{"pid":1,"tid":1,"id":116,"name":"app task manager create merge manifest task","args":{"span_id":"116","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884502000,"dur":1000},{"pid":1,"tid":1,"id":117,"name":"app task manager create generate res values task","args":{"span_id":"117","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884504000,"dur":100},{"pid":1,"tid":1,"id":118,"name":"app task manager create create renderscript task","args":{"span_id":"118","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884504000,"dur":100},{"pid":1,"tid":1,"id":119,"name":"app task manager create merge resources task","args":{"span_id":"119","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884504000,"dur":1000},{"pid":1,"tid":1,"id":120,"name":"app task manager create merge assets task","args":{"span_id":"120","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884505000,"dur":100},{"pid":1,"tid":1,"id":121,"name":"app task manager create build config task","args":{"span_id":"121","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884505000,"dur":100},{"pid":1,"tid":1,"id":122,"name":"app task manager create process res task","args":{"span_id":"122","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884505000,"dur":5000},{"pid":1,"tid":1,"id":123,"name":"app task manager create aidl task","args":{"span_id":"123","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884510000,"dur":100},{"pid":1,"tid":1,"id":124,"name":"app task manager create shader task","args":{"span_id":"124","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884510000,"dur":1000},{"pid":1,"tid":1,"id":125,"name":"app task manager create ndk task","args":{"span_id":"125","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884511000,"dur":1000},{"pid":1,"tid":1,"id":126,"name":"app task manager create external native build task","args":{"span_id":"126","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884512000,"dur":100},{"pid":1,"tid":1,"id":127,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"127","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884512000,"dur":1000},{"pid":1,"tid":1,"id":128,"name":"app task manager create compile task","args":{"span_id":"128","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884513000,"dur":16000},{"pid":1,"tid":1,"id":129,"name":"app task manager create packaging task","args":{"span_id":"129","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884529000,"dur":2000},{"pid":1,"tid":1,"id":130,"name":"app task manager create lint task","args":{"span_id":"130","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884531000,"dur":100},{"pid":1,"tid":1,"id":115,"name":"variant manager create tasks for variant","args":{"span_id":"115","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884500000,"dur":32000},{"pid":1,"tid":1,"id":131,"name":"variant manager create tasks for variant","args":{"span_id":"131","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060884532000,"dur":9000},{"pid":1,"tid":1,"id":133,"name":"app task manager create merge manifest task","args":{"span_id":"133","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884543000,"dur":1000},{"pid":1,"tid":1,"id":134,"name":"app task manager create generate res values task","args":{"span_id":"134","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884544000,"dur":100},{"pid":1,"tid":1,"id":135,"name":"app task manager create create renderscript task","args":{"span_id":"135","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884544000,"dur":1000},{"pid":1,"tid":1,"id":136,"name":"app task manager create merge resources task","args":{"span_id":"136","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884545000,"dur":1000},{"pid":1,"tid":1,"id":137,"name":"app task manager create merge assets task","args":{"span_id":"137","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884547000,"dur":100},{"pid":1,"tid":1,"id":138,"name":"app task manager create build config task","args":{"span_id":"138","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884547000,"dur":100},{"pid":1,"tid":1,"id":139,"name":"app task manager create process res task","args":{"span_id":"139","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884547000,"dur":3000},{"pid":1,"tid":1,"id":140,"name":"app task manager create aidl task","args":{"span_id":"140","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884550000,"dur":100},{"pid":1,"tid":1,"id":141,"name":"app task manager create shader task","args":{"span_id":"141","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884550000,"dur":1000},{"pid":1,"tid":1,"id":142,"name":"app task manager create ndk task","args":{"span_id":"142","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884551000,"dur":100},{"pid":1,"tid":1,"id":143,"name":"app task manager create external native build task","args":{"span_id":"143","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884551000,"dur":100},{"pid":1,"tid":1,"id":144,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"144","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884551000,"dur":1000},{"pid":1,"tid":1,"id":145,"name":"app task manager create compile task","args":{"span_id":"145","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884552000,"dur":4000},{"pid":1,"tid":1,"id":146,"name":"app task manager create packaging task","args":{"span_id":"146","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884556000,"dur":2000},{"pid":1,"tid":1,"id":147,"name":"app task manager create lint task","args":{"span_id":"147","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884558000,"dur":100},{"pid":1,"tid":1,"id":132,"name":"variant manager create tasks for variant","args":{"span_id":"132","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884541000,"dur":17000},{"pid":1,"tid":1,"id":148,"name":"variant manager create tasks for variant","args":{"span_id":"148","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060884558000,"dur":7000},{"pid":1,"tid":1,"id":149,"name":"variant manager create tasks for variant","args":{"span_id":"149","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060884565000,"dur":14000},{"pid":1,"tid":1,"id":151,"name":"app task manager create merge manifest task","args":{"span_id":"151","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884582000,"dur":1000},{"pid":1,"tid":1,"id":152,"name":"app task manager create generate res values task","args":{"span_id":"152","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884583000,"dur":100},{"pid":1,"tid":1,"id":153,"name":"app task manager create create renderscript task","args":{"span_id":"153","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884583000,"dur":100},{"pid":1,"tid":1,"id":154,"name":"app task manager create merge resources task","args":{"span_id":"154","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884583000,"dur":1000},{"pid":1,"tid":1,"id":155,"name":"app task manager create merge assets task","args":{"span_id":"155","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884584000,"dur":1000},{"pid":1,"tid":1,"id":156,"name":"app task manager create build config task","args":{"span_id":"156","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884585000,"dur":1000},{"pid":1,"tid":1,"id":157,"name":"app task manager create process res task","args":{"span_id":"157","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884586000,"dur":2000},{"pid":1,"tid":1,"id":158,"name":"app task manager create aidl task","args":{"span_id":"158","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884588000,"dur":100},{"pid":1,"tid":1,"id":159,"name":"app task manager create shader task","args":{"span_id":"159","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884588000,"dur":1000},{"pid":1,"tid":1,"id":160,"name":"app task manager create ndk task","args":{"span_id":"160","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884589000,"dur":100},{"pid":1,"tid":1,"id":161,"name":"app task manager create external native build task","args":{"span_id":"161","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884589000,"dur":100},{"pid":1,"tid":1,"id":162,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"162","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884589000,"dur":1000},{"pid":1,"tid":1,"id":163,"name":"app task manager create compile task","args":{"span_id":"163","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884590000,"dur":6000},{"pid":1,"tid":1,"id":164,"name":"app task manager create packaging task","args":{"span_id":"164","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884596000,"dur":3000},{"pid":1,"tid":1,"id":165,"name":"app task manager create lint task","args":{"span_id":"165","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884599000,"dur":100},{"pid":1,"tid":1,"id":150,"name":"variant manager create tasks for variant","args":{"span_id":"150","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884580000,"dur":19000},{"pid":1,"tid":1,"id":166,"name":"variant manager create tasks for variant","args":{"span_id":"166","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060884599000,"dur":7000},{"pid":1,"tid":1,"id":168,"name":"app task manager create merge manifest task","args":{"span_id":"168","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884607000,"dur":1000},{"pid":1,"tid":1,"id":169,"name":"app task manager create generate res values task","args":{"span_id":"169","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884608000,"dur":100},{"pid":1,"tid":1,"id":170,"name":"app task manager create create renderscript task","args":{"span_id":"170","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884610000,"dur":1000},{"pid":1,"tid":1,"id":171,"name":"app task manager create merge resources task","args":{"span_id":"171","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884611000,"dur":100},{"pid":1,"tid":1,"id":172,"name":"app task manager create merge assets task","args":{"span_id":"172","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884611000,"dur":100},{"pid":1,"tid":1,"id":173,"name":"app task manager create build config task","args":{"span_id":"173","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884612000,"dur":100},{"pid":1,"tid":1,"id":174,"name":"app task manager create process res task","args":{"span_id":"174","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884612000,"dur":2000},{"pid":1,"tid":1,"id":175,"name":"app task manager create aidl task","args":{"span_id":"175","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884614000,"dur":1000},{"pid":1,"tid":1,"id":176,"name":"app task manager create shader task","args":{"span_id":"176","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884615000,"dur":100},{"pid":1,"tid":1,"id":177,"name":"app task manager create ndk task","args":{"span_id":"177","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884615000,"dur":1000},{"pid":1,"tid":1,"id":178,"name":"app task manager create external native build task","args":{"span_id":"178","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884616000,"dur":100},{"pid":1,"tid":1,"id":179,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"179","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884616000,"dur":100},{"pid":1,"tid":1,"id":180,"name":"app task manager create compile task","args":{"span_id":"180","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884616000,"dur":5000},{"pid":1,"tid":1,"id":181,"name":"app task manager create packaging task","args":{"span_id":"181","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884621000,"dur":2000},{"pid":1,"tid":1,"id":182,"name":"app task manager create lint task","args":{"span_id":"182","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884623000,"dur":100},{"pid":1,"tid":1,"id":167,"name":"variant manager create tasks for variant","args":{"span_id":"167","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060884606000,"dur":18000},{"pid":1,"tid":1,"id":183,"name":"variant manager create tasks for variant","args":{"span_id":"183","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060884624000,"dur":9000},{"pid":1,"tid":1,"id":184,"name":"variant manager create tasks for variant","args":{"span_id":"184","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060884633000,"dur":39000},{"pid":1,"tid":1,"id":7,"name":"variant manager create android tasks","args":{"span_id":"7","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060883246000,"dur":1549000},{"pid":1,"tid":1,"id":185,"name":"variant manager external native config values","args":{"span_id":"185","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060884800000,"dur":100},{"pid":1,"tid":1,"id":6,"name":"base plugin create android tasks","args":{"span_id":"6","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060881273000,"dur":3527000},{"pid":1,"tid":1,"id":186,"name":"base plugin project configure","args":{"span_id":"186","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548060884833000,"dur":12000},{"pid":1,"tid":1,"id":187,"name":"base plugin project base extension creation","args":{"span_id":"187","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548060884845000,"dur":17000},{"pid":1,"tid":1,"id":189,"name":"task manager create tasks","args":{"span_id":"189","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548060884862000,"dur":2000},{"pid":1,"tid":1,"id":188,"name":"base plugin project tasks creation","args":{"span_id":"188","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548060884862000,"dur":2000},{"pid":1,"tid":1,"id":192,"name":"variant manager create variants","args":{"span_id":"192","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548060885208000,"dur":11000},{"pid":1,"tid":1,"id":193,"name":"variant manager create tests tasks","args":{"span_id":"193","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548060885219000,"dur":2000},{"pid":1,"tid":1,"id":195,"name":"lib task manager create generate res values task","args":{"span_id":"195","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885224000,"dur":1000},{"pid":1,"tid":1,"id":196,"name":"lib task manager create merge manifest task","args":{"span_id":"196","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885226000,"dur":19000},{"pid":1,"tid":1,"id":197,"name":"lib task manager create create renderscript task","args":{"span_id":"197","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885246000,"dur":100},{"pid":1,"tid":1,"id":198,"name":"lib task manager create merge resources task","args":{"span_id":"198","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885247000,"dur":3000},{"pid":1,"tid":1,"id":199,"name":"lib task manager create merge assets task","args":{"span_id":"199","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885250000,"dur":100},{"pid":1,"tid":1,"id":200,"name":"lib task manager create build config task","args":{"span_id":"200","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885251000,"dur":100},{"pid":1,"tid":1,"id":201,"name":"lib task manager create process res task","args":{"span_id":"201","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885252000,"dur":8000},{"pid":1,"tid":1,"id":202,"name":"lib task manager create aidl task","args":{"span_id":"202","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885260000,"dur":1000},{"pid":1,"tid":1,"id":203,"name":"lib task manager create shader task","args":{"span_id":"203","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885262000,"dur":1000},{"pid":1,"tid":1,"id":204,"name":"lib task manager create compile task","args":{"span_id":"204","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885264000,"dur":2000},{"pid":1,"tid":1,"id":205,"name":"lib task manager create ndk task","args":{"span_id":"205","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885266000,"dur":2000},{"pid":1,"tid":1,"id":206,"name":"lib task manager create external native build task","args":{"span_id":"206","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885268000,"dur":100},{"pid":1,"tid":1,"id":207,"name":"lib task manager create packaging task","args":{"span_id":"207","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885269000,"dur":2000},{"pid":1,"tid":1,"id":208,"name":"lib task manager create merge proguard file task","args":{"span_id":"208","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885272000,"dur":9000},{"pid":1,"tid":1,"id":209,"name":"lib task manager create post compilation task","args":{"span_id":"209","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885316000,"dur":14000},{"pid":1,"tid":1,"id":210,"name":"lib task manager create lint task","args":{"span_id":"210","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885332000,"dur":1000},{"pid":1,"tid":1,"id":194,"name":"variant manager create tasks for variant","args":{"span_id":"194","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885221000,"dur":112000},{"pid":1,"tid":1,"id":211,"name":"variant manager create tasks for variant","args":{"span_id":"211","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548060885333000,"dur":5000},{"pid":1,"tid":1,"id":213,"name":"lib task manager create generate res values task","args":{"span_id":"213","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885339000,"dur":100},{"pid":1,"tid":1,"id":214,"name":"lib task manager create merge manifest task","args":{"span_id":"214","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885339000,"dur":1000},{"pid":1,"tid":1,"id":215,"name":"lib task manager create create renderscript task","args":{"span_id":"215","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885340000,"dur":100},{"pid":1,"tid":1,"id":216,"name":"lib task manager create merge resources task","args":{"span_id":"216","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885340000,"dur":2000},{"pid":1,"tid":1,"id":217,"name":"lib task manager create merge assets task","args":{"span_id":"217","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885342000,"dur":100},{"pid":1,"tid":1,"id":218,"name":"lib task manager create build config task","args":{"span_id":"218","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885342000,"dur":1000},{"pid":1,"tid":1,"id":219,"name":"lib task manager create process res task","args":{"span_id":"219","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885343000,"dur":8000},{"pid":1,"tid":1,"id":220,"name":"lib task manager create aidl task","args":{"span_id":"220","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885351000,"dur":1000},{"pid":1,"tid":1,"id":221,"name":"lib task manager create shader task","args":{"span_id":"221","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885352000,"dur":1000},{"pid":1,"tid":1,"id":222,"name":"lib task manager create compile task","args":{"span_id":"222","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885353000,"dur":3000},{"pid":1,"tid":1,"id":223,"name":"lib task manager create ndk task","args":{"span_id":"223","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885356000,"dur":1000},{"pid":1,"tid":1,"id":224,"name":"lib task manager create external native build task","args":{"span_id":"224","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885357000,"dur":100},{"pid":1,"tid":1,"id":225,"name":"lib task manager create packaging task","args":{"span_id":"225","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885358000,"dur":100},{"pid":1,"tid":1,"id":226,"name":"lib task manager create merge proguard file task","args":{"span_id":"226","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885358000,"dur":1000},{"pid":1,"tid":1,"id":227,"name":"lib task manager create post compilation task","args":{"span_id":"227","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885359000,"dur":3000},{"pid":1,"tid":1,"id":228,"name":"lib task manager create lint task","args":{"span_id":"228","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885369000,"dur":1000},{"pid":1,"tid":1,"id":212,"name":"variant manager create tasks for variant","args":{"span_id":"212","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885338000,"dur":32000},{"pid":1,"tid":1,"id":229,"name":"variant manager create tasks for variant","args":{"span_id":"229","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548060885370000,"dur":6000},{"pid":1,"tid":1,"id":230,"name":"variant manager create tasks for variant","args":{"span_id":"230","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548060885376000,"dur":26000},{"pid":1,"tid":1,"id":191,"name":"variant manager create android tasks","args":{"span_id":"191","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548060885208000,"dur":208000},{"pid":1,"tid":1,"id":231,"name":"variant manager external native config values","args":{"span_id":"231","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548060885417000,"dur":100},{"pid":1,"tid":1,"id":190,"name":"base plugin create android tasks","args":{"span_id":"190","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548060885205000,"dur":212000},{"pid":1,"tid":1,"id":232,"name":"base plugin project configure","args":{"span_id":"232","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060885804000,"dur":9000},{"pid":1,"tid":1,"id":233,"name":"base plugin project base extension creation","args":{"span_id":"233","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060885813000,"dur":7000},{"pid":1,"tid":1,"id":235,"name":"task manager create tasks","args":{"span_id":"235","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060885820000,"dur":1000},{"pid":1,"tid":1,"id":234,"name":"base plugin project tasks creation","args":{"span_id":"234","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060885820000,"dur":1000},{"pid":1,"tid":1,"id":238,"name":"variant manager create variants","args":{"span_id":"238","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060885849000,"dur":8000},{"pid":1,"tid":1,"id":239,"name":"variant manager create tests tasks","args":{"span_id":"239","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060885857000,"dur":1000},{"pid":1,"tid":1,"id":241,"name":"lib task manager create generate res values task","args":{"span_id":"241","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885859000,"dur":100},{"pid":1,"tid":1,"id":242,"name":"lib task manager create merge manifest task","args":{"span_id":"242","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885859000,"dur":1000},{"pid":1,"tid":1,"id":243,"name":"lib task manager create create renderscript task","args":{"span_id":"243","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885861000,"dur":100},{"pid":1,"tid":1,"id":244,"name":"lib task manager create merge resources task","args":{"span_id":"244","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885861000,"dur":1000},{"pid":1,"tid":1,"id":245,"name":"lib task manager create merge assets task","args":{"span_id":"245","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885862000,"dur":1000},{"pid":1,"tid":1,"id":246,"name":"lib task manager create build config task","args":{"span_id":"246","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885863000,"dur":100},{"pid":1,"tid":1,"id":247,"name":"lib task manager create process res task","args":{"span_id":"247","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885863000,"dur":5000},{"pid":1,"tid":1,"id":248,"name":"lib task manager create aidl task","args":{"span_id":"248","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885868000,"dur":100},{"pid":1,"tid":1,"id":249,"name":"lib task manager create shader task","args":{"span_id":"249","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885868000,"dur":1000},{"pid":1,"tid":1,"id":250,"name":"lib task manager create compile task","args":{"span_id":"250","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885869000,"dur":1000},{"pid":1,"tid":1,"id":251,"name":"lib task manager create ndk task","args":{"span_id":"251","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885870000,"dur":1000},{"pid":1,"tid":1,"id":252,"name":"lib task manager create external native build task","args":{"span_id":"252","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885871000,"dur":100},{"pid":1,"tid":1,"id":253,"name":"lib task manager create packaging task","args":{"span_id":"253","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885872000,"dur":100},{"pid":1,"tid":1,"id":254,"name":"lib task manager create merge proguard file task","args":{"span_id":"254","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885872000,"dur":1000},{"pid":1,"tid":1,"id":255,"name":"lib task manager create post compilation task","args":{"span_id":"255","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885873000,"dur":4000},{"pid":1,"tid":1,"id":256,"name":"lib task manager create lint task","args":{"span_id":"256","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885878000,"dur":100},{"pid":1,"tid":1,"id":240,"name":"variant manager create tasks for variant","args":{"span_id":"240","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885858000,"dur":20000},{"pid":1,"tid":1,"id":257,"name":"variant manager create tasks for variant","args":{"span_id":"257","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060885878000,"dur":7000},{"pid":1,"tid":1,"id":259,"name":"lib task manager create generate res values task","args":{"span_id":"259","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885886000,"dur":100},{"pid":1,"tid":1,"id":260,"name":"lib task manager create merge manifest task","args":{"span_id":"260","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885886000,"dur":1000},{"pid":1,"tid":1,"id":261,"name":"lib task manager create create renderscript task","args":{"span_id":"261","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885887000,"dur":100},{"pid":1,"tid":1,"id":262,"name":"lib task manager create merge resources task","args":{"span_id":"262","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885887000,"dur":1000},{"pid":1,"tid":1,"id":263,"name":"lib task manager create merge assets task","args":{"span_id":"263","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885888000,"dur":100},{"pid":1,"tid":1,"id":264,"name":"lib task manager create build config task","args":{"span_id":"264","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885888000,"dur":100},{"pid":1,"tid":1,"id":265,"name":"lib task manager create process res task","args":{"span_id":"265","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885888000,"dur":3000},{"pid":1,"tid":1,"id":266,"name":"lib task manager create aidl task","args":{"span_id":"266","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885891000,"dur":100},{"pid":1,"tid":1,"id":267,"name":"lib task manager create shader task","args":{"span_id":"267","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885892000,"dur":100},{"pid":1,"tid":1,"id":268,"name":"lib task manager create compile task","args":{"span_id":"268","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885892000,"dur":2000},{"pid":1,"tid":1,"id":269,"name":"lib task manager create ndk task","args":{"span_id":"269","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885894000,"dur":1000},{"pid":1,"tid":1,"id":270,"name":"lib task manager create external native build task","args":{"span_id":"270","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885895000,"dur":100},{"pid":1,"tid":1,"id":271,"name":"lib task manager create packaging task","args":{"span_id":"271","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885896000,"dur":2000},{"pid":1,"tid":1,"id":272,"name":"lib task manager create merge proguard file task","args":{"span_id":"272","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885898000,"dur":100},{"pid":1,"tid":1,"id":273,"name":"lib task manager create post compilation task","args":{"span_id":"273","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885900000,"dur":4000},{"pid":1,"tid":1,"id":274,"name":"lib task manager create lint task","args":{"span_id":"274","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885906000,"dur":100},{"pid":1,"tid":1,"id":258,"name":"variant manager create tasks for variant","args":{"span_id":"258","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060885885000,"dur":21000},{"pid":1,"tid":1,"id":275,"name":"variant manager create tasks for variant","args":{"span_id":"275","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060885906000,"dur":6000},{"pid":1,"tid":1,"id":276,"name":"variant manager create tasks for variant","args":{"span_id":"276","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060885912000,"dur":12000},{"pid":1,"tid":1,"id":237,"name":"variant manager create android tasks","args":{"span_id":"237","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060885849000,"dur":77000},{"pid":1,"tid":1,"id":277,"name":"variant manager external native config values","args":{"span_id":"277","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060885926000,"dur":100},{"pid":1,"tid":1,"id":236,"name":"base plugin create android tasks","args":{"span_id":"236","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060885847000,"dur":79000},{"pid":1,"tid":1,"id":278,"name":"base plugin build finished","args":{"span_id":"278","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060893892000,"dur":51000},{"pid":1,"tid":1,"id":279,"name":"base plugin build finished","args":{"span_id":"279","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548060893944000,"dur":1000},{"pid":1,"tid":1,"id":280,"name":"base plugin build finished","args":{"span_id":"280","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060893959000,"dur":1000}] \ No newline at end of file diff --git a/AndroidLearnProject/build/android-profile/profile-2019-01-21-16-54-53-990.rawproto b/AndroidLearnProject/build/android-profile/profile-2019-01-21-16-54-53-990.rawproto deleted file mode 100644 index 40051ea..0000000 Binary files a/AndroidLearnProject/build/android-profile/profile-2019-01-21-16-54-53-990.rawproto and /dev/null differ diff --git a/AndroidLearnProject/build/android-profile/profile-2019-01-21-16-55-05-628.json b/AndroidLearnProject/build/android-profile/profile-2019-01-21-16-55-05-628.json deleted file mode 100644 index c0b3ecd..0000000 --- a/AndroidLearnProject/build/android-profile/profile-2019-01-21-16-55-05-628.json +++ /dev/null @@ -1 +0,0 @@ -[{"pid":0,"ph":"i","name":"Memory sample","ts":1548060896852000,"args":{"JVM stats":"heap_memory_usage: 193229008\nnon_heap_memory_usage: 108194512\nloaded_class_count: 13534\nthread_count: 22\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060899523000,"args":{"JVM stats":"heap_memory_usage: 247801120\nnon_heap_memory_usage: 109538848\nloaded_class_count: 13723\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060899527000,"args":{"JVM stats":"heap_memory_usage: 247801120\nnon_heap_memory_usage: 109562064\nloaded_class_count: 13728\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060899528000,"args":{"JVM stats":"heap_memory_usage: 247801120\nnon_heap_memory_usage: 109562064\nloaded_class_count: 13728\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060899530000,"args":{"JVM stats":"heap_memory_usage: 247801120\nnon_heap_memory_usage: 109570984\nloaded_class_count: 13730\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060899697000,"args":{"JVM stats":"heap_memory_usage: 255138296\nnon_heap_memory_usage: 108879688\nloaded_class_count: 13807\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060900132000,"args":{"JVM stats":"heap_memory_usage: 268754264\nnon_heap_memory_usage: 109289680\nloaded_class_count: 13808\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060900168000,"args":{"JVM stats":"heap_memory_usage: 269277512\nnon_heap_memory_usage: 109289808\nloaded_class_count: 13808\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060900275000,"args":{"JVM stats":"heap_memory_usage: 270851592\nnon_heap_memory_usage: 109316856\nloaded_class_count: 13812\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060900283000,"args":{"JVM stats":"heap_memory_usage: 270851592\nnon_heap_memory_usage: 109322640\nloaded_class_count: 13813\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060900293000,"args":{"JVM stats":"heap_memory_usage: 270851592\nnon_heap_memory_usage: 109331176\nloaded_class_count: 13814\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060900297000,"args":{"JVM stats":"heap_memory_usage: 270851592\nnon_heap_memory_usage: 109339416\nloaded_class_count: 13814\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060900301000,"args":{"JVM stats":"heap_memory_usage: 270851592\nnon_heap_memory_usage: 109341464\nloaded_class_count: 13814\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060900302000,"args":{"JVM stats":"heap_memory_usage: 271375608\nnon_heap_memory_usage: 109341464\nloaded_class_count: 13814\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060900429000,"args":{"JVM stats":"heap_memory_usage: 275574944\nnon_heap_memory_usage: 109386192\nloaded_class_count: 13816\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060900435000,"args":{"JVM stats":"heap_memory_usage: 275574944\nnon_heap_memory_usage: 109395264\nloaded_class_count: 13816\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060900455000,"args":{"JVM stats":"heap_memory_usage: 275574944\nnon_heap_memory_usage: 109399136\nloaded_class_count: 13817\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060900474000,"args":{"JVM stats":"heap_memory_usage: 276621960\nnon_heap_memory_usage: 109406624\nloaded_class_count: 13817\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060900478000,"args":{"JVM stats":"heap_memory_usage: 276621960\nnon_heap_memory_usage: 109406624\nloaded_class_count: 13817\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060900479000,"args":{"JVM stats":"heap_memory_usage: 276621960\nnon_heap_memory_usage: 109406624\nloaded_class_count: 13817\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060900494000,"args":{"JVM stats":"heap_memory_usage: 276621960\nnon_heap_memory_usage: 109409736\nloaded_class_count: 13817\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060900504000,"args":{"JVM stats":"heap_memory_usage: 276621960\nnon_heap_memory_usage: 109413816\nloaded_class_count: 13817\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060900509000,"args":{"JVM stats":"heap_memory_usage: 277144936\nnon_heap_memory_usage: 109420600\nloaded_class_count: 13817\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060900522000,"args":{"JVM stats":"heap_memory_usage: 277144936\nnon_heap_memory_usage: 109422776\nloaded_class_count: 13817\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060901246000,"args":{"JVM stats":"heap_memory_usage: 289104072\nnon_heap_memory_usage: 110626008\nloaded_class_count: 13941\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060902809000,"args":{"JVM stats":"heap_memory_usage: 181941752\nnon_heap_memory_usage: 114808560\nloaded_class_count: 14130\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 148\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060902810000,"args":{"JVM stats":"heap_memory_usage: 181941752\nnon_heap_memory_usage: 114818800\nloaded_class_count: 14130\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060902829000,"args":{"JVM stats":"heap_memory_usage: 182277448\nnon_heap_memory_usage: 114746592\nloaded_class_count: 14130\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060902833000,"args":{"JVM stats":"heap_memory_usage: 182277448\nnon_heap_memory_usage: 114743608\nloaded_class_count: 14130\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060902834000,"args":{"JVM stats":"heap_memory_usage: 182277448\nnon_heap_memory_usage: 114743160\nloaded_class_count: 14130\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060902834001,"args":{"JVM stats":"heap_memory_usage: 182277448\nnon_heap_memory_usage: 114742072\nloaded_class_count: 14130\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060902875000,"args":{"JVM stats":"heap_memory_usage: 186927688\nnon_heap_memory_usage: 114724360\nloaded_class_count: 14130\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060902889000,"args":{"JVM stats":"heap_memory_usage: 188276392\nnon_heap_memory_usage: 114740232\nloaded_class_count: 14130\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060902891000,"args":{"JVM stats":"heap_memory_usage: 188276392\nnon_heap_memory_usage: 114740232\nloaded_class_count: 14130\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060902908000,"args":{"JVM stats":"heap_memory_usage: 188605688\nnon_heap_memory_usage: 114771720\nloaded_class_count: 14130\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060902911000,"args":{"JVM stats":"heap_memory_usage: 188605688\nnon_heap_memory_usage: 114773080\nloaded_class_count: 14130\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060902915000,"args":{"JVM stats":"heap_memory_usage: 188605688\nnon_heap_memory_usage: 114782104\nloaded_class_count: 14130\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060902919000,"args":{"JVM stats":"heap_memory_usage: 188605688\nnon_heap_memory_usage: 114782104\nloaded_class_count: 14130\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060902922000,"args":{"JVM stats":"heap_memory_usage: 188605688\nnon_heap_memory_usage: 114782104\nloaded_class_count: 14130\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060902923000,"args":{"JVM stats":"heap_memory_usage: 188605688\nnon_heap_memory_usage: 114782480\nloaded_class_count: 14130\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060903377000,"args":{"JVM stats":"heap_memory_usage: 210072952\nnon_heap_memory_usage: 115028224\nloaded_class_count: 14130\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060903383000,"args":{"JVM stats":"heap_memory_usage: 210072952\nnon_heap_memory_usage: 115050440\nloaded_class_count: 14134\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060903749000,"args":{"JVM stats":"heap_memory_usage: 226326800\nnon_heap_memory_usage: 116625312\nloaded_class_count: 14286\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060903759000,"args":{"JVM stats":"heap_memory_usage: 226851800\nnon_heap_memory_usage: 116582816\nloaded_class_count: 14286\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060905596000,"args":{"JVM stats":"heap_memory_usage: 273442320\nnon_heap_memory_usage: 117609128\nloaded_class_count: 14394\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060905597000,"args":{"JVM stats":"heap_memory_usage: 273442320\nnon_heap_memory_usage: 117609160\nloaded_class_count: 14394\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548060905629000,"args":{"JVM stats":"heap_memory_usage: 274248848\nnon_heap_memory_usage: 117693688\nloaded_class_count: 14397\nthread_count: 26\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":1,"tid":1,"id":2,"name":"base plugin project configure","args":{"span_id":"2","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548060896852000,"dur":14000},{"pid":1,"tid":1,"id":3,"name":"base plugin project base extension creation","args":{"span_id":"3","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548060896866000,"dur":23000},{"pid":1,"tid":1,"id":5,"name":"task manager create tasks","args":{"span_id":"5","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548060896889000,"dur":11000},{"pid":1,"tid":1,"id":4,"name":"base plugin project tasks creation","args":{"span_id":"4","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548060896889000,"dur":11000},{"pid":1,"tid":1,"id":8,"name":"variant manager create variants","args":{"span_id":"8","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548060897034000,"dur":7000},{"pid":1,"tid":1,"id":9,"name":"variant manager create tests tasks","args":{"span_id":"9","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548060897041000,"dur":3000},{"pid":1,"tid":1,"id":11,"name":"lib task manager create generate res values task","args":{"span_id":"11","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897051000,"dur":3000},{"pid":1,"tid":1,"id":12,"name":"lib task manager create merge manifest task","args":{"span_id":"12","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897054000,"dur":1000},{"pid":1,"tid":1,"id":13,"name":"lib task manager create create renderscript task","args":{"span_id":"13","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897055000,"dur":1000},{"pid":1,"tid":1,"id":14,"name":"lib task manager create merge resources task","args":{"span_id":"14","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897056000,"dur":7000},{"pid":1,"tid":1,"id":15,"name":"lib task manager create merge assets task","args":{"span_id":"15","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897065000,"dur":4000},{"pid":1,"tid":1,"id":16,"name":"lib task manager create build config task","args":{"span_id":"16","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897069000,"dur":1000},{"pid":1,"tid":1,"id":17,"name":"lib task manager create process res task","args":{"span_id":"17","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897070000,"dur":20000},{"pid":1,"tid":1,"id":18,"name":"lib task manager create aidl task","args":{"span_id":"18","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897090000,"dur":1000},{"pid":1,"tid":1,"id":19,"name":"lib task manager create shader task","args":{"span_id":"19","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897091000,"dur":1000},{"pid":1,"tid":1,"id":20,"name":"lib task manager create compile task","args":{"span_id":"20","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897092000,"dur":5000},{"pid":1,"tid":1,"id":21,"name":"lib task manager create ndk task","args":{"span_id":"21","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897097000,"dur":2000},{"pid":1,"tid":1,"id":22,"name":"lib task manager create external native build task","args":{"span_id":"22","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897099000,"dur":100},{"pid":1,"tid":1,"id":23,"name":"lib task manager create packaging task","args":{"span_id":"23","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897102000,"dur":1000},{"pid":1,"tid":1,"id":24,"name":"lib task manager create merge proguard file task","args":{"span_id":"24","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897103000,"dur":1000},{"pid":1,"tid":1,"id":25,"name":"lib task manager create post compilation task","args":{"span_id":"25","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897105000,"dur":83000},{"pid":1,"tid":1,"id":26,"name":"lib task manager create lint task","args":{"span_id":"26","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897188000,"dur":1000},{"pid":1,"tid":1,"id":10,"name":"variant manager create tasks for variant","args":{"span_id":"10","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897044000,"dur":145000},{"pid":1,"tid":1,"id":27,"name":"variant manager create tasks for variant","args":{"span_id":"27","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548060897189000,"dur":9000},{"pid":1,"tid":1,"id":29,"name":"lib task manager create generate res values task","args":{"span_id":"29","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897200000,"dur":1000},{"pid":1,"tid":1,"id":30,"name":"lib task manager create merge manifest task","args":{"span_id":"30","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897201000,"dur":1000},{"pid":1,"tid":1,"id":31,"name":"lib task manager create create renderscript task","args":{"span_id":"31","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897202000,"dur":100},{"pid":1,"tid":1,"id":32,"name":"lib task manager create merge resources task","args":{"span_id":"32","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897202000,"dur":1000},{"pid":1,"tid":1,"id":33,"name":"lib task manager create merge assets task","args":{"span_id":"33","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897203000,"dur":100},{"pid":1,"tid":1,"id":34,"name":"lib task manager create build config task","args":{"span_id":"34","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897204000,"dur":100},{"pid":1,"tid":1,"id":35,"name":"lib task manager create process res task","args":{"span_id":"35","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897205000,"dur":5000},{"pid":1,"tid":1,"id":36,"name":"lib task manager create aidl task","args":{"span_id":"36","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897210000,"dur":2000},{"pid":1,"tid":1,"id":37,"name":"lib task manager create shader task","args":{"span_id":"37","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897212000,"dur":3000},{"pid":1,"tid":1,"id":38,"name":"lib task manager create compile task","args":{"span_id":"38","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897215000,"dur":2000},{"pid":1,"tid":1,"id":39,"name":"lib task manager create ndk task","args":{"span_id":"39","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897217000,"dur":100},{"pid":1,"tid":1,"id":40,"name":"lib task manager create external native build task","args":{"span_id":"40","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897217000,"dur":100},{"pid":1,"tid":1,"id":41,"name":"lib task manager create packaging task","args":{"span_id":"41","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897218000,"dur":5000},{"pid":1,"tid":1,"id":42,"name":"lib task manager create merge proguard file task","args":{"span_id":"42","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897223000,"dur":100},{"pid":1,"tid":1,"id":43,"name":"lib task manager create post compilation task","args":{"span_id":"43","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897224000,"dur":3000},{"pid":1,"tid":1,"id":44,"name":"lib task manager create lint task","args":{"span_id":"44","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897228000,"dur":1000},{"pid":1,"tid":1,"id":28,"name":"variant manager create tasks for variant","args":{"span_id":"28","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897198000,"dur":31000},{"pid":1,"tid":1,"id":45,"name":"variant manager create tasks for variant","args":{"span_id":"45","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548060897231000,"dur":59000},{"pid":1,"tid":1,"id":46,"name":"variant manager create tasks for variant","args":{"span_id":"46","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548060897290000,"dur":44000},{"pid":1,"tid":1,"id":7,"name":"variant manager create android tasks","args":{"span_id":"7","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548060897033000,"dur":304000},{"pid":1,"tid":1,"id":47,"name":"variant manager external native config values","args":{"span_id":"47","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548060897340000,"dur":100},{"pid":1,"tid":1,"id":6,"name":"base plugin create android tasks","args":{"span_id":"6","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548060896940000,"dur":400000},{"pid":1,"tid":1,"id":48,"name":"base plugin project configure","args":{"span_id":"48","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060897606000,"dur":33000},{"pid":1,"tid":1,"id":49,"name":"base plugin project base extension creation","args":{"span_id":"49","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060897639000,"dur":6000},{"pid":1,"tid":1,"id":51,"name":"task manager create tasks","args":{"span_id":"51","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060897645000,"dur":2000},{"pid":1,"tid":1,"id":50,"name":"base plugin project tasks creation","args":{"span_id":"50","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060897645000,"dur":2000},{"pid":1,"tid":1,"id":54,"name":"variant manager create variants","args":{"span_id":"54","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060897658000,"dur":6000},{"pid":1,"tid":1,"id":55,"name":"variant manager create tests tasks","args":{"span_id":"55","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060897664000,"dur":1000},{"pid":1,"tid":1,"id":57,"name":"lib task manager create generate res values task","args":{"span_id":"57","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897666000,"dur":100},{"pid":1,"tid":1,"id":58,"name":"lib task manager create merge manifest task","args":{"span_id":"58","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897666000,"dur":100},{"pid":1,"tid":1,"id":59,"name":"lib task manager create create renderscript task","args":{"span_id":"59","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897666000,"dur":1000},{"pid":1,"tid":1,"id":60,"name":"lib task manager create merge resources task","args":{"span_id":"60","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897667000,"dur":1000},{"pid":1,"tid":1,"id":61,"name":"lib task manager create merge assets task","args":{"span_id":"61","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897668000,"dur":100},{"pid":1,"tid":1,"id":62,"name":"lib task manager create build config task","args":{"span_id":"62","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897668000,"dur":100},{"pid":1,"tid":1,"id":63,"name":"lib task manager create process res task","args":{"span_id":"63","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897668000,"dur":80000},{"pid":1,"tid":1,"id":64,"name":"lib task manager create aidl task","args":{"span_id":"64","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897748000,"dur":100},{"pid":1,"tid":1,"id":65,"name":"lib task manager create shader task","args":{"span_id":"65","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897748000,"dur":1000},{"pid":1,"tid":1,"id":66,"name":"lib task manager create compile task","args":{"span_id":"66","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897749000,"dur":7000},{"pid":1,"tid":1,"id":67,"name":"lib task manager create ndk task","args":{"span_id":"67","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897756000,"dur":100},{"pid":1,"tid":1,"id":68,"name":"lib task manager create external native build task","args":{"span_id":"68","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897756000,"dur":100},{"pid":1,"tid":1,"id":69,"name":"lib task manager create packaging task","args":{"span_id":"69","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897766000,"dur":1000},{"pid":1,"tid":1,"id":70,"name":"lib task manager create merge proguard file task","args":{"span_id":"70","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897767000,"dur":100},{"pid":1,"tid":1,"id":71,"name":"lib task manager create post compilation task","args":{"span_id":"71","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897770000,"dur":3000},{"pid":1,"tid":1,"id":72,"name":"lib task manager create lint task","args":{"span_id":"72","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897773000,"dur":1000},{"pid":1,"tid":1,"id":56,"name":"variant manager create tasks for variant","args":{"span_id":"56","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897665000,"dur":109000},{"pid":1,"tid":1,"id":73,"name":"variant manager create tasks for variant","args":{"span_id":"73","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060897774000,"dur":7000},{"pid":1,"tid":1,"id":75,"name":"lib task manager create generate res values task","args":{"span_id":"75","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897784000,"dur":100},{"pid":1,"tid":1,"id":76,"name":"lib task manager create merge manifest task","args":{"span_id":"76","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897784000,"dur":1000},{"pid":1,"tid":1,"id":77,"name":"lib task manager create create renderscript task","args":{"span_id":"77","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897785000,"dur":1000},{"pid":1,"tid":1,"id":78,"name":"lib task manager create merge resources task","args":{"span_id":"78","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897786000,"dur":40000},{"pid":1,"tid":1,"id":79,"name":"lib task manager create merge assets task","args":{"span_id":"79","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897826000,"dur":21000},{"pid":1,"tid":1,"id":80,"name":"lib task manager create build config task","args":{"span_id":"80","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897847000,"dur":100},{"pid":1,"tid":1,"id":81,"name":"lib task manager create process res task","args":{"span_id":"81","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897847000,"dur":2000},{"pid":1,"tid":1,"id":82,"name":"lib task manager create aidl task","args":{"span_id":"82","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897849000,"dur":100},{"pid":1,"tid":1,"id":83,"name":"lib task manager create shader task","args":{"span_id":"83","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897849000,"dur":1000},{"pid":1,"tid":1,"id":84,"name":"lib task manager create compile task","args":{"span_id":"84","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897850000,"dur":100},{"pid":1,"tid":1,"id":85,"name":"lib task manager create ndk task","args":{"span_id":"85","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897851000,"dur":100},{"pid":1,"tid":1,"id":86,"name":"lib task manager create external native build task","args":{"span_id":"86","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897851000,"dur":100},{"pid":1,"tid":1,"id":87,"name":"lib task manager create packaging task","args":{"span_id":"87","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897851000,"dur":1000},{"pid":1,"tid":1,"id":88,"name":"lib task manager create merge proguard file task","args":{"span_id":"88","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897852000,"dur":100},{"pid":1,"tid":1,"id":89,"name":"lib task manager create post compilation task","args":{"span_id":"89","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897853000,"dur":2000},{"pid":1,"tid":1,"id":90,"name":"lib task manager create lint task","args":{"span_id":"90","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897879000,"dur":100},{"pid":1,"tid":1,"id":74,"name":"variant manager create tasks for variant","args":{"span_id":"74","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060897781000,"dur":98000},{"pid":1,"tid":1,"id":91,"name":"variant manager create tasks for variant","args":{"span_id":"91","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060897879000,"dur":7000},{"pid":1,"tid":1,"id":92,"name":"variant manager create tasks for variant","args":{"span_id":"92","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060897886000,"dur":9000},{"pid":1,"tid":1,"id":53,"name":"variant manager create android tasks","args":{"span_id":"53","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060897657000,"dur":243000},{"pid":1,"tid":1,"id":93,"name":"variant manager external native config values","args":{"span_id":"93","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060897900000,"dur":100},{"pid":1,"tid":1,"id":52,"name":"base plugin create android tasks","args":{"span_id":"52","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060897656000,"dur":244000},{"pid":1,"tid":1,"id":94,"name":"base plugin project configure","args":{"span_id":"94","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060897919000,"dur":11000},{"pid":1,"tid":1,"id":95,"name":"base plugin project base extension creation","args":{"span_id":"95","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060897930000,"dur":6000},{"pid":1,"tid":1,"id":97,"name":"task manager create tasks","args":{"span_id":"97","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060897936000,"dur":2000},{"pid":1,"tid":1,"id":96,"name":"base plugin project tasks creation","args":{"span_id":"96","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060897936000,"dur":2000},{"pid":1,"tid":1,"id":100,"name":"variant manager create variants","args":{"span_id":"100","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060897988000,"dur":283000},{"pid":1,"tid":1,"id":101,"name":"variant manager create tests tasks","args":{"span_id":"101","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060898271000,"dur":4000},{"pid":1,"tid":1,"id":103,"name":"app task manager create merge manifest task","args":{"span_id":"103","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898280000,"dur":4000},{"pid":1,"tid":1,"id":104,"name":"app task manager create generate res values task","args":{"span_id":"104","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898284000,"dur":100},{"pid":1,"tid":1,"id":105,"name":"app task manager create create renderscript task","args":{"span_id":"105","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898284000,"dur":100},{"pid":1,"tid":1,"id":106,"name":"app task manager create merge resources task","args":{"span_id":"106","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898284000,"dur":100},{"pid":1,"tid":1,"id":107,"name":"app task manager create merge assets task","args":{"span_id":"107","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898285000,"dur":100},{"pid":1,"tid":1,"id":108,"name":"app task manager create build config task","args":{"span_id":"108","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898285000,"dur":100},{"pid":1,"tid":1,"id":109,"name":"app task manager create process res task","args":{"span_id":"109","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898285000,"dur":6000},{"pid":1,"tid":1,"id":110,"name":"app task manager create aidl task","args":{"span_id":"110","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898291000,"dur":100},{"pid":1,"tid":1,"id":111,"name":"app task manager create shader task","args":{"span_id":"111","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898291000,"dur":100},{"pid":1,"tid":1,"id":112,"name":"app task manager create ndk task","args":{"span_id":"112","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898291000,"dur":1000},{"pid":1,"tid":1,"id":113,"name":"app task manager create external native build task","args":{"span_id":"113","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898292000,"dur":100},{"pid":1,"tid":1,"id":114,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"114","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898292000,"dur":100},{"pid":1,"tid":1,"id":115,"name":"app task manager create compile task","args":{"span_id":"115","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898292000,"dur":5000},{"pid":1,"tid":1,"id":116,"name":"app task manager create packaging task","args":{"span_id":"116","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898298000,"dur":1000},{"pid":1,"tid":1,"id":117,"name":"app task manager create lint task","args":{"span_id":"117","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898299000,"dur":100},{"pid":1,"tid":1,"id":102,"name":"variant manager create tasks for variant","args":{"span_id":"102","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898275000,"dur":24000},{"pid":1,"tid":1,"id":118,"name":"variant manager create tasks for variant","args":{"span_id":"118","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060898299000,"dur":5000},{"pid":1,"tid":1,"id":120,"name":"app task manager create merge manifest task","args":{"span_id":"120","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898354000,"dur":100},{"pid":1,"tid":1,"id":121,"name":"app task manager create generate res values task","args":{"span_id":"121","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898354000,"dur":1000},{"pid":1,"tid":1,"id":122,"name":"app task manager create create renderscript task","args":{"span_id":"122","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898355000,"dur":100},{"pid":1,"tid":1,"id":123,"name":"app task manager create merge resources task","args":{"span_id":"123","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898355000,"dur":100},{"pid":1,"tid":1,"id":124,"name":"app task manager create merge assets task","args":{"span_id":"124","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898355000,"dur":100},{"pid":1,"tid":1,"id":125,"name":"app task manager create build config task","args":{"span_id":"125","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898355000,"dur":1000},{"pid":1,"tid":1,"id":126,"name":"app task manager create process res task","args":{"span_id":"126","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898356000,"dur":1000},{"pid":1,"tid":1,"id":127,"name":"app task manager create aidl task","args":{"span_id":"127","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898357000,"dur":1000},{"pid":1,"tid":1,"id":128,"name":"app task manager create shader task","args":{"span_id":"128","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898358000,"dur":100},{"pid":1,"tid":1,"id":129,"name":"app task manager create ndk task","args":{"span_id":"129","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898358000,"dur":100},{"pid":1,"tid":1,"id":130,"name":"app task manager create external native build task","args":{"span_id":"130","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898358000,"dur":100},{"pid":1,"tid":1,"id":131,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"131","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898358000,"dur":1000},{"pid":1,"tid":1,"id":132,"name":"app task manager create compile task","args":{"span_id":"132","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898359000,"dur":9000},{"pid":1,"tid":1,"id":133,"name":"app task manager create packaging task","args":{"span_id":"133","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898368000,"dur":3000},{"pid":1,"tid":1,"id":134,"name":"app task manager create lint task","args":{"span_id":"134","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898371000,"dur":100},{"pid":1,"tid":1,"id":119,"name":"variant manager create tasks for variant","args":{"span_id":"119","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898305000,"dur":66000},{"pid":1,"tid":1,"id":135,"name":"variant manager create tasks for variant","args":{"span_id":"135","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060898371000,"dur":13000},{"pid":1,"tid":1,"id":136,"name":"variant manager create tasks for variant","args":{"span_id":"136","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060898384000,"dur":33000},{"pid":1,"tid":1,"id":138,"name":"app task manager create merge manifest task","args":{"span_id":"138","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898418000,"dur":1000},{"pid":1,"tid":1,"id":139,"name":"app task manager create generate res values task","args":{"span_id":"139","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898419000,"dur":29000},{"pid":1,"tid":1,"id":140,"name":"app task manager create create renderscript task","args":{"span_id":"140","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898448000,"dur":1000},{"pid":1,"tid":1,"id":141,"name":"app task manager create merge resources task","args":{"span_id":"141","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898449000,"dur":100},{"pid":1,"tid":1,"id":142,"name":"app task manager create merge assets task","args":{"span_id":"142","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898449000,"dur":100},{"pid":1,"tid":1,"id":143,"name":"app task manager create build config task","args":{"span_id":"143","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898449000,"dur":100},{"pid":1,"tid":1,"id":144,"name":"app task manager create process res task","args":{"span_id":"144","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898449000,"dur":2000},{"pid":1,"tid":1,"id":145,"name":"app task manager create aidl task","args":{"span_id":"145","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898451000,"dur":100},{"pid":1,"tid":1,"id":146,"name":"app task manager create shader task","args":{"span_id":"146","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898451000,"dur":1000},{"pid":1,"tid":1,"id":147,"name":"app task manager create ndk task","args":{"span_id":"147","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898452000,"dur":100},{"pid":1,"tid":1,"id":148,"name":"app task manager create external native build task","args":{"span_id":"148","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898452000,"dur":100},{"pid":1,"tid":1,"id":149,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"149","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898452000,"dur":1000},{"pid":1,"tid":1,"id":150,"name":"app task manager create compile task","args":{"span_id":"150","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898453000,"dur":4000},{"pid":1,"tid":1,"id":151,"name":"app task manager create packaging task","args":{"span_id":"151","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898457000,"dur":1000},{"pid":1,"tid":1,"id":152,"name":"app task manager create lint task","args":{"span_id":"152","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898458000,"dur":100},{"pid":1,"tid":1,"id":137,"name":"variant manager create tasks for variant","args":{"span_id":"137","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 3\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898417000,"dur":41000},{"pid":1,"tid":1,"id":153,"name":"variant manager create tasks for variant","args":{"span_id":"153","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060898458000,"dur":34000},{"pid":1,"tid":1,"id":155,"name":"app task manager create merge manifest task","args":{"span_id":"155","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898495000,"dur":100},{"pid":1,"tid":1,"id":156,"name":"app task manager create generate res values task","args":{"span_id":"156","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898495000,"dur":1000},{"pid":1,"tid":1,"id":157,"name":"app task manager create create renderscript task","args":{"span_id":"157","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898496000,"dur":100},{"pid":1,"tid":1,"id":158,"name":"app task manager create merge resources task","args":{"span_id":"158","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898496000,"dur":100},{"pid":1,"tid":1,"id":159,"name":"app task manager create merge assets task","args":{"span_id":"159","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898496000,"dur":1000},{"pid":1,"tid":1,"id":160,"name":"app task manager create build config task","args":{"span_id":"160","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898497000,"dur":100},{"pid":1,"tid":1,"id":161,"name":"app task manager create process res task","args":{"span_id":"161","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898497000,"dur":2000},{"pid":1,"tid":1,"id":162,"name":"app task manager create aidl task","args":{"span_id":"162","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898499000,"dur":100},{"pid":1,"tid":1,"id":163,"name":"app task manager create shader task","args":{"span_id":"163","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898499000,"dur":1000},{"pid":1,"tid":1,"id":164,"name":"app task manager create ndk task","args":{"span_id":"164","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898500000,"dur":100},{"pid":1,"tid":1,"id":165,"name":"app task manager create external native build task","args":{"span_id":"165","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898500000,"dur":100},{"pid":1,"tid":1,"id":166,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"166","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898500000,"dur":1000},{"pid":1,"tid":1,"id":167,"name":"app task manager create compile task","args":{"span_id":"167","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898501000,"dur":5000},{"pid":1,"tid":1,"id":168,"name":"app task manager create packaging task","args":{"span_id":"168","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898506000,"dur":1000},{"pid":1,"tid":1,"id":169,"name":"app task manager create lint task","args":{"span_id":"169","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898507000,"dur":100},{"pid":1,"tid":1,"id":154,"name":"variant manager create tasks for variant","args":{"span_id":"154","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 4\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898492000,"dur":15000},{"pid":1,"tid":1,"id":170,"name":"variant manager create tasks for variant","args":{"span_id":"170","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060898507000,"dur":13000},{"pid":1,"tid":1,"id":171,"name":"variant manager create tasks for variant","args":{"span_id":"171","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060898520000,"dur":51000},{"pid":1,"tid":1,"id":173,"name":"app task manager create merge manifest task","args":{"span_id":"173","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898573000,"dur":100},{"pid":1,"tid":1,"id":174,"name":"app task manager create generate res values task","args":{"span_id":"174","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898573000,"dur":100},{"pid":1,"tid":1,"id":175,"name":"app task manager create create renderscript task","args":{"span_id":"175","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898573000,"dur":1000},{"pid":1,"tid":1,"id":176,"name":"app task manager create merge resources task","args":{"span_id":"176","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898574000,"dur":100},{"pid":1,"tid":1,"id":177,"name":"app task manager create merge assets task","args":{"span_id":"177","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898574000,"dur":100},{"pid":1,"tid":1,"id":178,"name":"app task manager create build config task","args":{"span_id":"178","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898574000,"dur":1000},{"pid":1,"tid":1,"id":179,"name":"app task manager create process res task","args":{"span_id":"179","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898575000,"dur":6000},{"pid":1,"tid":1,"id":180,"name":"app task manager create aidl task","args":{"span_id":"180","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898581000,"dur":100},{"pid":1,"tid":1,"id":181,"name":"app task manager create shader task","args":{"span_id":"181","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898581000,"dur":100},{"pid":1,"tid":1,"id":182,"name":"app task manager create ndk task","args":{"span_id":"182","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898581000,"dur":100},{"pid":1,"tid":1,"id":183,"name":"app task manager create external native build task","args":{"span_id":"183","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898581000,"dur":100},{"pid":1,"tid":1,"id":184,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"184","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898581000,"dur":7000},{"pid":1,"tid":1,"id":185,"name":"app task manager create compile task","args":{"span_id":"185","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898588000,"dur":17000},{"pid":1,"tid":1,"id":186,"name":"app task manager create packaging task","args":{"span_id":"186","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898605000,"dur":1000},{"pid":1,"tid":1,"id":187,"name":"app task manager create lint task","args":{"span_id":"187","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898606000,"dur":100},{"pid":1,"tid":1,"id":172,"name":"variant manager create tasks for variant","args":{"span_id":"172","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 5\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898571000,"dur":35000},{"pid":1,"tid":1,"id":188,"name":"variant manager create tasks for variant","args":{"span_id":"188","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060898606000,"dur":12000},{"pid":1,"tid":1,"id":190,"name":"app task manager create merge manifest task","args":{"span_id":"190","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898623000,"dur":1000},{"pid":1,"tid":1,"id":191,"name":"app task manager create generate res values task","args":{"span_id":"191","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898625000,"dur":100},{"pid":1,"tid":1,"id":192,"name":"app task manager create create renderscript task","args":{"span_id":"192","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898625000,"dur":100},{"pid":1,"tid":1,"id":193,"name":"app task manager create merge resources task","args":{"span_id":"193","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898625000,"dur":15000},{"pid":1,"tid":1,"id":194,"name":"app task manager create merge assets task","args":{"span_id":"194","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898640000,"dur":1000},{"pid":1,"tid":1,"id":195,"name":"app task manager create build config task","args":{"span_id":"195","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898641000,"dur":100},{"pid":1,"tid":1,"id":196,"name":"app task manager create process res task","args":{"span_id":"196","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898641000,"dur":1000},{"pid":1,"tid":1,"id":197,"name":"app task manager create aidl task","args":{"span_id":"197","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898642000,"dur":1000},{"pid":1,"tid":1,"id":198,"name":"app task manager create shader task","args":{"span_id":"198","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898643000,"dur":100},{"pid":1,"tid":1,"id":199,"name":"app task manager create ndk task","args":{"span_id":"199","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898643000,"dur":100},{"pid":1,"tid":1,"id":200,"name":"app task manager create external native build task","args":{"span_id":"200","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898643000,"dur":100},{"pid":1,"tid":1,"id":201,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"201","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898643000,"dur":1000},{"pid":1,"tid":1,"id":202,"name":"app task manager create compile task","args":{"span_id":"202","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898644000,"dur":4000},{"pid":1,"tid":1,"id":203,"name":"app task manager create packaging task","args":{"span_id":"203","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898648000,"dur":34000},{"pid":1,"tid":1,"id":204,"name":"app task manager create lint task","args":{"span_id":"204","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898682000,"dur":100},{"pid":1,"tid":1,"id":189,"name":"variant manager create tasks for variant","args":{"span_id":"189","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 6\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898618000,"dur":64000},{"pid":1,"tid":1,"id":205,"name":"variant manager create tasks for variant","args":{"span_id":"205","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060898682000,"dur":5000},{"pid":1,"tid":1,"id":206,"name":"variant manager create tasks for variant","args":{"span_id":"206","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060898687000,"dur":49000},{"pid":1,"tid":1,"id":208,"name":"app task manager create merge manifest task","args":{"span_id":"208","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898738000,"dur":1000},{"pid":1,"tid":1,"id":209,"name":"app task manager create generate res values task","args":{"span_id":"209","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898739000,"dur":100},{"pid":1,"tid":1,"id":210,"name":"app task manager create create renderscript task","args":{"span_id":"210","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898739000,"dur":100},{"pid":1,"tid":1,"id":211,"name":"app task manager create merge resources task","args":{"span_id":"211","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898739000,"dur":100},{"pid":1,"tid":1,"id":212,"name":"app task manager create merge assets task","args":{"span_id":"212","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898739000,"dur":1000},{"pid":1,"tid":1,"id":213,"name":"app task manager create build config task","args":{"span_id":"213","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898740000,"dur":100},{"pid":1,"tid":1,"id":214,"name":"app task manager create process res task","args":{"span_id":"214","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898740000,"dur":1000},{"pid":1,"tid":1,"id":215,"name":"app task manager create aidl task","args":{"span_id":"215","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898741000,"dur":100},{"pid":1,"tid":1,"id":216,"name":"app task manager create shader task","args":{"span_id":"216","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898742000,"dur":100},{"pid":1,"tid":1,"id":217,"name":"app task manager create ndk task","args":{"span_id":"217","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898742000,"dur":100},{"pid":1,"tid":1,"id":218,"name":"app task manager create external native build task","args":{"span_id":"218","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898742000,"dur":100},{"pid":1,"tid":1,"id":219,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"219","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898742000,"dur":9000},{"pid":1,"tid":1,"id":220,"name":"app task manager create compile task","args":{"span_id":"220","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898751000,"dur":7000},{"pid":1,"tid":1,"id":221,"name":"app task manager create packaging task","args":{"span_id":"221","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898758000,"dur":2000},{"pid":1,"tid":1,"id":222,"name":"app task manager create lint task","args":{"span_id":"222","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898760000,"dur":1000},{"pid":1,"tid":1,"id":207,"name":"variant manager create tasks for variant","args":{"span_id":"207","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 7\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898737000,"dur":24000},{"pid":1,"tid":1,"id":223,"name":"variant manager create tasks for variant","args":{"span_id":"223","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060898761000,"dur":14000},{"pid":1,"tid":1,"id":225,"name":"app task manager create merge manifest task","args":{"span_id":"225","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898777000,"dur":100},{"pid":1,"tid":1,"id":226,"name":"app task manager create generate res values task","args":{"span_id":"226","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898777000,"dur":100},{"pid":1,"tid":1,"id":227,"name":"app task manager create create renderscript task","args":{"span_id":"227","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898777000,"dur":100},{"pid":1,"tid":1,"id":228,"name":"app task manager create merge resources task","args":{"span_id":"228","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898777000,"dur":1000},{"pid":1,"tid":1,"id":229,"name":"app task manager create merge assets task","args":{"span_id":"229","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898778000,"dur":100},{"pid":1,"tid":1,"id":230,"name":"app task manager create build config task","args":{"span_id":"230","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898778000,"dur":1000},{"pid":1,"tid":1,"id":231,"name":"app task manager create process res task","args":{"span_id":"231","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898779000,"dur":2000},{"pid":1,"tid":1,"id":232,"name":"app task manager create aidl task","args":{"span_id":"232","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898781000,"dur":1000},{"pid":1,"tid":1,"id":233,"name":"app task manager create shader task","args":{"span_id":"233","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898782000,"dur":23000},{"pid":1,"tid":1,"id":234,"name":"app task manager create ndk task","args":{"span_id":"234","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898805000,"dur":100},{"pid":1,"tid":1,"id":235,"name":"app task manager create external native build task","args":{"span_id":"235","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898805000,"dur":100},{"pid":1,"tid":1,"id":236,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"236","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898805000,"dur":1000},{"pid":1,"tid":1,"id":237,"name":"app task manager create compile task","args":{"span_id":"237","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898806000,"dur":14000},{"pid":1,"tid":1,"id":238,"name":"app task manager create packaging task","args":{"span_id":"238","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898820000,"dur":2000},{"pid":1,"tid":1,"id":239,"name":"app task manager create lint task","args":{"span_id":"239","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898822000,"dur":100},{"pid":1,"tid":1,"id":224,"name":"variant manager create tasks for variant","args":{"span_id":"224","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 8\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898776000,"dur":46000},{"pid":1,"tid":1,"id":240,"name":"variant manager create tasks for variant","args":{"span_id":"240","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060898822000,"dur":17000},{"pid":1,"tid":1,"id":241,"name":"variant manager create tasks for variant","args":{"span_id":"241","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060898839000,"dur":20000},{"pid":1,"tid":1,"id":243,"name":"app task manager create merge manifest task","args":{"span_id":"243","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898863000,"dur":1000},{"pid":1,"tid":1,"id":244,"name":"app task manager create generate res values task","args":{"span_id":"244","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898864000,"dur":40000},{"pid":1,"tid":1,"id":245,"name":"app task manager create create renderscript task","args":{"span_id":"245","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898913000,"dur":1000},{"pid":1,"tid":1,"id":246,"name":"app task manager create merge resources task","args":{"span_id":"246","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898914000,"dur":100},{"pid":1,"tid":1,"id":247,"name":"app task manager create merge assets task","args":{"span_id":"247","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898914000,"dur":100},{"pid":1,"tid":1,"id":248,"name":"app task manager create build config task","args":{"span_id":"248","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898914000,"dur":3000},{"pid":1,"tid":1,"id":249,"name":"app task manager create process res task","args":{"span_id":"249","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898917000,"dur":2000},{"pid":1,"tid":1,"id":250,"name":"app task manager create aidl task","args":{"span_id":"250","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898919000,"dur":1000},{"pid":1,"tid":1,"id":251,"name":"app task manager create shader task","args":{"span_id":"251","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898920000,"dur":100},{"pid":1,"tid":1,"id":252,"name":"app task manager create ndk task","args":{"span_id":"252","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898920000,"dur":2000},{"pid":1,"tid":1,"id":253,"name":"app task manager create external native build task","args":{"span_id":"253","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898922000,"dur":100},{"pid":1,"tid":1,"id":254,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"254","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898922000,"dur":1000},{"pid":1,"tid":1,"id":255,"name":"app task manager create compile task","args":{"span_id":"255","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898923000,"dur":4000},{"pid":1,"tid":1,"id":256,"name":"app task manager create packaging task","args":{"span_id":"256","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898927000,"dur":1000},{"pid":1,"tid":1,"id":257,"name":"app task manager create lint task","args":{"span_id":"257","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898928000,"dur":100},{"pid":1,"tid":1,"id":242,"name":"variant manager create tasks for variant","args":{"span_id":"242","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898859000,"dur":69000},{"pid":1,"tid":1,"id":258,"name":"variant manager create tasks for variant","args":{"span_id":"258","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060898928000,"dur":6000},{"pid":1,"tid":1,"id":260,"name":"app task manager create merge manifest task","args":{"span_id":"260","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898936000,"dur":100},{"pid":1,"tid":1,"id":261,"name":"app task manager create generate res values task","args":{"span_id":"261","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898936000,"dur":100},{"pid":1,"tid":1,"id":262,"name":"app task manager create create renderscript task","args":{"span_id":"262","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898936000,"dur":2000},{"pid":1,"tid":1,"id":263,"name":"app task manager create merge resources task","args":{"span_id":"263","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898938000,"dur":100},{"pid":1,"tid":1,"id":264,"name":"app task manager create merge assets task","args":{"span_id":"264","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898938000,"dur":1000},{"pid":1,"tid":1,"id":265,"name":"app task manager create build config task","args":{"span_id":"265","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898939000,"dur":100},{"pid":1,"tid":1,"id":266,"name":"app task manager create process res task","args":{"span_id":"266","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898939000,"dur":2000},{"pid":1,"tid":1,"id":267,"name":"app task manager create aidl task","args":{"span_id":"267","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898941000,"dur":100},{"pid":1,"tid":1,"id":268,"name":"app task manager create shader task","args":{"span_id":"268","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898941000,"dur":1000},{"pid":1,"tid":1,"id":269,"name":"app task manager create ndk task","args":{"span_id":"269","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898942000,"dur":5000},{"pid":1,"tid":1,"id":270,"name":"app task manager create external native build task","args":{"span_id":"270","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898947000,"dur":100},{"pid":1,"tid":1,"id":271,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"271","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898947000,"dur":100},{"pid":1,"tid":1,"id":272,"name":"app task manager create compile task","args":{"span_id":"272","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898948000,"dur":8000},{"pid":1,"tid":1,"id":273,"name":"app task manager create packaging task","args":{"span_id":"273","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898956000,"dur":1000},{"pid":1,"tid":1,"id":274,"name":"app task manager create lint task","args":{"span_id":"274","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898957000,"dur":1000},{"pid":1,"tid":1,"id":259,"name":"variant manager create tasks for variant","args":{"span_id":"259","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 10\nis_debug: false\nminify_enabled: true\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548060898934000,"dur":24000},{"pid":1,"tid":1,"id":275,"name":"variant manager create tasks for variant","args":{"span_id":"275","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060898958000,"dur":9000},{"pid":1,"tid":1,"id":276,"name":"variant manager create tasks for variant","args":{"span_id":"276","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060898967000,"dur":38000},{"pid":1,"tid":1,"id":99,"name":"variant manager create android tasks","args":{"span_id":"99","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060897987000,"dur":1037000},{"pid":1,"tid":1,"id":277,"name":"variant manager external native config values","args":{"span_id":"277","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060899025000,"dur":100},{"pid":1,"tid":1,"id":98,"name":"base plugin create android tasks","args":{"span_id":"98","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060897979000,"dur":1046000},{"pid":1,"tid":0,"id":278,"name":"task: unknown task type","args":{"span_id":"278","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060899508000,"dur":6000},{"pid":1,"tid":0,"id":279,"name":"task: unknown task type","args":{"span_id":"279","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060899527000,"dur":100},{"pid":1,"tid":0,"id":280,"name":"task: unknown task type","args":{"span_id":"280","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060899528000,"dur":100},{"pid":1,"tid":0,"id":281,"name":"task: unknown task type","args":{"span_id":"281","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060899529000,"dur":100},{"pid":1,"tid":0,"id":282,"name":"task: aidl compile","args":{"span_id":"282","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060899531000,"dur":166000},{"pid":1,"tid":0,"id":283,"name":"task: aidl compile","args":{"span_id":"283","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060899699000,"dur":432000},{"pid":1,"tid":0,"id":284,"name":"task: unknown task type","args":{"span_id":"284","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548060900142000,"dur":26000},{"pid":1,"tid":0,"id":285,"name":"task: renderscript compile","args":{"span_id":"285","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060900245000,"dur":30000},{"pid":1,"tid":0,"id":286,"name":"task: check manifest","args":{"span_id":"286","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060900277000,"dur":5000},{"pid":1,"tid":0,"id":287,"name":"task: generate build config","args":{"span_id":"287","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060900284000,"dur":9000},{"pid":1,"tid":0,"id":288,"name":"task: prepare lint jar","args":{"span_id":"288","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 119\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060900294000,"dur":3000},{"pid":1,"tid":0,"id":289,"name":"task: generate res values","args":{"span_id":"289","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060900298000,"dur":3000},{"pid":1,"tid":0,"id":290,"name":"task: unknown task type","args":{"span_id":"290","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060900302000,"dur":100},{"pid":1,"tid":0,"id":291,"name":"task: merge resources","args":{"span_id":"291","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060900304000,"dur":124000},{"pid":1,"tid":0,"id":292,"name":"task: platform attr extractor","args":{"span_id":"292","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 109\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060900430000,"dur":5000},{"pid":1,"tid":0,"id":293,"name":"task: process manifest","args":{"span_id":"293","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 52\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060900436000,"dur":18000},{"pid":1,"tid":0,"id":294,"name":"task: renderscript compile","args":{"span_id":"294","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060900457000,"dur":17000},{"pid":1,"tid":0,"id":295,"name":"task: generate res values","args":{"span_id":"295","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060900475000,"dur":3000},{"pid":1,"tid":0,"id":296,"name":"task: unknown task type","args":{"span_id":"296","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060900478000,"dur":100},{"pid":1,"tid":0,"id":297,"name":"task: merge resources","args":{"span_id":"297","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060900480000,"dur":14000},{"pid":1,"tid":0,"id":298,"name":"task: platform attr extractor","args":{"span_id":"298","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 109\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060900498000,"dur":5000},{"pid":1,"tid":0,"id":299,"name":"task: check manifest","args":{"span_id":"299","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060900504000,"dur":5000},{"pid":1,"tid":0,"id":300,"name":"task: process manifest","args":{"span_id":"300","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 52\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060900511000,"dur":11000},{"pid":1,"tid":0,"id":301,"name":"task: process android resources","args":{"span_id":"301","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548060900525000,"dur":721000},{"pid":1,"tid":0,"id":302,"name":"task: process android resources","args":{"span_id":"302","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548060901252000,"dur":1557000},{"pid":1,"tid":0,"id":303,"name":"task: unknown task type","args":{"span_id":"303","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548060902810000,"dur":100},{"pid":1,"tid":0,"id":304,"name":"task: generate build config","args":{"span_id":"304","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060902811000,"dur":18000},{"pid":1,"tid":0,"id":305,"name":"task: prepare lint jar","args":{"span_id":"305","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 119\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060902830000,"dur":2000},{"pid":1,"tid":0,"id":306,"name":"task: unknown task type","args":{"span_id":"306","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548060902833000,"dur":100},{"pid":1,"tid":0,"id":307,"name":"task: unknown task type","args":{"span_id":"307","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060902834000,"dur":100},{"pid":1,"tid":0,"id":308,"name":"task: app pre build","args":{"span_id":"308","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 92\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060902835000,"dur":40000},{"pid":1,"tid":0,"id":309,"name":"task: aidl compile","args":{"span_id":"309","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060902876000,"dur":13000},{"pid":1,"tid":0,"id":310,"name":"task: unknown task type","args":{"span_id":"310","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548060902890000,"dur":1000},{"pid":1,"tid":0,"id":311,"name":"task: renderscript compile","args":{"span_id":"311","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060902892000,"dur":16000},{"pid":1,"tid":0,"id":312,"name":"task: check manifest","args":{"span_id":"312","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060902909000,"dur":2000},{"pid":1,"tid":0,"id":313,"name":"task: generate build config","args":{"span_id":"313","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060902912000,"dur":3000},{"pid":1,"tid":0,"id":314,"name":"task: prepare lint jar","args":{"span_id":"314","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 119\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060902916000,"dur":3000},{"pid":1,"tid":0,"id":315,"name":"task: generate res values","args":{"span_id":"315","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060902920000,"dur":2000},{"pid":1,"tid":0,"id":316,"name":"task: unknown task type","args":{"span_id":"316","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060902923000,"dur":100},{"pid":1,"tid":0,"id":317,"name":"task: merge resources","args":{"span_id":"317","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060902925000,"dur":452000},{"pid":1,"tid":0,"id":318,"name":"task: compatible screens manifest","args":{"span_id":"318","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 9\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060903378000,"dur":5000},{"pid":1,"tid":0,"id":319,"name":"task: merge manifests","args":{"span_id":"319","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 39\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548060903384000,"dur":365000},{"pid":1,"tid":0,"id":320,"name":"task: splits discovery","args":{"span_id":"320","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 87\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548060903753000,"dur":6000},{"pid":1,"tid":0,"id":321,"name":"task: process android resources","args":{"span_id":"321","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 9\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548060903761000,"dur":1835000},{"pid":1,"tid":0,"id":322,"name":"task: unknown task type","args":{"span_id":"322","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548060905597000,"dur":100},{"pid":1,"tid":1,"id":323,"name":"base plugin build finished","args":{"span_id":"323","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548060905607000,"dur":2000},{"pid":1,"tid":1,"id":324,"name":"base plugin build finished","args":{"span_id":"324","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060905609000,"dur":3000},{"pid":1,"tid":1,"id":325,"name":"base plugin build finished","args":{"span_id":"325","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548060905612000,"dur":8000}] \ No newline at end of file diff --git a/AndroidLearnProject/build/android-profile/profile-2019-01-21-16-55-05-628.rawproto b/AndroidLearnProject/build/android-profile/profile-2019-01-21-16-55-05-628.rawproto deleted file mode 100644 index c20c31b..0000000 Binary files a/AndroidLearnProject/build/android-profile/profile-2019-01-21-16-55-05-628.rawproto and /dev/null differ diff --git a/AndroidLearnProject/build/android-profile/profile-2019-01-21-17-01-49-664.json b/AndroidLearnProject/build/android-profile/profile-2019-01-21-17-01-49-664.json deleted file mode 100644 index c247dd1..0000000 --- a/AndroidLearnProject/build/android-profile/profile-2019-01-21-17-01-49-664.json +++ /dev/null @@ -1 +0,0 @@ -[{"pid":0,"ph":"i","name":"Memory sample","ts":1548061270119000,"args":{"JVM stats":"heap_memory_usage: 45942768\nnon_heap_memory_usage: 48937872\nloaded_class_count: 7353\nthread_count: 21\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 6\n gc_time: 70\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 1\n gc_time: 49\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061277630000,"args":{"JVM stats":"heap_memory_usage: 82724600\nnon_heap_memory_usage: 84236792\nloaded_class_count: 11193\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 4\n gc_time: 96\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 1\n gc_time: 85\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061277749000,"args":{"JVM stats":"heap_memory_usage: 84718576\nnon_heap_memory_usage: 84773480\nloaded_class_count: 11320\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061277774000,"args":{"JVM stats":"heap_memory_usage: 85381400\nnon_heap_memory_usage: 84818984\nloaded_class_count: 11326\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061277776000,"args":{"JVM stats":"heap_memory_usage: 85381400\nnon_heap_memory_usage: 84823128\nloaded_class_count: 11326\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061277788000,"args":{"JVM stats":"heap_memory_usage: 85456624\nnon_heap_memory_usage: 84848152\nloaded_class_count: 11326\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061277797000,"args":{"JVM stats":"heap_memory_usage: 85456624\nnon_heap_memory_usage: 84890488\nloaded_class_count: 11326\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061277799000,"args":{"JVM stats":"heap_memory_usage: 85456624\nnon_heap_memory_usage: 84892888\nloaded_class_count: 11326\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061277888000,"args":{"JVM stats":"heap_memory_usage: 86595512\nnon_heap_memory_usage: 84990048\nloaded_class_count: 11326\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061277920000,"args":{"JVM stats":"heap_memory_usage: 86599624\nnon_heap_memory_usage: 85099760\nloaded_class_count: 11332\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061277928000,"args":{"JVM stats":"heap_memory_usage: 86599624\nnon_heap_memory_usage: 84697520\nloaded_class_count: 11332\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061277931000,"args":{"JVM stats":"heap_memory_usage: 86599624\nnon_heap_memory_usage: 84697520\nloaded_class_count: 11332\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061277940000,"args":{"JVM stats":"heap_memory_usage: 86674824\nnon_heap_memory_usage: 84387344\nloaded_class_count: 11332\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061278736000,"args":{"JVM stats":"heap_memory_usage: 118216352\nnon_heap_memory_usage: 85716136\nloaded_class_count: 11424\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061278737000,"args":{"JVM stats":"heap_memory_usage: 118216352\nnon_heap_memory_usage: 85717096\nloaded_class_count: 11424\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061278739000,"args":{"JVM stats":"heap_memory_usage: 118216352\nnon_heap_memory_usage: 85718360\nloaded_class_count: 11424\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061278740000,"args":{"JVM stats":"heap_memory_usage: 118216352\nnon_heap_memory_usage: 85718360\nloaded_class_count: 11424\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061278748000,"args":{"JVM stats":"heap_memory_usage: 118216352\nnon_heap_memory_usage: 85734032\nloaded_class_count: 11426\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061278767000,"args":{"JVM stats":"heap_memory_usage: 118954304\nnon_heap_memory_usage: 85763184\nloaded_class_count: 11428\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061278770000,"args":{"JVM stats":"heap_memory_usage: 118954304\nnon_heap_memory_usage: 85768832\nloaded_class_count: 11428\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061278771000,"args":{"JVM stats":"heap_memory_usage: 118954304\nnon_heap_memory_usage: 85769968\nloaded_class_count: 11428\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061278776000,"args":{"JVM stats":"heap_memory_usage: 118954304\nnon_heap_memory_usage: 85774968\nloaded_class_count: 11428\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061278790000,"args":{"JVM stats":"heap_memory_usage: 119617000\nnon_heap_memory_usage: 85789584\nloaded_class_count: 11428\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061278900000,"args":{"JVM stats":"heap_memory_usage: 122976984\nnon_heap_memory_usage: 86039456\nloaded_class_count: 11431\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061278904000,"args":{"JVM stats":"heap_memory_usage: 122976984\nnon_heap_memory_usage: 86043104\nloaded_class_count: 11431\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061278917000,"args":{"JVM stats":"heap_memory_usage: 123715024\nnon_heap_memory_usage: 86105416\nloaded_class_count: 11437\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061279951000,"args":{"JVM stats":"heap_memory_usage: 51570352\nnon_heap_memory_usage: 87549592\nloaded_class_count: 11648\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 41\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 1\n gc_time: 345\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061279961000,"args":{"JVM stats":"heap_memory_usage: 54686016\nnon_heap_memory_usage: 87560936\nloaded_class_count: 11649\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061279967000,"args":{"JVM stats":"heap_memory_usage: 54686016\nnon_heap_memory_usage: 87565440\nloaded_class_count: 11650\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061279995000,"args":{"JVM stats":"heap_memory_usage: 56569344\nnon_heap_memory_usage: 87590568\nloaded_class_count: 11650\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061279999000,"args":{"JVM stats":"heap_memory_usage: 56924192\nnon_heap_memory_usage: 87595408\nloaded_class_count: 11650\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061280000000,"args":{"JVM stats":"heap_memory_usage: 56924192\nnon_heap_memory_usage: 87595408\nloaded_class_count: 11650\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061280060000,"args":{"JVM stats":"heap_memory_usage: 59146392\nnon_heap_memory_usage: 87673960\nloaded_class_count: 11650\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061280088000,"args":{"JVM stats":"heap_memory_usage: 59146392\nnon_heap_memory_usage: 87677576\nloaded_class_count: 11650\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061280089000,"args":{"JVM stats":"heap_memory_usage: 59146392\nnon_heap_memory_usage: 87677576\nloaded_class_count: 11650\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061280142000,"args":{"JVM stats":"heap_memory_usage: 61947432\nnon_heap_memory_usage: 87743232\nloaded_class_count: 11651\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061280295000,"args":{"JVM stats":"heap_memory_usage: 71213544\nnon_heap_memory_usage: 87861704\nloaded_class_count: 11652\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061280299000,"args":{"JVM stats":"heap_memory_usage: 71213544\nnon_heap_memory_usage: 87870832\nloaded_class_count: 11652\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061280300000,"args":{"JVM stats":"heap_memory_usage: 71213544\nnon_heap_memory_usage: 87870832\nloaded_class_count: 11652\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061280313000,"args":{"JVM stats":"heap_memory_usage: 71568392\nnon_heap_memory_usage: 87913848\nloaded_class_count: 11652\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061280592000,"args":{"JVM stats":"heap_memory_usage: 89277104\nnon_heap_memory_usage: 88245472\nloaded_class_count: 11652\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061280597000,"args":{"JVM stats":"heap_memory_usage: 89277104\nnon_heap_memory_usage: 88250752\nloaded_class_count: 11652\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061280603000,"args":{"JVM stats":"heap_memory_usage: 89277104\nnon_heap_memory_usage: 88253792\nloaded_class_count: 11652\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061280606000,"args":{"JVM stats":"heap_memory_usage: 89277104\nnon_heap_memory_usage: 88259872\nloaded_class_count: 11652\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061281018000,"args":{"JVM stats":"heap_memory_usage: 102007880\nnon_heap_memory_usage: 89046488\nloaded_class_count: 11726\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061282684000,"args":{"JVM stats":"heap_memory_usage: 178296912\nnon_heap_memory_usage: 93336504\nloaded_class_count: 11909\nthread_count: 27\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061284337000,"args":{"JVM stats":"heap_memory_usage: 76487968\nnon_heap_memory_usage: 94598224\nloaded_class_count: 12024\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 1\n gc_time: 26\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061284365000,"args":{"JVM stats":"heap_memory_usage: 79043272\nnon_heap_memory_usage: 94727592\nloaded_class_count: 12026\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061284379000,"args":{"JVM stats":"heap_memory_usage: 80061832\nnon_heap_memory_usage: 94750584\nloaded_class_count: 12027\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061284400000,"args":{"JVM stats":"heap_memory_usage: 80768712\nnon_heap_memory_usage: 94771856\nloaded_class_count: 12027\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061284417000,"args":{"JVM stats":"heap_memory_usage: 82746824\nnon_heap_memory_usage: 94793312\nloaded_class_count: 12027\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061284421000,"args":{"JVM stats":"heap_memory_usage: 82746824\nnon_heap_memory_usage: 94802312\nloaded_class_count: 12027\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061284426000,"args":{"JVM stats":"heap_memory_usage: 82746824\nnon_heap_memory_usage: 94825912\nloaded_class_count: 12028\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061284427000,"args":{"JVM stats":"heap_memory_usage: 82746824\nnon_heap_memory_usage: 94827496\nloaded_class_count: 12028\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061284431000,"args":{"JVM stats":"heap_memory_usage: 82746824\nnon_heap_memory_usage: 94829656\nloaded_class_count: 12028\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061284434000,"args":{"JVM stats":"heap_memory_usage: 83053592\nnon_heap_memory_usage: 94856408\nloaded_class_count: 12028\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061284438000,"args":{"JVM stats":"heap_memory_usage: 83053592\nnon_heap_memory_usage: 94859352\nloaded_class_count: 12028\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061284439000,"args":{"JVM stats":"heap_memory_usage: 83053592\nnon_heap_memory_usage: 94861144\nloaded_class_count: 12028\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061284463000,"args":{"JVM stats":"heap_memory_usage: 84131520\nnon_heap_memory_usage: 94853496\nloaded_class_count: 12029\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061284576000,"args":{"JVM stats":"heap_memory_usage: 86954520\nnon_heap_memory_usage: 94779424\nloaded_class_count: 12032\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061284580000,"args":{"JVM stats":"heap_memory_usage: 86954520\nnon_heap_memory_usage: 94779424\nloaded_class_count: 12032\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061284597000,"args":{"JVM stats":"heap_memory_usage: 86954520\nnon_heap_memory_usage: 94802336\nloaded_class_count: 12034\nthread_count: 31\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061309560000,"args":{"JVM stats":"heap_memory_usage: 203778920\nnon_heap_memory_usage: 104526080\nloaded_class_count: 13603\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061309572000,"args":{"JVM stats":"heap_memory_usage: 204131680\nnon_heap_memory_usage: 104473592\nloaded_class_count: 13607\nthread_count: 37\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":0,"ph":"i","name":"Memory sample","ts":1548061309670000,"args":{"JVM stats":"heap_memory_usage: 206794768\nnon_heap_memory_usage: 104446128\nloaded_class_count: 13687\nthread_count: 32\ngarbage_collection_stats {\n name: \"PS Scavenge\"\n gc_collections: 0\n gc_time: 0\n}\ngarbage_collection_stats {\n name: \"PS MarkSweep\"\n gc_collections: 0\n gc_time: 0\n}\n"}},{"pid":1,"tid":1,"id":2,"name":"base plugin project configure","args":{"span_id":"2","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548061270174000,"dur":809000},{"pid":1,"tid":1,"id":3,"name":"base plugin project base extension creation","args":{"span_id":"3","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548061270984000,"dur":523000},{"pid":1,"tid":1,"id":5,"name":"task manager create tasks","args":{"span_id":"5","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548061271514000,"dur":154000},{"pid":1,"tid":1,"id":4,"name":"base plugin project tasks creation","args":{"span_id":"4","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548061271512000,"dur":157000},{"pid":1,"tid":1,"id":8,"name":"variant manager create variants","args":{"span_id":"8","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548061274480000,"dur":140000},{"pid":1,"tid":1,"id":9,"name":"variant manager create tests tasks","args":{"span_id":"9","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548061274621000,"dur":35000},{"pid":1,"tid":1,"id":11,"name":"app task manager create merge manifest task","args":{"span_id":"11","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061274746000,"dur":38000},{"pid":1,"tid":1,"id":12,"name":"app task manager create generate res values task","args":{"span_id":"12","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061274785000,"dur":6000},{"pid":1,"tid":1,"id":13,"name":"app task manager create create renderscript task","args":{"span_id":"13","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061274792000,"dur":14000},{"pid":1,"tid":1,"id":14,"name":"app task manager create merge resources task","args":{"span_id":"14","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061274806000,"dur":61000},{"pid":1,"tid":1,"id":15,"name":"app task manager create merge assets task","args":{"span_id":"15","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061274868000,"dur":13000},{"pid":1,"tid":1,"id":16,"name":"app task manager create build config task","args":{"span_id":"16","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061274881000,"dur":21000},{"pid":1,"tid":1,"id":17,"name":"app task manager create process res task","args":{"span_id":"17","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061274903000,"dur":95000},{"pid":1,"tid":1,"id":18,"name":"app task manager create aidl task","args":{"span_id":"18","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061274998000,"dur":9000},{"pid":1,"tid":1,"id":19,"name":"app task manager create shader task","args":{"span_id":"19","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061275007000,"dur":22000},{"pid":1,"tid":1,"id":20,"name":"app task manager create ndk task","args":{"span_id":"20","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061275031000,"dur":11000},{"pid":1,"tid":1,"id":21,"name":"app task manager create external native build task","args":{"span_id":"21","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061275042000,"dur":1000},{"pid":1,"tid":1,"id":22,"name":"app task manager create merge jnilibs folders task","args":{"span_id":"22","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061275044000,"dur":35000},{"pid":1,"tid":1,"id":23,"name":"app task manager create compile task","args":{"span_id":"23","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061275081000,"dur":205000},{"pid":1,"tid":1,"id":24,"name":"app task manager create packaging task","args":{"span_id":"24","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061275287000,"dur":67000},{"pid":1,"tid":1,"id":25,"name":"app task manager create lint task","args":{"span_id":"25","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061275355000,"dur":11000},{"pid":1,"tid":1,"id":10,"name":"variant manager create tasks for variant","args":{"span_id":"10","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061274659000,"dur":707000},{"pid":1,"tid":1,"id":26,"name":"variant manager create tasks for variant","args":{"span_id":"26","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548061275366000,"dur":93000},{"pid":1,"tid":1,"id":27,"name":"variant manager create tasks for variant","args":{"span_id":"27","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548061275459000,"dur":83000},{"pid":1,"tid":1,"id":7,"name":"variant manager create android tasks","args":{"span_id":"7","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548061274476000,"dur":1192000},{"pid":1,"tid":1,"id":28,"name":"variant manager external native config values","args":{"span_id":"28","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548061275686000,"dur":100},{"pid":1,"tid":1,"id":6,"name":"base plugin create android tasks","args":{"span_id":"6","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548061272046000,"dur":3640000},{"pid":1,"tid":1,"id":29,"name":"base plugin project configure","args":{"span_id":"29","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548061275737000,"dur":40000},{"pid":1,"tid":1,"id":30,"name":"base plugin project base extension creation","args":{"span_id":"30","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548061275777000,"dur":29000},{"pid":1,"tid":1,"id":32,"name":"task manager create tasks","args":{"span_id":"32","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548061275806000,"dur":4000},{"pid":1,"tid":1,"id":31,"name":"base plugin project tasks creation","args":{"span_id":"31","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548061275806000,"dur":4000},{"pid":1,"tid":1,"id":35,"name":"variant manager create variants","args":{"span_id":"35","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548061276140000,"dur":14000},{"pid":1,"tid":1,"id":36,"name":"variant manager create tests tasks","args":{"span_id":"36","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548061276154000,"dur":5000},{"pid":1,"tid":1,"id":38,"name":"lib task manager create generate res values task","args":{"span_id":"38","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276186000,"dur":4000},{"pid":1,"tid":1,"id":39,"name":"lib task manager create merge manifest task","args":{"span_id":"39","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276193000,"dur":57000},{"pid":1,"tid":1,"id":40,"name":"lib task manager create create renderscript task","args":{"span_id":"40","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276250000,"dur":1000},{"pid":1,"tid":1,"id":41,"name":"lib task manager create merge resources task","args":{"span_id":"41","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276252000,"dur":3000},{"pid":1,"tid":1,"id":42,"name":"lib task manager create merge assets task","args":{"span_id":"42","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276255000,"dur":1000},{"pid":1,"tid":1,"id":43,"name":"lib task manager create build config task","args":{"span_id":"43","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276257000,"dur":1000},{"pid":1,"tid":1,"id":44,"name":"lib task manager create process res task","args":{"span_id":"44","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276260000,"dur":13000},{"pid":1,"tid":1,"id":45,"name":"lib task manager create aidl task","args":{"span_id":"45","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276273000,"dur":1000},{"pid":1,"tid":1,"id":46,"name":"lib task manager create shader task","args":{"span_id":"46","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276274000,"dur":1000},{"pid":1,"tid":1,"id":47,"name":"lib task manager create compile task","args":{"span_id":"47","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276276000,"dur":6000},{"pid":1,"tid":1,"id":48,"name":"lib task manager create ndk task","args":{"span_id":"48","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276283000,"dur":1000},{"pid":1,"tid":1,"id":49,"name":"lib task manager create external native build task","args":{"span_id":"49","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276284000,"dur":100},{"pid":1,"tid":1,"id":50,"name":"lib task manager create packaging task","args":{"span_id":"50","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276286000,"dur":3000},{"pid":1,"tid":1,"id":51,"name":"lib task manager create merge proguard file task","args":{"span_id":"51","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276289000,"dur":8000},{"pid":1,"tid":1,"id":52,"name":"lib task manager create post compilation task","args":{"span_id":"52","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276328000,"dur":15000},{"pid":1,"tid":1,"id":53,"name":"lib task manager create lint task","args":{"span_id":"53","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276347000,"dur":100},{"pid":1,"tid":1,"id":37,"name":"variant manager create tasks for variant","args":{"span_id":"37","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276159000,"dur":188000},{"pid":1,"tid":1,"id":54,"name":"variant manager create tasks for variant","args":{"span_id":"54","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548061276347000,"dur":9000},{"pid":1,"tid":1,"id":56,"name":"lib task manager create generate res values task","args":{"span_id":"56","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276358000,"dur":100},{"pid":1,"tid":1,"id":57,"name":"lib task manager create merge manifest task","args":{"span_id":"57","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276358000,"dur":2000},{"pid":1,"tid":1,"id":58,"name":"lib task manager create create renderscript task","args":{"span_id":"58","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276360000,"dur":1000},{"pid":1,"tid":1,"id":59,"name":"lib task manager create merge resources task","args":{"span_id":"59","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276361000,"dur":4000},{"pid":1,"tid":1,"id":60,"name":"lib task manager create merge assets task","args":{"span_id":"60","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276365000,"dur":1000},{"pid":1,"tid":1,"id":61,"name":"lib task manager create build config task","args":{"span_id":"61","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276366000,"dur":100},{"pid":1,"tid":1,"id":62,"name":"lib task manager create process res task","args":{"span_id":"62","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276366000,"dur":9000},{"pid":1,"tid":1,"id":63,"name":"lib task manager create aidl task","args":{"span_id":"63","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276376000,"dur":100},{"pid":1,"tid":1,"id":64,"name":"lib task manager create shader task","args":{"span_id":"64","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276377000,"dur":1000},{"pid":1,"tid":1,"id":65,"name":"lib task manager create compile task","args":{"span_id":"65","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276378000,"dur":4000},{"pid":1,"tid":1,"id":66,"name":"lib task manager create ndk task","args":{"span_id":"66","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276383000,"dur":1000},{"pid":1,"tid":1,"id":67,"name":"lib task manager create external native build task","args":{"span_id":"67","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276384000,"dur":100},{"pid":1,"tid":1,"id":68,"name":"lib task manager create packaging task","args":{"span_id":"68","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276386000,"dur":1000},{"pid":1,"tid":1,"id":69,"name":"lib task manager create merge proguard file task","args":{"span_id":"69","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276387000,"dur":100},{"pid":1,"tid":1,"id":70,"name":"lib task manager create post compilation task","args":{"span_id":"70","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276388000,"dur":7000},{"pid":1,"tid":1,"id":71,"name":"lib task manager create lint task","args":{"span_id":"71","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276402000,"dur":1000},{"pid":1,"tid":1,"id":55,"name":"variant manager create tasks for variant","args":{"span_id":"55","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276356000,"dur":47000},{"pid":1,"tid":1,"id":72,"name":"variant manager create tasks for variant","args":{"span_id":"72","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548061276403000,"dur":9000},{"pid":1,"tid":1,"id":73,"name":"variant manager create tasks for variant","args":{"span_id":"73","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548061276412000,"dur":27000},{"pid":1,"tid":1,"id":34,"name":"variant manager create android tasks","args":{"span_id":"34","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548061276139000,"dur":318000},{"pid":1,"tid":1,"id":74,"name":"variant manager external native config values","args":{"span_id":"74","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548061276458000,"dur":100},{"pid":1,"tid":1,"id":33,"name":"base plugin create android tasks","args":{"span_id":"33","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548061276137000,"dur":321000},{"pid":1,"tid":1,"id":75,"name":"base plugin project configure","args":{"span_id":"75","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548061276873000,"dur":20000},{"pid":1,"tid":1,"id":76,"name":"base plugin project base extension creation","args":{"span_id":"76","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548061276893000,"dur":8000},{"pid":1,"tid":1,"id":78,"name":"task manager create tasks","args":{"span_id":"78","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548061276901000,"dur":3000},{"pid":1,"tid":1,"id":77,"name":"base plugin project tasks creation","args":{"span_id":"77","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548061276901000,"dur":3000},{"pid":1,"tid":1,"id":81,"name":"variant manager create variants","args":{"span_id":"81","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548061276949000,"dur":35000},{"pid":1,"tid":1,"id":82,"name":"variant manager create tests tasks","args":{"span_id":"82","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548061276984000,"dur":1000},{"pid":1,"tid":1,"id":84,"name":"lib task manager create generate res values task","args":{"span_id":"84","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276986000,"dur":1000},{"pid":1,"tid":1,"id":85,"name":"lib task manager create merge manifest task","args":{"span_id":"85","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276987000,"dur":100},{"pid":1,"tid":1,"id":86,"name":"lib task manager create create renderscript task","args":{"span_id":"86","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276987000,"dur":1000},{"pid":1,"tid":1,"id":87,"name":"lib task manager create merge resources task","args":{"span_id":"87","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276988000,"dur":2000},{"pid":1,"tid":1,"id":88,"name":"lib task manager create merge assets task","args":{"span_id":"88","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276990000,"dur":4000},{"pid":1,"tid":1,"id":89,"name":"lib task manager create build config task","args":{"span_id":"89","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276994000,"dur":100},{"pid":1,"tid":1,"id":90,"name":"lib task manager create process res task","args":{"span_id":"90","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276995000,"dur":6000},{"pid":1,"tid":1,"id":91,"name":"lib task manager create aidl task","args":{"span_id":"91","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061277001000,"dur":1000},{"pid":1,"tid":1,"id":92,"name":"lib task manager create shader task","args":{"span_id":"92","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061277002000,"dur":1000},{"pid":1,"tid":1,"id":93,"name":"lib task manager create compile task","args":{"span_id":"93","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061277003000,"dur":1000},{"pid":1,"tid":1,"id":94,"name":"lib task manager create ndk task","args":{"span_id":"94","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061277005000,"dur":100},{"pid":1,"tid":1,"id":95,"name":"lib task manager create external native build task","args":{"span_id":"95","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061277005000,"dur":100},{"pid":1,"tid":1,"id":96,"name":"lib task manager create packaging task","args":{"span_id":"96","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061277006000,"dur":1000},{"pid":1,"tid":1,"id":97,"name":"lib task manager create merge proguard file task","args":{"span_id":"97","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061277007000,"dur":100},{"pid":1,"tid":1,"id":98,"name":"lib task manager create post compilation task","args":{"span_id":"98","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061277018000,"dur":13000},{"pid":1,"tid":1,"id":99,"name":"lib task manager create lint task","args":{"span_id":"99","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061277031000,"dur":1000},{"pid":1,"tid":1,"id":83,"name":"variant manager create tasks for variant","args":{"span_id":"83","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061276985000,"dur":47000},{"pid":1,"tid":1,"id":100,"name":"variant manager create tasks for variant","args":{"span_id":"100","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548061277032000,"dur":7000},{"pid":1,"tid":1,"id":102,"name":"lib task manager create generate res values task","args":{"span_id":"102","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061277041000,"dur":1000},{"pid":1,"tid":1,"id":103,"name":"lib task manager create merge manifest task","args":{"span_id":"103","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061277042000,"dur":100},{"pid":1,"tid":1,"id":104,"name":"lib task manager create create renderscript task","args":{"span_id":"104","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061277042000,"dur":1000},{"pid":1,"tid":1,"id":105,"name":"lib task manager create merge resources task","args":{"span_id":"105","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061277043000,"dur":2000},{"pid":1,"tid":1,"id":106,"name":"lib task manager create merge assets task","args":{"span_id":"106","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061277045000,"dur":100},{"pid":1,"tid":1,"id":107,"name":"lib task manager create build config task","args":{"span_id":"107","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061277046000,"dur":100},{"pid":1,"tid":1,"id":108,"name":"lib task manager create process res task","args":{"span_id":"108","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061277047000,"dur":8000},{"pid":1,"tid":1,"id":109,"name":"lib task manager create aidl task","args":{"span_id":"109","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061277055000,"dur":12000},{"pid":1,"tid":1,"id":110,"name":"lib task manager create shader task","args":{"span_id":"110","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061277070000,"dur":1000},{"pid":1,"tid":1,"id":111,"name":"lib task manager create compile task","args":{"span_id":"111","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061277071000,"dur":1000},{"pid":1,"tid":1,"id":112,"name":"lib task manager create ndk task","args":{"span_id":"112","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061277072000,"dur":1000},{"pid":1,"tid":1,"id":113,"name":"lib task manager create external native build task","args":{"span_id":"113","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061277073000,"dur":100},{"pid":1,"tid":1,"id":114,"name":"lib task manager create packaging task","args":{"span_id":"114","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061277074000,"dur":100},{"pid":1,"tid":1,"id":115,"name":"lib task manager create merge proguard file task","args":{"span_id":"115","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061277075000,"dur":100},{"pid":1,"tid":1,"id":116,"name":"lib task manager create post compilation task","args":{"span_id":"116","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061277076000,"dur":6000},{"pid":1,"tid":1,"id":117,"name":"lib task manager create lint task","args":{"span_id":"117","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061277082000,"dur":1000},{"pid":1,"tid":1,"id":101,"name":"variant manager create tasks for variant","args":{"span_id":"101","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 2\nis_debug: false\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n"},"ph":"X","ts":1548061277039000,"dur":44000},{"pid":1,"tid":1,"id":118,"name":"variant manager create tasks for variant","args":{"span_id":"118","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548061277083000,"dur":7000},{"pid":1,"tid":1,"id":119,"name":"variant manager create tasks for variant","args":{"span_id":"119","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548061277091000,"dur":21000},{"pid":1,"tid":1,"id":80,"name":"variant manager create android tasks","args":{"span_id":"80","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548061276949000,"dur":164000},{"pid":1,"tid":1,"id":120,"name":"variant manager external native config values","args":{"span_id":"120","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548061277114000,"dur":100},{"pid":1,"tid":1,"id":79,"name":"base plugin create android tasks","args":{"span_id":"79","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548061276926000,"dur":188000},{"pid":1,"tid":0,"id":121,"name":"task: build info loader","args":{"span_id":"121","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 7\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548061277586000,"dur":30000},{"pid":1,"tid":0,"id":122,"name":"task: merge source set folders","args":{"span_id":"122","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061277635000,"dur":114000},{"pid":1,"tid":0,"id":123,"name":"task: shader compile","args":{"span_id":"123","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061277752000,"dur":22000},{"pid":1,"tid":0,"id":124,"name":"task: unknown task type","args":{"span_id":"124","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061277775000,"dur":100},{"pid":1,"tid":0,"id":125,"name":"task: merge source set folders","args":{"span_id":"125","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061277777000,"dur":11000},{"pid":1,"tid":0,"id":126,"name":"task: shader compile","args":{"span_id":"126","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061277789000,"dur":8000},{"pid":1,"tid":0,"id":127,"name":"task: unknown task type","args":{"span_id":"127","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061277798000,"dur":1000},{"pid":1,"tid":0,"id":128,"name":"task: merge source set folders","args":{"span_id":"128","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061277800000,"dur":88000},{"pid":1,"tid":0,"id":129,"name":"task: merge source set folders","args":{"span_id":"129","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061277891000,"dur":29000},{"pid":1,"tid":0,"id":130,"name":"task: shader compile","args":{"span_id":"130","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 55\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061277922000,"dur":6000},{"pid":1,"tid":0,"id":131,"name":"task: unknown task type","args":{"span_id":"131","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061277930000,"dur":1000},{"pid":1,"tid":0,"id":132,"name":"task: merge source set folders","args":{"span_id":"132","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061277932000,"dur":7000},{"pid":1,"tid":0,"id":133,"name":"task: merge source set folders","args":{"span_id":"133","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 41\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061277943000,"dur":793000},{"pid":1,"tid":0,"id":134,"name":"task: unknown task type","args":{"span_id":"134","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061278737000,"dur":100},{"pid":1,"tid":0,"id":135,"name":"task: unknown task type","args":{"span_id":"135","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061278738000,"dur":100},{"pid":1,"tid":0,"id":136,"name":"task: unknown task type","args":{"span_id":"136","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061278740000,"dur":100},{"pid":1,"tid":0,"id":137,"name":"task: check manifest","args":{"span_id":"137","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061278741000,"dur":7000},{"pid":1,"tid":0,"id":138,"name":"task: process manifest","args":{"span_id":"138","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 52\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061278750000,"dur":17000},{"pid":1,"tid":0,"id":139,"name":"task: unknown task type","args":{"span_id":"139","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061278769000,"dur":1000},{"pid":1,"tid":0,"id":140,"name":"task: unknown task type","args":{"span_id":"140","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061278771000,"dur":100},{"pid":1,"tid":0,"id":141,"name":"task: check manifest","args":{"span_id":"141","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061278773000,"dur":3000},{"pid":1,"tid":0,"id":142,"name":"task: process manifest","args":{"span_id":"142","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 52\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061278779000,"dur":10000},{"pid":1,"tid":0,"id":143,"name":"task: app pre build","args":{"span_id":"143","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 92\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061278791000,"dur":109000},{"pid":1,"tid":0,"id":144,"name":"task: check manifest","args":{"span_id":"144","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 8\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061278902000,"dur":2000},{"pid":1,"tid":0,"id":145,"name":"task: compatible screens manifest","args":{"span_id":"145","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 9\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061278905000,"dur":12000},{"pid":1,"tid":0,"id":146,"name":"task: merge manifests","args":{"span_id":"146","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 39\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548061278919000,"dur":1032000},{"pid":1,"tid":0,"id":147,"name":"task: unknown task type","args":{"span_id":"147","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548061279952000,"dur":8000},{"pid":1,"tid":0,"id":148,"name":"task: unknown task type","args":{"span_id":"148","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548061279966000,"dur":1000},{"pid":1,"tid":0,"id":149,"name":"task: renderscript compile","args":{"span_id":"149","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061279970000,"dur":25000},{"pid":1,"tid":0,"id":150,"name":"task: generate res values","args":{"span_id":"150","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061279996000,"dur":3000},{"pid":1,"tid":0,"id":151,"name":"task: unknown task type","args":{"span_id":"151","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061280000000,"dur":100},{"pid":1,"tid":0,"id":152,"name":"task: renderscript compile","args":{"span_id":"152","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061280001000,"dur":59000},{"pid":1,"tid":0,"id":153,"name":"task: generate res values","args":{"span_id":"153","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061280079000,"dur":9000},{"pid":1,"tid":0,"id":154,"name":"task: unknown task type","args":{"span_id":"154","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061280089000,"dur":100},{"pid":1,"tid":0,"id":155,"name":"task: merge resources","args":{"span_id":"155","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061280092000,"dur":50000},{"pid":1,"tid":0,"id":156,"name":"task: renderscript compile","args":{"span_id":"156","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 54\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061280144000,"dur":150000},{"pid":1,"tid":0,"id":157,"name":"task: generate res values","args":{"span_id":"157","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 26\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061280296000,"dur":3000},{"pid":1,"tid":0,"id":158,"name":"task: unknown task type","args":{"span_id":"158","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061280300000,"dur":100},{"pid":1,"tid":0,"id":159,"name":"task: merge resources","args":{"span_id":"159","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061280302000,"dur":11000},{"pid":1,"tid":0,"id":160,"name":"task: merge resources","args":{"span_id":"160","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 40\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061280318000,"dur":274000},{"pid":1,"tid":0,"id":161,"name":"task: splits discovery","args":{"span_id":"161","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 87\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061280593000,"dur":4000},{"pid":1,"tid":0,"id":162,"name":"task: platform attr extractor","args":{"span_id":"162","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 109\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061280598000,"dur":5000},{"pid":1,"tid":0,"id":163,"name":"task: platform attr extractor","args":{"span_id":"163","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 109\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061280604000,"dur":2000},{"pid":1,"tid":0,"id":164,"name":"task: process android resources","args":{"span_id":"164","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548061280608000,"dur":408000},{"pid":1,"tid":0,"id":165,"name":"task: process android resources","args":{"span_id":"165","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548061281022000,"dur":1661000},{"pid":1,"tid":0,"id":166,"name":"task: process android resources","args":{"span_id":"166","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 51\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548061282687000,"dur":1650000},{"pid":1,"tid":0,"id":167,"name":"task: package application","args":{"span_id":"167","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 45\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061284339000,"dur":26000},{"pid":1,"tid":0,"id":168,"name":"task: aidl compile","args":{"span_id":"168","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061284367000,"dur":12000},{"pid":1,"tid":0,"id":169,"name":"task: aidl compile","args":{"span_id":"169","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061284380000,"dur":20000},{"pid":1,"tid":0,"id":170,"name":"task: aidl compile","args":{"span_id":"170","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 1\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061284401000,"dur":16000},{"pid":1,"tid":0,"id":171,"name":"task: generate build config","args":{"span_id":"171","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061284418000,"dur":3000},{"pid":1,"tid":0,"id":172,"name":"task: prepare lint jar","args":{"span_id":"172","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 119\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061284422000,"dur":4000},{"pid":1,"tid":0,"id":173,"name":"task: unknown task type","args":{"span_id":"173","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548061284426000,"dur":1000},{"pid":1,"tid":0,"id":174,"name":"task: generate build config","args":{"span_id":"174","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061284428000,"dur":3000},{"pid":1,"tid":0,"id":175,"name":"task: generate build config","args":{"span_id":"175","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 24\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061284432000,"dur":2000},{"pid":1,"tid":0,"id":176,"name":"task: prepare lint jar","args":{"span_id":"176","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 119\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061284435000,"dur":3000},{"pid":1,"tid":0,"id":177,"name":"task: unknown task type","args":{"span_id":"177","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548061284439000,"dur":100},{"pid":1,"tid":0,"id":178,"name":"task: java pre compile","args":{"span_id":"178","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 76\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061284440000,"dur":23000},{"pid":1,"tid":0,"id":179,"name":"task: android java compile","args":{"span_id":"179","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 3\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061284466000,"dur":110000},{"pid":1,"tid":0,"id":180,"name":"task: unknown task type","args":{"span_id":"180","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","task":"type: 0\ndid_work: false\nskipped: true\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548061284579000,"dur":1000},{"pid":1,"tid":0,"id":181,"name":"task: transform","args":{"span_id":"181","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: LIBRARY\nmin_sdk_version {\n api_level: 14\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 65\ndid_work: false\nskipped: true\nup_to_date: true\nfailed: false\n"},"ph":"X","ts":1548061284586000,"dur":11000},{"pid":1,"tid":0,"id":182,"name":"task: kotlin compile","args":{"span_id":"182","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n","task":"type: 116\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: true\n"},"ph":"X","ts":1548061284601000,"dur":24959000},{"pid":1,"tid":0,"id":183,"name":"task: build info writer","args":{"span_id":"183","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n","variant":"id: 1\nis_debug: true\nminify_enabled: false\nuse_multidex: false\nuse_legacy_multidex: false\nvariant_type: APPLICATION\nmin_sdk_version {\n api_level: 15\n}\ntarget_sdk_version {\n api_level: 26\n}\ndex_builder: DX_DEXER\ndex_merger: DX_MERGER\n","task":"type: 70\ndid_work: true\nskipped: false\nup_to_date: false\nfailed: false\n"},"ph":"X","ts":1548061309566000,"dur":6000},{"pid":1,"tid":1,"id":184,"name":"base plugin build finished","args":{"span_id":"184","project":"id: 1\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: APPLICATION\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548061309592000,"dur":25000},{"pid":1,"tid":1,"id":185,"name":"base plugin build finished","args":{"span_id":"185","project":"id: 2\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\nkotlin_plugin_version: \"1.2.71\"\n"},"ph":"X","ts":1548061309617000,"dur":1000},{"pid":1,"tid":1,"id":186,"name":"base plugin build finished","args":{"span_id":"186","project":"id: 3\nandroid_plugin_version: \"3.0.1\"\nandroid_plugin: LIBRARY\nplugin_generation: FIRST\nbuild_tools_version: \"26.0.2\"\ncompile_sdk: \"android-26\"\nsplits {\n}\n"},"ph":"X","ts":1548061309619000,"dur":1000}] \ No newline at end of file diff --git a/AndroidLearnProject/build/android-profile/profile-2019-01-21-17-01-49-664.rawproto b/AndroidLearnProject/build/android-profile/profile-2019-01-21-17-01-49-664.rawproto deleted file mode 100644 index ded7466..0000000 Binary files a/AndroidLearnProject/build/android-profile/profile-2019-01-21-17-01-49-664.rawproto and /dev/null differ diff --git a/AndroidLearnProject/build/intermediates/proguard-files/proguard-android-optimize.txt-3.0.1 b/AndroidLearnProject/build/intermediates/proguard-files/proguard-android-optimize.txt-3.0.1 deleted file mode 100644 index c189cd2..0000000 --- a/AndroidLearnProject/build/intermediates/proguard-files/proguard-android-optimize.txt-3.0.1 +++ /dev/null @@ -1,89 +0,0 @@ -# This is a configuration file for ProGuard. -# http://proguard.sourceforge.net/index.html#manual/usage.html -# -# Starting with version 2.2 of the Android plugin for Gradle, this file is distributed together with -# the plugin and unpacked at build-time. The files in $ANDROID_HOME are no longer maintained and -# will be ignored by new version of the Android plugin for Gradle. - -# Optimizations: If you don't want to optimize, use the proguard-android.txt configuration file -# instead of this one, which turns off the optimization flags. -# Adding optimization introduces certain risks, since for example not all optimizations performed by -# ProGuard works on all versions of Dalvik. The following flags turn off various optimizations -# known to have issues, but the list may not be complete or up to date. (The "arithmetic" -# optimization can be used if you are only targeting Android 2.0 or later.) Make sure you test -# thoroughly if you go this route. --optimizations !code/simplification/arithmetic,!code/simplification/cast,!field/*,!class/merging/* --optimizationpasses 5 --allowaccessmodification - --dontusemixedcaseclassnames --dontskipnonpubliclibraryclasses --verbose - -# Preserve some attributes that may be required for reflection. --keepattributes *Annotation*,Signature,InnerClasses,EnclosingMethod - --keep public class com.google.vending.licensing.ILicensingService --keep public class com.android.vending.licensing.ILicensingService --keep public class com.google.android.vending.licensing.ILicensingService --dontnote com.android.vending.licensing.ILicensingService --dontnote com.google.vending.licensing.ILicensingService --dontnote com.google.android.vending.licensing.ILicensingService - -# For native methods, see http://proguard.sourceforge.net/manual/examples.html#native --keepclasseswithmembernames class * { - native ; -} - -# Keep setters in Views so that animations can still work. --keepclassmembers public class * extends android.view.View { - void set*(***); - *** get*(); -} - -# We want to keep methods in Activity that could be used in the XML attribute onClick. --keepclassmembers class * extends android.app.Activity { - public void *(android.view.View); -} - -# For enumeration classes, see http://proguard.sourceforge.net/manual/examples.html#enumerations --keepclassmembers enum * { - public static **[] values(); - public static ** valueOf(java.lang.String); -} - --keepclassmembers class * implements android.os.Parcelable { - public static final ** CREATOR; -} - --keepclassmembers class **.R$* { - public static ; -} - -# Preserve annotated Javascript interface methods. --keepclassmembers class * { - @android.webkit.JavascriptInterface ; -} - -# The support libraries contains references to newer platform versions. -# Don't warn about those in case this app is linking against an older -# platform version. We know about them, and they are safe. --dontnote android.support.** --dontwarn android.support.** - -# Understand the @Keep support annotation. --keep class android.support.annotation.Keep - --keep @android.support.annotation.Keep class * {*;} - --keepclasseswithmembers class * { - @android.support.annotation.Keep ; -} - --keepclasseswithmembers class * { - @android.support.annotation.Keep ; -} - --keepclasseswithmembers class * { - @android.support.annotation.Keep (...); -} diff --git a/AndroidLearnProject/build/intermediates/proguard-files/proguard-android.txt-3.0.1 b/AndroidLearnProject/build/intermediates/proguard-files/proguard-android.txt-3.0.1 deleted file mode 100644 index e03d9f1..0000000 --- a/AndroidLearnProject/build/intermediates/proguard-files/proguard-android.txt-3.0.1 +++ /dev/null @@ -1,88 +0,0 @@ -# This is a configuration file for ProGuard. -# http://proguard.sourceforge.net/index.html#manual/usage.html -# -# Starting with version 2.2 of the Android plugin for Gradle, this file is distributed together with -# the plugin and unpacked at build-time. The files in $ANDROID_HOME are no longer maintained and -# will be ignored by new version of the Android plugin for Gradle. - -# Optimization is turned off by default. Dex does not like code run -# through the ProGuard optimize steps (and performs some -# of these optimizations on its own). -# Note that if you want to enable optimization, you cannot just -# include optimization flags in your own project configuration file; -# instead you will need to point to the -# "proguard-android-optimize.txt" file instead of this one from your -# project.properties file. --dontoptimize - --dontusemixedcaseclassnames --dontskipnonpubliclibraryclasses --verbose - -# Preserve some attributes that may be required for reflection. --keepattributes *Annotation*,Signature,InnerClasses,EnclosingMethod - --keep public class com.google.vending.licensing.ILicensingService --keep public class com.android.vending.licensing.ILicensingService --keep public class com.google.android.vending.licensing.ILicensingService --dontnote com.android.vending.licensing.ILicensingService --dontnote com.google.vending.licensing.ILicensingService --dontnote com.google.android.vending.licensing.ILicensingService - -# For native methods, see http://proguard.sourceforge.net/manual/examples.html#native --keepclasseswithmembernames class * { - native ; -} - -# Keep setters in Views so that animations can still work. --keepclassmembers public class * extends android.view.View { - void set*(***); - *** get*(); -} - -# We want to keep methods in Activity that could be used in the XML attribute onClick. --keepclassmembers class * extends android.app.Activity { - public void *(android.view.View); -} - -# For enumeration classes, see http://proguard.sourceforge.net/manual/examples.html#enumerations --keepclassmembers enum * { - public static **[] values(); - public static ** valueOf(java.lang.String); -} - --keepclassmembers class * implements android.os.Parcelable { - public static final ** CREATOR; -} - --keepclassmembers class **.R$* { - public static ; -} - -# Preserve annotated Javascript interface methods. --keepclassmembers class * { - @android.webkit.JavascriptInterface ; -} - -# The support libraries contains references to newer platform versions. -# Don't warn about those in case this app is linking against an older -# platform version. We know about them, and they are safe. --dontnote android.support.** --dontwarn android.support.** - -# Understand the @Keep support annotation. --keep class android.support.annotation.Keep - --keep @android.support.annotation.Keep class * {*;} - --keepclasseswithmembers class * { - @android.support.annotation.Keep ; -} - --keepclasseswithmembers class * { - @android.support.annotation.Keep ; -} - --keepclasseswithmembers class * { - @android.support.annotation.Keep (...); -} diff --git a/AndroidLearnProject/build/intermediates/proguard-files/proguard-defaults.txt-3.0.1 b/AndroidLearnProject/build/intermediates/proguard-files/proguard-defaults.txt-3.0.1 deleted file mode 100644 index 9b7f031..0000000 --- a/AndroidLearnProject/build/intermediates/proguard-files/proguard-defaults.txt-3.0.1 +++ /dev/null @@ -1,89 +0,0 @@ -# This is a configuration file for ProGuard. -# http://proguard.sourceforge.net/index.html#manual/usage.html -# -# Starting with version 2.2 of the Android plugin for Gradle, this file is distributed together with -# the plugin and unpacked at build-time. The files in $ANDROID_HOME are no longer maintained and -# will be ignored by new version of the Android plugin for Gradle. - -# Optimizations can be turned on and off in the 'postprocessing' DSL block. -# The configuration below is applied if optimizations are enabled. -# Adding optimization introduces certain risks, since for example not all optimizations performed by -# ProGuard works on all versions of Dalvik. The following flags turn off various optimizations -# known to have issues, but the list may not be complete or up to date. (The "arithmetic" -# optimization can be used if you are only targeting Android 2.0 or later.) Make sure you test -# thoroughly if you go this route. --optimizations !code/simplification/arithmetic,!code/simplification/cast,!field/*,!class/merging/* --optimizationpasses 5 --allowaccessmodification - --dontusemixedcaseclassnames --dontskipnonpubliclibraryclasses --verbose - -# Preserve some attributes that may be required for reflection. --keepattributes *Annotation*,Signature,InnerClasses,EnclosingMethod - --keep public class com.google.vending.licensing.ILicensingService --keep public class com.android.vending.licensing.ILicensingService --keep public class com.google.android.vending.licensing.ILicensingService --dontnote com.android.vending.licensing.ILicensingService --dontnote com.google.vending.licensing.ILicensingService --dontnote com.google.android.vending.licensing.ILicensingService - -# For native methods, see http://proguard.sourceforge.net/manual/examples.html#native --keepclasseswithmembernames class * { - native ; -} - -# Keep setters in Views so that animations can still work. --keepclassmembers public class * extends android.view.View { - void set*(***); - *** get*(); -} - -# We want to keep methods in Activity that could be used in the XML attribute onClick. --keepclassmembers class * extends android.app.Activity { - public void *(android.view.View); -} - -# For enumeration classes, see http://proguard.sourceforge.net/manual/examples.html#enumerations --keepclassmembers enum * { - public static **[] values(); - public static ** valueOf(java.lang.String); -} - --keepclassmembers class * implements android.os.Parcelable { - public static final ** CREATOR; -} - --keepclassmembers class **.R$* { - public static ; -} - -# Preserve annotated Javascript interface methods. --keepclassmembers class * { - @android.webkit.JavascriptInterface ; -} - -# The support libraries contains references to newer platform versions. -# Don't warn about those in case this app is linking against an older -# platform version. We know about them, and they are safe. --dontnote android.support.** --dontwarn android.support.** - -# Understand the @Keep support annotation. --keep class android.support.annotation.Keep - --keep @android.support.annotation.Keep class * {*;} - --keepclasseswithmembers class * { - @android.support.annotation.Keep ; -} - --keepclasseswithmembers class * { - @android.support.annotation.Keep ; -} - --keepclasseswithmembers class * { - @android.support.annotation.Keep (...); -} diff --git a/AndroidLearnProject/config.gradle b/AndroidLearnProject/config.gradle deleted file mode 100644 index 3985664..0000000 --- a/AndroidLearnProject/config.gradle +++ /dev/null @@ -1,74 +0,0 @@ -ext { - - android = [ - compileSdkVersion: 26, - buildToolsVersion: "26.0.2", - minSdkVersion : 15, - targetSdkVersion : 26, - versionCode : 101, - versionName : "1.0.1" - ] - - version = [ - androidSupportSdkVersion: "26+", - retrofitSdkVersion : "2.3.0", - glideSdkVersion : "4.0.0", - butterknifeSdkVersion : "8.4.0", - ] - - - - dependencies = [ - appcompatV7 : "com.android.support:appcompat-v7:26+", - design : "com.android.support:design:26+", - "constraint-layout" : "com.android.support.constraint:constraint-layout:1.1.0", - - "okhttp3" : "com.squareup.okhttp3:okhttp:3.10.0", - "retrofit" : "com.squareup.retrofit2:retrofit:2.4.0", - "retrofit-converter-gson" : "com.squareup.retrofit2:converter-gson:2.0.2", - - "glide" : "com.github.bumptech.glide:glide:4.6.1", - "glide-compiler" : "com.github.bumptech.glide:compiler:4.6.1", - - "butterknife" : "com.jakewharton:butterknife:8.8.1", - "butterknife-compiler" : "com.jakewharton:butterknife-compiler:8.8.1", - - "rxjava" : "io.reactivex.rxjava2:rxjava:2.1.1", - "rxandroid" : "io.reactivex.rxjava2:rxandroid:2.0.1", - "retrofit2:adapter-rxjava2" : "com.squareup.retrofit2:adapter-rxjava2:2.3.0", - - "dagger" : "com.google.dagger:dagger:2.0.2", - "dagger-compiler" : "com.google.dagger:dagger-compiler:2.0.2", - - "webview-bridge" : "com.gzsll.jsbridge:library:1.1.0", - "banner" : "com.youth.banner:banner:1.4.10", - - "event-bus" : "org.greenrobot:eventbus:3.1.1", - "eventbus-annotation-processor": "org.greenrobot:eventbus-annotation-processor:3.1.1", - - "greendao" : "org.greenrobot:greendao:3.2.0", - "BaseRecyclerViewAdapterHelper": "com.github.CymChad:BaseRecyclerViewAdapterHelper:2.9.30", - "customactivityoncrash" : "cat.ereza:customactivityoncrash:2.2.0", - - - "leakcanary" : "com.squareup.leakcanary:leakcanary-android:1.3", - - "PersistentCookieJar" : "com.github.franmontiel:PersistentCookieJar:v1.0.1", - "umeng-common" : 'com.umeng.sdk:common:1.5.0', - "umeng-analytics" : 'com.umeng.sdk:analytics:7.5.0', - - "SmartRefreshLayout" : 'com.scwang.smartrefresh:SmartRefreshLayout:1.0.5', - "SmartRefreshHeader" : 'com.scwang.smartrefresh:SmartRefreshHeader:1.0.5', - - "blockcanary-android" : 'com.github.markzhai:blockcanary-android:1.5.0', - "blockcanary-no-op" : 'com.github.markzhai:blockcanary-no-op:1.5.0', - "leakcanary-android" : 'com.squareup.leakcanary:leakcanary-android:1.6.1', - "leakcanary-android-no-op" : 'com.squareup.leakcanary:leakcanary-android-no-op:1.6.1', - "infinitecycleviewpager" : 'com.github.devlight:infinitecycleviewpager:1.0.2', - "SVGAPlayer-Android" : 'com.github.yyued:SVGAPlayer-Android:2.3.0', - "flowlayout" : 'cn.lankton:flowlayout:1.0.1', - "greendao" : 'org.greenrobot:greendao:3.2.2', - "bga-swipebacklayout" : 'cn.bingoogolapple:bga-swipebacklayout:1.2.0', - - ] -} \ No newline at end of file diff --git a/AndroidLearnProject/local.properties b/AndroidLearnProject/local.properties deleted file mode 100644 index 90fbc14..0000000 --- a/AndroidLearnProject/local.properties +++ /dev/null @@ -1,8 +0,0 @@ -## This file must *NOT* be checked into Version Control Systems, -# as it contains information specific to your local configuration. -# -# Location of the SDK. This is only used by Gradle. -# For customization when using a Version Control System, please read the -# header note. -#Tue Dec 25 12:28:07 CST 2018 -sdk.dir=/Users/GaoLei/Library/Android/sdk diff --git a/AndroidLearnProject/settings.gradle b/AndroidLearnProject/settings.gradle deleted file mode 100644 index 85ae05b..0000000 --- a/AndroidLearnProject/settings.gradle +++ /dev/null @@ -1 +0,0 @@ -include ':app', ':basemodule',':xskinloader-lib' diff --git a/AndroidLearnProject/xskinloader-lib/.gitignore b/AndroidLearnProject/xskinloader-lib/.gitignore deleted file mode 100644 index 796b96d..0000000 --- a/AndroidLearnProject/xskinloader-lib/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/build diff --git a/AndroidLearnProject/xskinloader-lib/build.gradle b/AndroidLearnProject/xskinloader-lib/build.gradle deleted file mode 100644 index aa692e9..0000000 --- a/AndroidLearnProject/xskinloader-lib/build.gradle +++ /dev/null @@ -1,32 +0,0 @@ -apply plugin: 'com.android.library' - -android { - compileSdkVersion 26 - - - - defaultConfig { - minSdkVersion 14 - targetSdkVersion 26 - versionCode 1 - versionName "1.0" - - testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" - - } - - buildTypes { - release { - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' - } - } - -} - -dependencies { - implementation fileTree(dir: 'libs', include: ['*.jar']) - - implementation 'com.android.support:appcompat-v7:26.1.0' - -} diff --git a/AndroidLearnProject/xskinloader-lib/proguard-rules.pro b/AndroidLearnProject/xskinloader-lib/proguard-rules.pro deleted file mode 100644 index f1b4245..0000000 --- a/AndroidLearnProject/xskinloader-lib/proguard-rules.pro +++ /dev/null @@ -1,21 +0,0 @@ -# Add project specific ProGuard rules here. -# You can control the set of applied configuration files using the -# proguardFiles setting in build.gradle. -# -# For more details, see -# http://developer.android.com/guide/developing/tools/proguard.html - -# If your project uses WebView with JS, uncomment the following -# and specify the fully qualified class name to the JavaScript interface -# class: -#-keepclassmembers class fqcn.of.javascript.interface.for.webview { -# public *; -#} - -# Uncomment this to preserve the line number information for -# debugging stack traces. -#-keepattributes SourceFile,LineNumberTable - -# If you keep the line number information, uncomment this to -# hide the original source file name. -#-renamesourcefileattribute SourceFile diff --git a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/SkinInflaterFactory.java b/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/SkinInflaterFactory.java deleted file mode 100644 index 2cf8b3e..0000000 --- a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/SkinInflaterFactory.java +++ /dev/null @@ -1,152 +0,0 @@ -package com.wind.me.xskinloader; - -import android.app.Activity; -import android.content.Context; -import android.support.annotation.NonNull; -import android.support.annotation.Nullable; -import android.support.v7.app.AppCompatActivity; -import android.support.v7.app.AppCompatDelegate; -import android.util.AttributeSet; -import android.util.Log; -import android.view.LayoutInflater; -import android.view.LayoutInflater.Factory; -import android.view.View; - -import com.wind.me.xskinloader.entity.SkinAttr; -import com.wind.me.xskinloader.entity.SkinConfig; -import com.wind.me.xskinloader.parser.SkinAttributeParser; -import com.wind.me.xskinloader.util.ReflectUtils; - -import java.util.HashMap; - -public class SkinInflaterFactory implements Factory { - - private static final String TAG = SkinInflaterFactory.class.getSimpleName(); - private Factory mViewCreateFactory; - - public static void setFactory(LayoutInflater inflater) { - inflater.setFactory(new SkinInflaterFactory()); - } - - public static void setFactory(Activity activity) { - LayoutInflater inflater = activity.getLayoutInflater(); - SkinInflaterFactory factory = new SkinInflaterFactory(); - if (activity instanceof AppCompatActivity) { - //AppCompatActivity本身包含一个factory,将TextView等转换为AppCompatTextView.java, 参考:AppCompatDelegateImplV9.java - final AppCompatDelegate delegate = ((AppCompatActivity) activity).getDelegate(); - factory.setInterceptFactory(new Factory() { - @Override - public View onCreateView(String name, Context context, AttributeSet attrs) { - return delegate.createView(null, name, context, attrs); - } - }); - } - inflater.setFactory(factory); - } - - //因为LayoutInflater的setFactory方法只能调用一次,当框架外需要处理view的创建时,可以调用此方法 - public void setInterceptFactory(Factory factory) { - mViewCreateFactory = factory; - } - - @Override - public View onCreateView(String name, Context context, AttributeSet attrs) { - if (SkinConfig.DEBUG) { - Log.d(TAG, "SkinInflaterFactory onCreateView(), create view name="+name+" "); - } - View view = null; - if (mViewCreateFactory != null) { - //给框架外提供创建View的机会 - view = mViewCreateFactory.onCreateView(name, context, attrs); - } - if (isSupportSkin(attrs)) { - if (view == null) { - view = createView(context, name, attrs); - } - if (view != null) { - parseAndSaveSkinAttr(attrs, view); - } - } - - return view; - } - - private View createView(Context context, String name, AttributeSet attrs) { - View view = null; - try { - LayoutInflater inflater = LayoutInflater.from(context); - assertInflaterContext(inflater, context); - - if (-1 == name.indexOf('.')) { - if ("View".equals(name) || "ViewStub".equals(name) || "ViewGroup".equals(name)) { - view = inflater.createView(name, "android.view.", attrs); - } - if (view == null) { - view = inflater.createView(name, "android.widget.", attrs); - } - if (view == null) { - view = inflater.createView(name, "android.webkit.", attrs); - } - } else { - view = inflater.createView(name, null, attrs); - } - - } catch (Exception ex) { - Log.e(TAG, "createView(), create view failed", ex); - view = null; - } - return view; - } - - //只有在xml中设置了View的属性skin:enable,才支持xml属性换肤 - public boolean isSupportSkin(AttributeSet attrs) { - boolean isSkinEnable = attrs.getAttributeBooleanValue(SkinConfig.SKIN_XML_NAMESPACE, - SkinConfig.ATTR_SKIN_ENABLE, false); - return isSkinEnable; - } - - //获取xml中指定的换肤属性,比如:skin:attrs = "textColor|background", 假如为空,表示支持所有能够支持的换肤属性 - private @Nullable - String getXmlSpecifiedAttrs(@NonNull AttributeSet attrs) { - return attrs.getAttributeValue(SkinConfig.SKIN_XML_NAMESPACE, SkinConfig.SUPPORTED_ATTR_SKIN_LIST); - } - - private void parseAndSaveSkinAttr(AttributeSet attrs, View view) { - String specifiedAttrs = getXmlSpecifiedAttrs(attrs); - String[] specifiedAttrsList = null; - if (specifiedAttrs != null && specifiedAttrs.trim().length() > 0) { - specifiedAttrsList = specifiedAttrs.split("\\|"); - } - HashMap viewAttrs = SkinAttributeParser.parseSkinAttr(attrs, view, specifiedAttrsList); - if (viewAttrs == null || viewAttrs.size() == 0) { - return; - } - - //设置view的皮肤属性 - SkinManager.get().deployViewSkinAttrs(view, viewAttrs); - //save view attribute - SkinManager.get().saveSkinView(view, viewAttrs); - } - - //在低版本系统中会出inflaterContext为空的问题, 因此需要处理inflaterContext为空的情况 - private void assertInflaterContext(LayoutInflater inflater, Context context) { - Context inflaterContext = inflater.getContext(); - if (inflaterContext == null) { - ReflectUtils.setField(inflater, "mContext", context); - } - - - //设置mConstructorArgs的第一个参数context - Object[] constructorArgs = (Object[]) ReflectUtils.getField(inflater, "mConstructorArgs"); - if (null == constructorArgs || constructorArgs.length < 2) { - //异常,一般不会发生 - constructorArgs = new Object[2]; - ReflectUtils.setField(inflater, "mConstructorArgs", constructorArgs); - } - - //如果mConstructorArgs的第一个参数为空,则设置为mContext - if (null == constructorArgs[0]) { - constructorArgs[0] = inflater.getContext(); - } - } -} diff --git a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/SkinManager.java b/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/SkinManager.java deleted file mode 100644 index 3a6c190..0000000 --- a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/SkinManager.java +++ /dev/null @@ -1,256 +0,0 @@ -package com.wind.me.xskinloader; - -import android.content.Context; -import android.content.pm.PackageInfo; -import android.content.res.Resources; -import android.support.annotation.ColorRes; -import android.support.annotation.MainThread; -import android.support.annotation.Nullable; -import android.text.TextUtils; -import android.view.View; -import android.view.Window; - -import com.wind.me.xskinloader.entity.SkinAttr; -import com.wind.me.xskinloader.entity.SkinConfig; -import com.wind.me.xskinloader.impl.SkinResourceManagerImpl; -import com.wind.me.xskinloader.parser.SkinAttributeParser; -import com.wind.me.xskinloader.skinInterface.ISkinResDeployer; -import com.wind.me.xskinloader.skinInterface.ISkinResourceManager; -import com.wind.me.xskinloader.pluginLoader.PluginLoadUtils; - -import java.io.File; -import java.util.HashMap; -import java.util.Iterator; -import java.util.Map; -import java.util.WeakHashMap; - -public class SkinManager { - - private static final String TAG = SkinManager.class.getSimpleName(); - private static SkinManager sInstance; - private Context mContext; - private String mPluginSkinPath; - private ISkinResourceManager mSkinResourceManager; - - //使用这个map保存所有需要换肤的view和其对应的换肤属性及资源 - //使用WeakHashMap两个作用,1.避免内存泄漏,2.避免重复的view被添加 - //使用HashMap存SkinAttr,为了避免同一个属性值存了两次 - private WeakHashMap> mSkinAttrMap = new WeakHashMap<>(); - - @MainThread - public static SkinManager get() { - if (sInstance == null) { - sInstance = new SkinManager(); - } - return sInstance; - } - - //在Application的onCreate中初始化 - @MainThread - public void init(Context context) { - mContext = context.getApplicationContext(); - mSkinResourceManager = new SkinResourceManagerImpl(mContext, null, null); - load(); - } - - public void restoreToDefaultSkin() { - SkinConfig.saveSkinPath(mContext, null); - mSkinResourceManager.setPluginResourcesAndPkgName(null, null); - notifySkinChanged(); - } - - /** - * 加载已经用户默认设置的皮肤资源 - */ - public void load() { - String skinApkPath = SkinConfig.getCustomSkinPath(mContext); - if (TextUtils.isEmpty(skinApkPath)) { - restoreToDefaultSkin(); - } else { - loadNewSkin(skinApkPath); - } - } - - /** - * 加载新皮肤 - * - * @param skinApkPath 新皮肤路径 - * @return true 加载新皮肤成功 false 加载失败 - */ - public boolean loadNewSkin(String skinApkPath) { - return doNewSkinLoad(skinApkPath); - } - - public void setTextViewColor(View view, int resId) { - setSkinViewResource(view, SkinResDeployerFactory.TEXT_COLOR, resId); - } - - public void setHintTextColor(View view, int resId) { - setSkinViewResource(view, SkinResDeployerFactory.TEXT_COLOR_HINT, resId); - } - - public void setViewBackground(View view, int resId) { - setSkinViewResource(view, SkinResDeployerFactory.BACKGROUND, resId); - } - - public void setImageDrawable(View view, int resId) { - setSkinViewResource(view, SkinResDeployerFactory.IMAGE_SRC, resId); - } - - public void setListViewSelector(View view, int resId) { - setSkinViewResource(view, SkinResDeployerFactory.LIST_SELECTOR, resId); - } - - public void setListViewDivider(View view, int resId) { - setSkinViewResource(view, SkinResDeployerFactory.DIVIDER, resId); - } - - public void setWindowStatusBarColor(Window window, @ColorRes int resId) { - View decorView = window.getDecorView(); - setSkinViewResource(decorView, SkinResDeployerFactory.ACTIVITY_STATUS_BAR_COLOR, resId); - } - - public void setProgressBarIndeterminateDrawable(View view, int resId) { - setSkinViewResource(view, SkinResDeployerFactory.PROGRESSBAR_INDETERMINATE_DRAWABLE, resId); - } - - /** - * 设置可以换肤的view的属性 - * - * @param view 设置的view - * @param attrName 这个取值只能是 {@link SkinResDeployerFactory#BACKGROUND} {@link SkinResDeployerFactory#DIVIDER} {@link SkinResDeployerFactory#TEXT_COLOR} - * {@link SkinResDeployerFactory#LIST_SELECTOR} {@link SkinResDeployerFactory#IMAGE_SRC} 等等 - * @param resId 资源id - * - */ - @MainThread - public void setSkinViewResource(View view, String attrName, int resId) { - if (TextUtils.isEmpty(attrName)) { - return; - } - - SkinAttr attr = SkinAttributeParser.parseSkinAttr(view.getContext(), attrName, resId); - if (attr != null) { - doSkinAttrsDeploying(view, attr); - saveSkinView(view, attr); - } - } - - private boolean doNewSkinLoad(String skinApkPath) { - if (TextUtils.isEmpty(skinApkPath)) { - return false; - } - - File file = new File(skinApkPath); - if (!file.exists()) { - return false; - } - - PackageInfo packageInfo = PluginLoadUtils.getInstance(mContext).getPackageInfo(skinApkPath); - Resources pluginResources = PluginLoadUtils.getInstance(mContext).getPluginResources(skinApkPath); - if (packageInfo == null || pluginResources == null) { - return false; - } - String skinPackageName = packageInfo.packageName; - - if (TextUtils.isEmpty(skinPackageName)) { - return false; - } - - mSkinResourceManager.setPluginResourcesAndPkgName(pluginResources, skinPackageName); - - SkinConfig.saveSkinPath(mContext, skinApkPath); - - mPluginSkinPath = skinApkPath; - - notifySkinChanged(); - return true; - } - - //将View保存到被监听的view列表中,使得在换肤时能够及时被更新 - void saveSkinView(View view, HashMap viewAttrs) { - if (view == null || viewAttrs == null || viewAttrs.size() == 0) { - return; - } - HashMap originalSkinAttr = mSkinAttrMap.get(view); - if (originalSkinAttr != null && originalSkinAttr.size() > 0) { - originalSkinAttr.putAll(viewAttrs); - mSkinAttrMap.put(view, originalSkinAttr); - } else { - mSkinAttrMap.put(view, viewAttrs); - } - } - - private void saveSkinView(View view, SkinAttr viewAttr) { - if (view == null || viewAttr == null) { - return; - } - HashMap viewAttrs = new HashMap<>(); - viewAttrs.put(viewAttr.attrName, viewAttr); - saveSkinView(view, viewAttrs); - } - - public void removeObservableView(View view) { - mSkinAttrMap.remove(view); - } - - public void clear() { - mSkinAttrMap.clear(); - } - - //更换皮肤时,通知view更换资源 - private void notifySkinChanged() { - View view; - HashMap viewAttrs; - Iterator iter = mSkinAttrMap.entrySet().iterator(); - while (iter.hasNext()) { - Map.Entry entry = (Map.Entry) iter.next(); - view = (View) entry.getKey(); - viewAttrs = (HashMap) entry.getValue(); - if (view != null) { - deployViewSkinAttrs(view, viewAttrs); - } - } - } - - void deployViewSkinAttrs(@Nullable View view, @Nullable HashMap viewAttrs) { - if (view == null || viewAttrs == null || viewAttrs.size() == 0) { - return; - } - Iterator iter = viewAttrs.entrySet().iterator(); - while (iter.hasNext()) { - Map.Entry entry = (Map.Entry) iter.next(); - SkinAttr attr = (SkinAttr) entry.getValue(); - doSkinAttrsDeploying(view, attr); - } - } - - //将新皮肤的属性部署到view上 - private void doSkinAttrsDeploying(@Nullable View view, @Nullable SkinAttr skinAttr) { - ISkinResDeployer deployer = SkinResDeployerFactory.of(skinAttr); - if (deployer != null) { - deployer.deploy(view, skinAttr, mSkinResourceManager); - } - } - - public String getCurrentSkinPackageName() { - return mSkinResourceManager.getPkgName(); - } - - public Resources getPlugintResources() { - return mSkinResourceManager.getPluginResource(); - } - - public boolean isUsingDefaultSkin() { - return getPlugintResources() == null; - } - - public String getCurrentSkinPath() { - return mPluginSkinPath; - } - - public int getSkinViewMapSize() { - return mSkinAttrMap.size(); - } - -} \ No newline at end of file diff --git a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/SkinResDeployerFactory.java b/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/SkinResDeployerFactory.java deleted file mode 100644 index 23d1546..0000000 --- a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/SkinResDeployerFactory.java +++ /dev/null @@ -1,83 +0,0 @@ -package com.wind.me.xskinloader; - -import android.text.TextUtils; - -import com.wind.me.xskinloader.entity.SkinAttr; -import com.wind.me.xskinloader.skinInterface.ISkinResDeployer; -import com.wind.me.xskinloader.skinDeployer.ActivityStatusBarColorResDeployer; -import com.wind.me.xskinloader.skinDeployer.BackgroundResDeployer; -import com.wind.me.xskinloader.skinDeployer.ImageDrawableResDeployer; -import com.wind.me.xskinloader.skinDeployer.ListViewDividerResDeployer; -import com.wind.me.xskinloader.skinDeployer.ListViewSelectorResDeployer; -import com.wind.me.xskinloader.skinDeployer.ProgressBarIndeterminateDrawableDeployer; -import com.wind.me.xskinloader.skinDeployer.TextColorHintResDeployer; -import com.wind.me.xskinloader.skinDeployer.TextColorResDeployer; - -import java.util.HashMap; -import java.util.Map; - -/** - * Created by Windy on 2018/1/10. - */ - -public class SkinResDeployerFactory { - - public static final String BACKGROUND = "background"; - public static final String IMAGE_SRC = "src"; - public static final String TEXT_COLOR = "textColor"; - public static final String TEXT_COLOR_HINT = "textColorHint"; - public static final String LIST_SELECTOR = "listSelector"; - public static final String DIVIDER = "divider"; - - public static final String ACTIVITY_STATUS_BAR_COLOR = "statusBarColor"; - public static final String PROGRESSBAR_INDETERMINATE_DRAWABLE = "indeterminateDrawable"; - - - //存放支持的换肤属性和对应的处理器 - private static Map sSupportedSkinDeployerMap = new HashMap(); - - //静态注册支持的属性和处理器 - static { - registerDeployer(BACKGROUND, new BackgroundResDeployer()); - registerDeployer(IMAGE_SRC, new ImageDrawableResDeployer()); - registerDeployer(TEXT_COLOR, new TextColorResDeployer()); - registerDeployer(TEXT_COLOR_HINT, new TextColorHintResDeployer()); - registerDeployer(LIST_SELECTOR, new ListViewSelectorResDeployer()); - registerDeployer(DIVIDER, new ListViewDividerResDeployer()); - registerDeployer(ACTIVITY_STATUS_BAR_COLOR, new ActivityStatusBarColorResDeployer()); - registerDeployer(PROGRESSBAR_INDETERMINATE_DRAWABLE, new ProgressBarIndeterminateDrawableDeployer()); - } - - public static void registerDeployer(String attrName, ISkinResDeployer skinResDeployer) { - if (TextUtils.isEmpty(attrName) || null == skinResDeployer) { - return; - } - if (sSupportedSkinDeployerMap.containsKey(attrName)) { - throw new IllegalArgumentException("The attrName has been registed, please rename it"); - } - sSupportedSkinDeployerMap.put(attrName, skinResDeployer); - } - - public static ISkinResDeployer of(SkinAttr attr) { - if (attr == null) { - return null; - } - return of(attr.attrName); - } - - public static ISkinResDeployer of(String attrName) { - if (TextUtils.isEmpty(attrName)) { - return null; - } - return sSupportedSkinDeployerMap.get(attrName); - } - - public static boolean isSupportedAttr(String attrName) { - return of(attrName) != null; - } - - public static boolean isSupportedAttr(SkinAttr attr) { - return of(attr) != null; - } - -} diff --git a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/StyleParserFactory.java b/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/StyleParserFactory.java deleted file mode 100644 index 998be28..0000000 --- a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/StyleParserFactory.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.wind.me.xskinloader; - -import android.util.AttributeSet; -import android.view.View; - -import com.wind.me.xskinloader.entity.SkinAttr; -import com.wind.me.xskinloader.parser.ProgressBarIndeterminateDrawableStyleParser; -import com.wind.me.xskinloader.parser.TextViewTextColorStyleParser; -import com.wind.me.xskinloader.skinInterface.ISkinStyleParser; - -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -/** - * Created by Windy on 2018/2/10. - */ - -public class StyleParserFactory { - private static List sStyleParserArray = new ArrayList<>(); - - static { - addStyleParser(new TextViewTextColorStyleParser()); - addStyleParser(new ProgressBarIndeterminateDrawableStyleParser()); - } - - public static void addStyleParser(ISkinStyleParser parser) { - if (!sStyleParserArray.contains(parser)) { - sStyleParserArray.add(parser); - } - } - - public static void parseStyle(View view, AttributeSet attrs, Map viewAttrs, String[] specifiedAttrList) { - for (ISkinStyleParser parser : sStyleParserArray) { - parser.parseXmlStyle(view, attrs, viewAttrs, specifiedAttrList); - } - } - -} diff --git a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/entity/SkinAttr.java b/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/entity/SkinAttr.java deleted file mode 100644 index 70c7ded..0000000 --- a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/entity/SkinAttr.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.wind.me.xskinloader.entity; - -public class SkinAttr { - /*** - * 对应View的属性 - */ - public String attrName; - - /*** - * 属性值对应的reference id值,类似R.color.XX - */ - public int attrValueRefId; - - /*** - * 属性值refrence id对应的名称,如R.color.XX,则此值为"XX" - */ - public String attrValueRefName; - - /*** - * 属性值refrence id对应的类型,如R.color.XX,则此值为color - */ - public String attrValueTypeName; - - public SkinAttr(String attrName, int attrValueRefId, String attrValueRefName, String attrValueTypeName) { - this.attrName = attrName; - this.attrValueRefId = attrValueRefId; - this.attrValueRefName = attrValueRefName; - this.attrValueTypeName = attrValueTypeName; - } - - @Override - public String toString() { - return "SkinAttr \n[\nattrName=" + attrName + ", \n" - + "attrValueRefId=" + attrValueRefId + ", \n" - + "attrValueRefName=" + attrValueRefName + ", \n" - + "attrValueTypeName=" + attrValueTypeName - + "\n]"; - } -} diff --git a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/entity/SkinConfig.java b/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/entity/SkinConfig.java deleted file mode 100644 index 468ab10..0000000 --- a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/entity/SkinConfig.java +++ /dev/null @@ -1,72 +0,0 @@ -package com.wind.me.xskinloader.entity; - -import android.content.Context; -import android.content.SharedPreferences; -import android.support.annotation.NonNull; -import android.support.annotation.Nullable; - -public class SkinConfig { - /*** - * 支持的命名空间 - */ - public static final String SKIN_XML_NAMESPACE = "http://schemas.android.com/android/skin"; - - /**界面元素支持换肤的属性*/ - public static final String ATTR_SKIN_ENABLE = "enable"; - public static final String SUPPORTED_ATTR_SKIN_LIST = "attrs"; - - public static final String SKIN_APK_SUFFIX = ".skin"; - public static final String PREF_CUSTOM_SKIN_PATH = "music_skin_custom_path"; - - public static final boolean DEBUG = false; - - - /** - * 属性值对应的类型是color - */ - public static final String RES_TYPE_NAME_COLOR = "color"; - - /** - * 属性值对应的类型是drawable - */ - public static final String RES_TYPE_NAME_DRAWABLE = "drawable"; - - public static final String PREFERENCE_NAME = "music_skin_pref"; - - - public static String getCustomSkinPath(Context context) { - return getString(context, PREF_CUSTOM_SKIN_PATH, null); - } - - public static void saveSkinPath(Context context, String path) { - putString(context, PREF_CUSTOM_SKIN_PATH, path); - } - - public static boolean isDefaultSkin(Context context) { - return getCustomSkinPath(context) == null; - } - - public static boolean putString(Context context, String key, String value) { - SharedPreferences settings = context.getSharedPreferences(PREFERENCE_NAME, Context.MODE_PRIVATE); - SharedPreferences.Editor editor = settings.edit(); - editor.putString(key, value); - return editor.commit(); - } - - public static String getString(Context context, String key, String defaultValue) { - SharedPreferences settings = context.getSharedPreferences(PREFERENCE_NAME, Context.MODE_PRIVATE); - return settings.getString(key, defaultValue); - } - - public static boolean isCurrentAttrSpecified(@NonNull String attr, @Nullable String[] attrList) { - if (attrList == null || attrList.length == 0) { - return true; - } - for (String a : attrList) { - if (a != null && (a.trim()).equals(attr)) { - return true; - } - } - return false; - } -} diff --git a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/impl/SkinResourceManagerImpl.java b/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/impl/SkinResourceManagerImpl.java deleted file mode 100644 index 58e38af..0000000 --- a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/impl/SkinResourceManagerImpl.java +++ /dev/null @@ -1,141 +0,0 @@ -package com.wind.me.xskinloader.impl; - -import android.content.Context; -import android.content.res.ColorStateList; -import android.content.res.Resources; -import android.graphics.drawable.Drawable; -import android.util.Log; - -import com.wind.me.xskinloader.entity.SkinConfig; -import com.wind.me.xskinloader.skinInterface.ISkinResourceManager; - - -/** - * Created by Windy on 2018/1/10. - */ - -public class SkinResourceManagerImpl implements ISkinResourceManager { - - private static final String TAG = "SkinResourceManagerImpl"; - - private Resources mDefaultResources; - private String mSkinPluginPackageName; - private Resources mSkinPluginResources; - - public SkinResourceManagerImpl(Context context, String pkgName, Resources resources) { - mDefaultResources = context.getResources(); - mSkinPluginPackageName = pkgName; - mSkinPluginResources = resources; - } - - @Override - public String getPkgName() { - return mSkinPluginPackageName; - } - - @Override - public Resources getPluginResource() { - return mSkinPluginResources; - } - - @Override - public void setPluginResourcesAndPkgName(Resources resources, String pkgName) { - mSkinPluginResources = resources; - mSkinPluginPackageName = pkgName; - } - - @Override - public int getColor(int resId) throws Resources.NotFoundException { - int originColor = mDefaultResources.getColor(resId); - if (mSkinPluginResources == null) { - return originColor; - } - - String resName = mDefaultResources.getResourceEntryName(resId); - - int trueResId = mSkinPluginResources.getIdentifier(resName, SkinConfig.RES_TYPE_NAME_COLOR, mSkinPluginPackageName); - int trueColor = 0; - - try { - trueColor = mSkinPluginResources.getColor(trueResId); - } catch (Resources.NotFoundException e) { - e.printStackTrace(); - trueColor = originColor; - } - - return trueColor; - } - - @Override - public ColorStateList getColorStateList(int resId) throws Resources.NotFoundException { - boolean isExtendSkin = true; - - if (mSkinPluginResources == null) { - isExtendSkin = false; - } - - String resName = mDefaultResources.getResourceEntryName(resId); - if (isExtendSkin) { - int trueResId = mSkinPluginResources.getIdentifier(resName, SkinConfig.RES_TYPE_NAME_COLOR, mSkinPluginPackageName); - ColorStateList trueColorList = null; - if (trueResId == 0) { // 如果皮肤包没有复写该资源,但是需要判断是否是ColorStateList - try { - ColorStateList originColorList = mDefaultResources.getColorStateList(resId); - return originColorList; - } catch (Resources.NotFoundException e) { - e.printStackTrace(); - if (SkinConfig.DEBUG) { - Log.d(TAG, "resName = " + resName + " NotFoundException : " + e.getMessage()); - } - } - } else { - try { - trueColorList = mSkinPluginResources.getColorStateList(trueResId); - if (SkinConfig.DEBUG) { - Log.d(TAG, "getColorStateList the trueColorList is = " + trueColorList); - } - return trueColorList; - } catch (Resources.NotFoundException e) { - e.printStackTrace(); - Log.e(TAG, "resName = " + resName + " NotFoundException :" + e.getMessage()); - } - } - } else { - try { - ColorStateList originColorList = mDefaultResources.getColorStateList(resId); - return originColorList; - } catch (Resources.NotFoundException e) { - e.printStackTrace(); - Log.e(TAG, "resName = " + resName + " NotFoundException :" + e.getMessage()); - } - } - - - int[][] states = new int[1][1]; - return new ColorStateList(states, new int[]{mDefaultResources.getColor(resId)}); - } - - @Override - public Drawable getDrawable(int resId) throws Resources.NotFoundException { - Drawable originDrawable = mDefaultResources.getDrawable(resId); - if (mSkinPluginResources == null) { - return originDrawable; - } - String resName = mDefaultResources.getResourceEntryName(resId); - - int trueResId = mSkinPluginResources.getIdentifier(resName, SkinConfig.RES_TYPE_NAME_DRAWABLE, mSkinPluginPackageName); - - Drawable trueDrawable; - try { - if (android.os.Build.VERSION.SDK_INT < 22) { - trueDrawable = mSkinPluginResources.getDrawable(trueResId); - } else { - trueDrawable = mSkinPluginResources.getDrawable(trueResId, null); - } - } catch (Resources.NotFoundException e) { - e.printStackTrace(); - trueDrawable = originDrawable; - } - return trueDrawable; - } -} diff --git a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/parser/ProgressBarIndeterminateDrawableStyleParser.java b/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/parser/ProgressBarIndeterminateDrawableStyleParser.java deleted file mode 100644 index 4c308b6..0000000 --- a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/parser/ProgressBarIndeterminateDrawableStyleParser.java +++ /dev/null @@ -1,71 +0,0 @@ -package com.wind.me.xskinloader.parser; - -import android.content.Context; -import android.content.res.TypedArray; -import android.util.AttributeSet; -import android.view.View; -import android.widget.ProgressBar; - -import com.wind.me.xskinloader.SkinResDeployerFactory; -import com.wind.me.xskinloader.entity.SkinAttr; -import com.wind.me.xskinloader.entity.SkinConfig; -import com.wind.me.xskinloader.skinInterface.ISkinStyleParser; -import com.wind.me.xskinloader.util.ReflectUtils; - -import java.util.Map; - -/** - * 解析Xml中的style属性,使支持style中定义的ProgressBar的indeterminateDrawable属性支持换肤 - * Created by Windy on 2018/1/23. - */ - -public class ProgressBarIndeterminateDrawableStyleParser implements ISkinStyleParser{ - - private static int[] sProgressBarStyleList; - private static int sProgressBarIndeterminateDrawableIndex; - - @Override - public void parseXmlStyle(View view, AttributeSet attrs, Map viewAttrs, String[] specifiedAttrList) { - if (!ProgressBar.class.isAssignableFrom(view.getClass())) { - return; - } - Context context = view.getContext(); - int[] progressBarStyleList = getProgressBarStyleable(); - int progressBarIndeterminateDrawableIndex = getProgressBarIndeterminateDrawableIndex(); - - final TypedArray a = context.obtainStyledAttributes(attrs, progressBarStyleList, 0, 0); - - if (a != null) { - int n = a.getIndexCount(); - for (int j = 0; j < n; j++) { - int attr = a.getIndex(j); - if (attr == progressBarIndeterminateDrawableIndex && - SkinConfig.isCurrentAttrSpecified(SkinResDeployerFactory.PROGRESSBAR_INDETERMINATE_DRAWABLE, specifiedAttrList)) { - int drawableResId = a.getResourceId(attr, -1); - SkinAttr skinAttr = SkinAttributeParser.parseSkinAttr(context, SkinResDeployerFactory.PROGRESSBAR_INDETERMINATE_DRAWABLE, drawableResId); - if (skinAttr != null) { - viewAttrs.put(skinAttr.attrName, skinAttr); - } - } - } - a.recycle(); - } - } - - private static int[] getProgressBarStyleable() { - if (sProgressBarStyleList == null || sProgressBarStyleList.length == 0) { - sProgressBarStyleList = (int[])ReflectUtils.getField("com.android.internal.R$styleable", "ProgressBar"); - } - return sProgressBarStyleList; - } - - private static int getProgressBarIndeterminateDrawableIndex() { - if (sProgressBarIndeterminateDrawableIndex == 0) { - Object o = ReflectUtils.getField("com.android.internal.R$styleable", "ProgressBar_indeterminateDrawable"); - if (o != null) { - sProgressBarIndeterminateDrawableIndex = (int) o; - } - } - return sProgressBarIndeterminateDrawableIndex; - } -} diff --git a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/parser/SkinAttributeParser.java b/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/parser/SkinAttributeParser.java deleted file mode 100644 index 45c6214..0000000 --- a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/parser/SkinAttributeParser.java +++ /dev/null @@ -1,117 +0,0 @@ -package com.wind.me.xskinloader.parser; - -import android.content.Context; -import android.content.res.Resources; -import android.util.AttributeSet; -import android.util.Log; -import android.view.View; -import android.widget.ProgressBar; -import android.widget.TextView; - -import com.wind.me.xskinloader.StyleParserFactory; -import com.wind.me.xskinloader.entity.SkinAttr; -import com.wind.me.xskinloader.entity.SkinConfig; -import com.wind.me.xskinloader.SkinResDeployerFactory; - -import java.util.HashMap; - - -/** - * 解析xml中的换肤属性 - * Created by Windy on 2018/1/11. - */ - -public class SkinAttributeParser { - - private static final String TAG = SkinAttributeParser.class.getSimpleName(); - - public static HashMap parseSkinAttr(AttributeSet attrs, View view, String[] specifiedAttrList) { - if (view == null) { - return null; - } - //使用hashmap避免属性重复添加 - HashMap viewAttrs = new HashMap<>(); - Context context = view.getContext(); - - //先处理style类型, 避免布局中定义的属性被style中定义的属性覆盖 - for (int i = 0; i < attrs.getAttributeCount(); i++) { - String attrName = attrs.getAttributeName(i); - //处理控件中设置的style属性 - if ("style".equals(attrName)) { - StyleParserFactory.parseStyle(view, attrs, viewAttrs, specifiedAttrList); - } - } - - for (int i = 0; i < attrs.getAttributeCount(); i++) { - String attrName = attrs.getAttributeName(i); - String attrValue = attrs.getAttributeValue(i); - if (SkinConfig.DEBUG) { - Log.d(TAG, " parseSkinAttr attrName=" + attrName + " attrValue=" + attrValue + " view=" + view.getClass().getSimpleName()); - } - - if (!SkinResDeployerFactory.isSupportedAttr(attrName)) { - continue; - } - //当前属性是否在xml中使用skin:attr="textColor|background"方式来指定,指定了,只替换指定属性,未指定替换全部 - if (!SkinConfig.isCurrentAttrSpecified(attrName, specifiedAttrList)) { - continue; - } - - //attrName=textColor attrValue=@2131492918 view=TextView - if (!attrValue.startsWith("@")) { - continue; - } - - SkinAttr skinAttr = null; - try { - skinAttr = getSkinAttrFromId(context, attrName, attrValue); - } catch (NumberFormatException ex) { - Log.e(TAG, "parseSkinAttr() error happened", ex); - skinAttr = getSkinAttrBySplit(context, attrName, attrValue); - } catch (Resources.NotFoundException ex) { - Log.e(TAG, "parseSkinAttr() error happened", ex); - } - - if (skinAttr != null) { - viewAttrs.put(skinAttr.attrName, skinAttr); - } - } - return viewAttrs; - } - - public static SkinAttr parseSkinAttr(Context context, String attrName, int resId) { - if (context == null) { - return null; - } - SkinAttr skinAttr = null; - try { - String attrValueName = context.getResources().getResourceEntryName(resId); - String attrValueType = context.getResources().getResourceTypeName(resId); - skinAttr = new SkinAttr(attrName, resId, attrValueName, attrValueType); - } catch (Exception ex) { - Log.e(TAG, " parseSkinAttr--- error happened ", ex); - } - return skinAttr; - } - - private static SkinAttr getSkinAttrBySplit(Context context, String attrName, String attrValue) { - try { - int dividerIndex = attrValue.indexOf("/"); - String entryName = attrValue.substring(dividerIndex + 1, attrValue.length()); - String typeName = attrValue.substring(1, dividerIndex); - int id = context.getResources().getIdentifier(entryName, typeName, context.getPackageName()); - return new SkinAttr(attrName, id, entryName, typeName); - } catch (Resources.NotFoundException e) { - Log.e(TAG, "getSkinAttrBySplit error happened", e); - } - return null; - } - - private static SkinAttr getSkinAttrFromId(Context context, String attrName, String attrValue) { - int id = Integer.parseInt(attrValue.substring(1)); - if (id == 0) { - return null; - } - return parseSkinAttr(context, attrName, id); - } -} diff --git a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/parser/TextViewTextColorStyleParser.java b/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/parser/TextViewTextColorStyleParser.java deleted file mode 100644 index a0f60df..0000000 --- a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/parser/TextViewTextColorStyleParser.java +++ /dev/null @@ -1,70 +0,0 @@ -package com.wind.me.xskinloader.parser; - -import android.content.Context; -import android.content.res.TypedArray; -import android.util.AttributeSet; -import android.view.View; -import android.widget.TextView; - -import com.wind.me.xskinloader.entity.SkinAttr; -import com.wind.me.xskinloader.entity.SkinConfig; -import com.wind.me.xskinloader.SkinResDeployerFactory; -import com.wind.me.xskinloader.skinInterface.ISkinStyleParser; -import com.wind.me.xskinloader.util.ReflectUtils; - -import java.util.Map; - -/** - * 解析Xml中的style属性,使支持style中定义的TextView的textColor支持换肤 - * Created by Windy on 2018/1/23. - */ - -public class TextViewTextColorStyleParser implements ISkinStyleParser{ - - private static int[] sTextViewStyleList; - private static int sTextViewTextColorStyleIndex; - - @Override - public void parseXmlStyle(View view, AttributeSet attrs, Map viewAttrs, String[] specifiedAttrList) { - if (!TextView.class.isAssignableFrom(view.getClass())) { - return; - } - Context context = view.getContext(); - int[] textViewStyleable = getTextViewStyleableList(); - int textViewStyleableTextColor = getTextViewTextColorStyleableIndex(); - - TypedArray a = context.obtainStyledAttributes(attrs, textViewStyleable, 0, 0); - if (a != null) { - int n = a.getIndexCount(); - for (int j = 0; j < n; j++) { - int attr = a.getIndex(j); - if (attr == textViewStyleableTextColor && - SkinConfig.isCurrentAttrSpecified(SkinResDeployerFactory.TEXT_COLOR, specifiedAttrList)) { - int colorResId = a.getResourceId(attr, -1); - SkinAttr skinAttr = SkinAttributeParser.parseSkinAttr(context, SkinResDeployerFactory.TEXT_COLOR, colorResId); - if (skinAttr != null) { - viewAttrs.put(skinAttr.attrName, skinAttr); - } - } - } - a.recycle(); - } - } - - private static int[] getTextViewStyleableList() { - if (sTextViewStyleList == null || sTextViewStyleList.length == 0) { - sTextViewStyleList = (int[]) ReflectUtils.getField("com.android.internal.R$styleable", "TextView"); - } - return sTextViewStyleList; - } - - private static int getTextViewTextColorStyleableIndex() { - if (sTextViewTextColorStyleIndex == 0) { - Object o = ReflectUtils.getField("com.android.internal.R$styleable", "TextView_textColor"); - if (o != null) { - sTextViewTextColorStyleIndex = (int) o; - } - } - return sTextViewTextColorStyleIndex; - } -} diff --git a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/pluginLoader/PluginInfo.java b/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/pluginLoader/PluginInfo.java deleted file mode 100644 index 73071f5..0000000 --- a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/pluginLoader/PluginInfo.java +++ /dev/null @@ -1,116 +0,0 @@ -package com.wind.me.xskinloader.pluginLoader; - -import android.content.pm.PackageInfo; -import android.content.res.AssetManager; -import android.content.res.Resources; - -public class PluginInfo { - - private String filePath; - private transient ClassLoader classLoader; - private transient Resources resources; - private transient PackageInfo packageInfo; - private transient Resources.Theme theme; - - public PluginInfo(String localPath, ClassLoader pluginClassLoader, Resources pluginRes, - Resources.Theme pluginTheme, PackageInfo packageInfo) { - this.classLoader = pluginClassLoader; - this.resources = pluginRes; - this.theme = pluginTheme; - this.filePath = localPath; - this.packageInfo = packageInfo; - } - - public PluginInfo() { - } - - public PluginInfo(String localPath) { - this.filePath = localPath; - } - - public String getFilePath() { - return filePath; - } - - public void setFilePath(String filePath) { - this.filePath = filePath; - } - - public PackageInfo getPackageInfo() { - return packageInfo; - } - - public void setPackageInfo(PackageInfo packageInfo) { - this.packageInfo = packageInfo; - } - - public String getPackageName() { - if (packageInfo == null) { - return null; - } - return packageInfo.packageName; - } - - public Resources getResources() { - return resources; - } - - public void setResources(Resources resources) { - this.resources = resources; - } - - public void setTheme(int themeId) { - Resources.Theme theme = resources.newTheme(); - theme.applyStyle(themeId, true); - setTheme(theme); - } - - public void setTheme(Resources.Theme theme) { - this.theme = theme; - } - - public Resources.Theme getTheme() { - return theme; - } - - public ClassLoader getClassLoader() { - return classLoader; - } - - public void setClassLoader(ClassLoader classLoader) { - this.classLoader = classLoader; - } - - - @Override - public int hashCode() { - final int prime = 31; - int result = 1; - result = prime * result + ((filePath == null) ? 0 : filePath.hashCode()); - return result; - } - - @Override - public boolean equals(Object obj) { - if (this == obj) - return true; - if (obj == null) - return false; - if (getClass() != obj.getClass()) - return false; - PluginInfo other = (PluginInfo) obj; - if (filePath == null) { - if (other.filePath != null) - return false; - } else if (!filePath.equals(other.filePath)) - return false; - return true; - } - - @Override - public String toString() { - return super.toString() + "[ filePath=" + filePath + ", pkg=" + getPackageName() - + " ]"; - } - -} \ No newline at end of file diff --git a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/pluginLoader/PluginLoadUtils.java b/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/pluginLoader/PluginLoadUtils.java deleted file mode 100644 index 786ed7e..0000000 --- a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/pluginLoader/PluginLoadUtils.java +++ /dev/null @@ -1,181 +0,0 @@ -package com.wind.me.xskinloader.pluginLoader; - -import android.content.Context; -import android.content.pm.PackageInfo; -import android.content.pm.PackageManager; -import android.content.res.AssetManager; -import android.content.res.Resources; -import android.util.Log; - -import java.lang.reflect.Method; -import java.util.HashMap; -import java.util.Map; - -import dalvik.system.DexClassLoader; - -public class PluginLoadUtils { - - private Context mContext; - private final Map mPluginInfoHolder = new HashMap<>(); - private static PluginLoadUtils sInstance; - private static final String TAG = "PluginLoadUtils"; - - private PluginLoadUtils(Context context) { - mContext = context.getApplicationContext(); - } - - public static PluginLoadUtils getInstance(Context context) { - if (sInstance == null) { - synchronized (PluginLoadUtils.class) { - if (sInstance == null) { - sInstance = new PluginLoadUtils(context); - } - } - } - return sInstance; - } - - public static PluginLoadUtils getInstance() { - return sInstance; - } - - public PluginInfo install(String apkPath) { - PluginInfo pluginInfo = mPluginInfoHolder.get(apkPath); - if (pluginInfo != null) { - return pluginInfo; - } - - DexClassLoader dexClassLoader = createDexClassLoader(apkPath); - AssetManager assetManager = createAssetManager(apkPath); - Resources resources = createResources(assetManager); - Resources.Theme theme = null; - if (resources != null) { - theme = resources.newTheme(); -// theme.applyStyle(R.style.AppTheme, false); - } - PackageInfo packageInfo = createPackageInfo(apkPath); - - pluginInfo = new PluginInfo(apkPath, dexClassLoader, resources, theme, packageInfo); - mPluginInfoHolder.put(apkPath, pluginInfo); - return pluginInfo; - } - - public DexClassLoader getClassLoader(String apkPath) { - PluginInfo pluginInfo = mPluginInfoHolder.get(apkPath); - if (pluginInfo != null) { - ClassLoader loader = pluginInfo.getClassLoader(); - if (loader != null) { - return (DexClassLoader) loader; - } - } - return createDexClassLoader(apkPath); - } - - public PackageInfo getPackageInfo(String apkPath) { - PluginInfo pluginInfo = mPluginInfoHolder.get(apkPath); - if (pluginInfo != null) { - PackageInfo info = pluginInfo.getPackageInfo(); - if (info != null) { - return info; - } - } - return createPackageInfo(apkPath); - } - - public Resources getPluginResources(String apkPath) { - PluginInfo pluginInfo = mPluginInfoHolder.get(apkPath); - if (pluginInfo != null) { - Resources res = pluginInfo.getResources(); - if (res != null) { - return res; - } - } - return createResources(apkPath); - } - - public AssetManager getPluginAssets(String apkPath) { - PluginInfo pluginInfo = mPluginInfoHolder.get(apkPath); - if (pluginInfo != null) { - Resources resources = pluginInfo.getResources(); - if (resources != null) { - AssetManager assetManager = resources.getAssets(); - if (assetManager != null) { - return assetManager; - } - } - } - return createAssetManager(apkPath); - } - - /** - * 创建插件classloader - */ - private DexClassLoader createDexClassLoader(String dexPath) { - DexClassLoader loader = new DexClassLoader(dexPath, - mContext.getDir("dex", Context.MODE_PRIVATE).getAbsolutePath(), - null, - mContext.getClassLoader()); - return loader; - } - - /** - * 创建AssetManager对象 - */ - private AssetManager createAssetManager(String dexPath) { - try { - AssetManager assetManager = AssetManager.class.newInstance(); - Method addAssetPath = assetManager.getClass().getMethod("addAssetPath", String.class); - addAssetPath.invoke(assetManager, dexPath); - return assetManager; - } catch (Exception e) { - e.printStackTrace(); - return null; - } - } - - /** - * 创建Resource对象 - */ - @SuppressWarnings("deprecation") - private Resources createResources(AssetManager assetManager) { - if (assetManager == null) { - Log.e(TAG, " create Resources failed assetManager is NULL !! "); - return null; - } - Resources superRes = mContext.getResources(); - Resources resources = new Resources(assetManager, superRes.getDisplayMetrics(), superRes.getConfiguration()); - return resources; - } - - private Resources createResources(String dexPath) { - AssetManager assetManager = createAssetManager(dexPath); - if (assetManager != null) { - return createResources(assetManager); - } - return null; - } - - private PackageInfo createPackageInfo(String apkFilepath) { - PackageManager pm = mContext.getPackageManager(); - PackageInfo pkgInfo = null; - try { - pkgInfo = pm.getPackageArchiveInfo(apkFilepath, - PackageManager.GET_ACTIVITIES | - PackageManager.GET_SERVICES | - PackageManager.GET_META_DATA); - } catch (Exception e) { - e.printStackTrace(); - } - return pkgInfo; - } - - private Class loadClassByClassLoader(ClassLoader classLoader, String className) { - Class clazz = null; - try { - clazz = classLoader.loadClass(className); - } catch (ClassNotFoundException e) { - e.printStackTrace(); - } - return clazz; - } -} diff --git a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinDeployer/ActivityStatusBarColorResDeployer.java b/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinDeployer/ActivityStatusBarColorResDeployer.java deleted file mode 100644 index f26a896..0000000 --- a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinDeployer/ActivityStatusBarColorResDeployer.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.wind.me.xskinloader.skinDeployer; - -import android.os.Build; -import android.view.View; -import android.view.Window; - -import com.wind.me.xskinloader.entity.SkinAttr; -import com.wind.me.xskinloader.entity.SkinConfig; -import com.wind.me.xskinloader.skinInterface.ISkinResDeployer; -import com.wind.me.xskinloader.skinInterface.ISkinResourceManager; -import com.wind.me.xskinloader.util.ReflectUtils; - -/** - * Created by Windy on 2018/1/10. - */ - -public class ActivityStatusBarColorResDeployer implements ISkinResDeployer { - @Override - public void deploy(View view, SkinAttr skinAttr, ISkinResourceManager resource) { - //the view is the window's DecorView - Window window; - if (Build.VERSION.SDK_INT > Build.VERSION_CODES.M) { - //API23以上,DecorView独立成一个类,并持有mWindow对象 - window = (Window) ReflectUtils.getField(view, "mWindow"); - } else { - //API23以下,DecorView是PhoneWindow的内部类,隐式持有PhoneWindow对象 - window = ReflectUtils.getExternalField(view); - } - if (window == null) { - throw new IllegalArgumentException("view is not a DecorView, cannot get the window"); - } - if (SkinConfig.RES_TYPE_NAME_COLOR.equals(skinAttr.attrValueTypeName)) { -// window.setStatusBarColor(resource.getColor(skinAttr.attrValueRefId)); - } - } -} diff --git a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinDeployer/BackgroundResDeployer.java b/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinDeployer/BackgroundResDeployer.java deleted file mode 100644 index a16b302..0000000 --- a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinDeployer/BackgroundResDeployer.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.wind.me.xskinloader.skinDeployer; - -import android.graphics.drawable.Drawable; -import android.view.View; - -import com.wind.me.xskinloader.entity.SkinAttr; -import com.wind.me.xskinloader.entity.SkinConfig; -import com.wind.me.xskinloader.skinInterface.ISkinResDeployer; -import com.wind.me.xskinloader.skinInterface.ISkinResourceManager; - -/** - * Created by Windy on 2018/1/10. - */ - -public class BackgroundResDeployer implements ISkinResDeployer { - @Override - public void deploy(View view, SkinAttr skinAttr, ISkinResourceManager resource) { - if(SkinConfig.RES_TYPE_NAME_COLOR.equals(skinAttr.attrValueTypeName)){ - view.setBackgroundColor(resource.getColor(skinAttr.attrValueRefId)); - }else if(SkinConfig.RES_TYPE_NAME_DRAWABLE.equals(skinAttr.attrValueTypeName)){ - Drawable bg = resource.getDrawable(skinAttr.attrValueRefId); - view.setBackground(bg); - } - } -} diff --git a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinDeployer/ImageDrawableResDeployer.java b/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinDeployer/ImageDrawableResDeployer.java deleted file mode 100644 index d850daa..0000000 --- a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinDeployer/ImageDrawableResDeployer.java +++ /dev/null @@ -1,33 +0,0 @@ -package com.wind.me.xskinloader.skinDeployer; - -import android.graphics.drawable.ColorDrawable; -import android.graphics.drawable.Drawable; -import android.view.View; -import android.widget.ImageView; - -import com.wind.me.xskinloader.entity.SkinAttr; -import com.wind.me.xskinloader.entity.SkinConfig; -import com.wind.me.xskinloader.skinInterface.ISkinResDeployer; -import com.wind.me.xskinloader.skinInterface.ISkinResourceManager; - -/** - * Created by Windy on 2018/1/10. - */ - -public class ImageDrawableResDeployer implements ISkinResDeployer { - @Override - public void deploy(View view, SkinAttr skinAttr, ISkinResourceManager resource) { - if (!(view instanceof ImageView)) { - return; - } - Drawable drawable = null; - if (SkinConfig.RES_TYPE_NAME_COLOR.equals(skinAttr.attrValueTypeName)) { - drawable = new ColorDrawable(resource.getColor(skinAttr.attrValueRefId)); - } else if (SkinConfig.RES_TYPE_NAME_DRAWABLE.equals(skinAttr.attrValueTypeName)) { - drawable = resource.getDrawable(skinAttr.attrValueRefId); - } - if (drawable != null) { - ((ImageView) view).setImageDrawable(drawable); - } - } -} diff --git a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinDeployer/ListViewDividerResDeployer.java b/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinDeployer/ListViewDividerResDeployer.java deleted file mode 100644 index a7884fd..0000000 --- a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinDeployer/ListViewDividerResDeployer.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.wind.me.xskinloader.skinDeployer; - -import android.graphics.drawable.ColorDrawable; -import android.view.View; -import android.widget.ListView; - -import com.wind.me.xskinloader.entity.SkinAttr; -import com.wind.me.xskinloader.entity.SkinConfig; -import com.wind.me.xskinloader.skinInterface.ISkinResDeployer; -import com.wind.me.xskinloader.skinInterface.ISkinResourceManager; - -/*** - * ListView divider属性的换肤支持(android:divider) - * Created by Windy on 2018/1/11. - */ - -public class ListViewDividerResDeployer implements ISkinResDeployer { - - @Override - public void deploy(View view, SkinAttr skinAttr, ISkinResourceManager resource) { - if (!(view instanceof ListView)) { - return; - } - ListView listView = (ListView) view; - if (SkinConfig.RES_TYPE_NAME_COLOR.equals(skinAttr.attrValueTypeName)) { - int color = resource.getColor(skinAttr.attrValueRefId); - listView.setDivider(new ColorDrawable(color)); - } else if (SkinConfig.RES_TYPE_NAME_DRAWABLE.equals(skinAttr.attrValueTypeName)) { - listView.setDivider(resource.getDrawable(skinAttr.attrValueRefId)); - } - } -} diff --git a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinDeployer/ListViewSelectorResDeployer.java b/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinDeployer/ListViewSelectorResDeployer.java deleted file mode 100644 index a32f325..0000000 --- a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinDeployer/ListViewSelectorResDeployer.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.wind.me.xskinloader.skinDeployer; - -import android.graphics.drawable.ColorDrawable; -import android.graphics.drawable.Drawable; -import android.view.View; -import android.widget.AbsListView; - -import com.wind.me.xskinloader.entity.SkinAttr; -import com.wind.me.xskinloader.entity.SkinConfig; -import com.wind.me.xskinloader.skinInterface.ISkinResDeployer; -import com.wind.me.xskinloader.skinInterface.ISkinResourceManager; - -/** - * Created by Windy on 2018/1/11. - */ - -public class ListViewSelectorResDeployer implements ISkinResDeployer { - @Override - public void deploy(View view, SkinAttr skinAttr, ISkinResourceManager resource) { - if (!(view instanceof AbsListView)) { - return; - } - Drawable drawable = null; - - if (SkinConfig.RES_TYPE_NAME_COLOR.equals(skinAttr.attrValueTypeName)) { - drawable = new ColorDrawable(resource.getColor(skinAttr.attrValueRefId)); - } else if (SkinConfig.RES_TYPE_NAME_DRAWABLE.equals(skinAttr.attrValueTypeName)) { - drawable = resource.getDrawable(skinAttr.attrValueRefId); - } - if (drawable != null) { - ((AbsListView) view).setSelector(drawable); - } - } -} diff --git a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinDeployer/ProgressBarIndeterminateDrawableDeployer.java b/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinDeployer/ProgressBarIndeterminateDrawableDeployer.java deleted file mode 100644 index 4933f7d..0000000 --- a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinDeployer/ProgressBarIndeterminateDrawableDeployer.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.wind.me.xskinloader.skinDeployer; - -import android.graphics.drawable.ColorDrawable; -import android.graphics.drawable.Drawable; -import android.view.View; -import android.widget.ProgressBar; - -import com.wind.me.xskinloader.entity.SkinAttr; -import com.wind.me.xskinloader.entity.SkinConfig; -import com.wind.me.xskinloader.skinInterface.ISkinResDeployer; -import com.wind.me.xskinloader.skinInterface.ISkinResourceManager; - -/** - * Created by Windy on 2018/1/23. - */ - -public class ProgressBarIndeterminateDrawableDeployer implements ISkinResDeployer { - @Override - public void deploy(View view, SkinAttr skinAttr, ISkinResourceManager resource) { - if (!(view instanceof ProgressBar)) { - return; - } - - ProgressBar pb = (ProgressBar) view; - Drawable drawable = null; - if (SkinConfig.RES_TYPE_NAME_COLOR.equals(skinAttr.attrValueTypeName)) { - drawable = new ColorDrawable(resource.getColor(skinAttr.attrValueRefId)); - } else if (SkinConfig.RES_TYPE_NAME_DRAWABLE.equals(skinAttr.attrValueTypeName)) { - drawable = resource.getDrawable(skinAttr.attrValueRefId); - } - if (drawable != null) { - pb.setIndeterminateDrawable(drawable); - } - } -} diff --git a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinDeployer/TextColorHintResDeployer.java b/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinDeployer/TextColorHintResDeployer.java deleted file mode 100644 index 108f3f7..0000000 --- a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinDeployer/TextColorHintResDeployer.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.wind.me.xskinloader.skinDeployer; - -import android.content.res.ColorStateList; -import android.view.View; -import android.widget.TextView; - -import com.wind.me.xskinloader.entity.SkinAttr; -import com.wind.me.xskinloader.entity.SkinConfig; -import com.wind.me.xskinloader.skinInterface.ISkinResDeployer; -import com.wind.me.xskinloader.skinInterface.ISkinResourceManager; - -/** - * Created by Windy on 2018/1/11. - * 文字提示颜色属性的换肤支持(android:textColorHint) - */ -public class TextColorHintResDeployer implements ISkinResDeployer { - @Override - public void deploy(View view, SkinAttr skinAttr, ISkinResourceManager resource) { - if (!(view instanceof TextView)) { - return; - } - - TextView tv = (TextView) view; - if (SkinConfig.RES_TYPE_NAME_COLOR.equals(skinAttr.attrValueTypeName)) { - ColorStateList textHintColor = resource.getColorStateList(skinAttr.attrValueRefId); - tv.setHintTextColor(textHintColor); - } - } -} diff --git a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinDeployer/TextColorResDeployer.java b/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinDeployer/TextColorResDeployer.java deleted file mode 100644 index 03d147f..0000000 --- a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinDeployer/TextColorResDeployer.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.wind.me.xskinloader.skinDeployer; - -import android.view.View; -import android.widget.TextView; - -import com.wind.me.xskinloader.entity.SkinAttr; -import com.wind.me.xskinloader.entity.SkinConfig; -import com.wind.me.xskinloader.skinInterface.ISkinResDeployer; -import com.wind.me.xskinloader.skinInterface.ISkinResourceManager; - -/** - * Created by Windy on 2018/1/10. - */ - -public class TextColorResDeployer implements ISkinResDeployer { - @Override - public void deploy(View view, SkinAttr skinAttr, ISkinResourceManager resource) { - if (view instanceof TextView && SkinConfig.RES_TYPE_NAME_COLOR.equals(skinAttr.attrValueTypeName)) { - TextView tv = (TextView) view; - tv.setTextColor(resource.getColorStateList(skinAttr.attrValueRefId)); - } - } -} diff --git a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinInterface/ISkinResDeployer.java b/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinInterface/ISkinResDeployer.java deleted file mode 100644 index 3fe1ca5..0000000 --- a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinInterface/ISkinResDeployer.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.wind.me.xskinloader.skinInterface; - -import android.view.View; - -import com.wind.me.xskinloader.entity.SkinAttr; - -public interface ISkinResDeployer { - /** - * 将属性skinAttr通过resource设置到当前view上 - * - * @param view 当前view - * @param skinAttr 属性 - * @param resource 设置的资源工具 - */ - void deploy(View view, SkinAttr skinAttr, ISkinResourceManager resource); -} diff --git a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinInterface/ISkinResourceManager.java b/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinInterface/ISkinResourceManager.java deleted file mode 100644 index ef29d81..0000000 --- a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinInterface/ISkinResourceManager.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.wind.me.xskinloader.skinInterface; - -import android.content.res.ColorStateList; -import android.content.res.Resources; -import android.graphics.drawable.Drawable; -import android.support.annotation.ColorRes; -import android.support.annotation.DrawableRes; - -/** - * Created by xiawanli on 2018/1/10. - * - * 换肤功能,替换资源管理接口 - */ - -public interface ISkinResourceManager { - - String getPkgName(); - - Resources getPluginResource(); - - void setPluginResourcesAndPkgName(Resources resources, String pkgName); - - int getColor(@ColorRes int resId) throws Resources.NotFoundException; - - ColorStateList getColorStateList(@ColorRes int resId) throws Resources.NotFoundException; - - Drawable getDrawable(@DrawableRes int resId) throws Resources.NotFoundException; - -} diff --git a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinInterface/ISkinStyleParser.java b/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinInterface/ISkinStyleParser.java deleted file mode 100644 index 220a95c..0000000 --- a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/skinInterface/ISkinStyleParser.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.wind.me.xskinloader.skinInterface; - -import android.content.Context; -import android.util.AttributeSet; -import android.view.View; - -import com.wind.me.xskinloader.entity.SkinAttr; - -import java.util.Map; - -/** - * Created by Windy on 2018/2/10. - */ - -public interface ISkinStyleParser { - /** - * 解析xml中设置的style属性 - * @param view 当前需要解析的view - * @param attrs xml中参数集合 - * @param viewAttrs 解析出来的属性需要保存的集合 - * @param specifiedAttrList 非空时,仅即系此数组中的属性,空时,全部解析 - */ - void parseXmlStyle(View view, AttributeSet attrs, Map viewAttrs, String[] specifiedAttrList); -} diff --git a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/util/AssetFileUtils.java b/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/util/AssetFileUtils.java deleted file mode 100644 index 912e6c4..0000000 --- a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/util/AssetFileUtils.java +++ /dev/null @@ -1,74 +0,0 @@ -package com.wind.me.xskinloader.util; - -import android.content.Context; -import android.util.Log; - -import com.wind.me.xskinloader.entity.SkinConfig; - -import java.io.BufferedOutputStream; -import java.io.File; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.InputStream; - -/** - * Created by Windy on 2018/1/11. - */ - -public class AssetFileUtils { - - public static boolean copyAssetFile(Context context, String originAssetFileName, String destFileDirectory, - String destFileName) { - long startTime = System.currentTimeMillis(); - InputStream is = null; - BufferedOutputStream bos = null; - try { - is = context.getAssets().open(originAssetFileName); - - File destPathFile = new File(destFileDirectory); - if(!destPathFile.exists()) { - destPathFile.mkdirs(); - } - - File destFile = new File(destFileDirectory + File.separator + destFileName); - if (!destFile.exists()) { - destFile.createNewFile(); - } - - FileOutputStream fos = new FileOutputStream(destFile); - bos = new BufferedOutputStream(fos); - - byte[] buffer = new byte[256]; - int length = 0; - while ((length = is.read(buffer)) > 0) { - bos.write(buffer, 0, length); - } - bos.flush(); - return true; - } catch (Exception ex) { - ex.printStackTrace(); - } finally { - if (SkinConfig.DEBUG) { - Log.e("AssetFileUtils","copyAssetFile time = "+(System.currentTimeMillis() - startTime)); - } - if (null != is) { - try { - is.close(); - } catch (IOException e) { - e.printStackTrace(); - } - } - - if (null != bos) { - try { - bos.close(); - } catch (IOException e) { - e.printStackTrace(); - } - } - } - - return false; - } - -} diff --git a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/util/ReflectUtils.java b/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/util/ReflectUtils.java deleted file mode 100644 index 3be4f93..0000000 --- a/AndroidLearnProject/xskinloader-lib/src/main/java/com/wind/me/xskinloader/util/ReflectUtils.java +++ /dev/null @@ -1,306 +0,0 @@ -package com.wind.me.xskinloader.util; - -import android.text.TextUtils; - -import java.lang.reflect.Field; -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; - -public class ReflectUtils { - - //获取类的实例的变量的值 - public static Object getField(Object receiver, String fieldName) { - return getField(null, receiver, fieldName); - } - - //获取类的静态变量的值 - public static Object getField(String className, String fieldName) { - return getField(className,null, fieldName); - } - - public static Object getField(Class clazz, String className, String fieldName, Object receiver) { - try { - if (clazz == null) clazz = Class.forName(className); - Field field = clazz.getDeclaredField(fieldName); - if (field == null) return null; - field.setAccessible(true); - return field.get(receiver); - } catch (Throwable e) { - e.printStackTrace(); - } - return null; - } - - private static Object getField(String className, Object receiver, String fieldName) { - Class clazz = null; - Field field; - if (!TextUtils.isEmpty(className)) { - try { - clazz = Class.forName(className); - } catch (ClassNotFoundException e) { - e.printStackTrace(); - } - } else { - if (receiver != null) { - clazz = receiver.getClass(); - } - } - if (clazz == null) return null; - - try { - field = findField(clazz, fieldName); - if (field == null) return null; - field.setAccessible(true); - return field.get(receiver); - } catch (IllegalAccessException e) { - e.printStackTrace(); - } catch (IllegalArgumentException e) { - e.printStackTrace(); - } catch (NullPointerException e) { - e.printStackTrace(); - } - return null; - } - - public static Object setField(Object receiver, String fieldName, Object value) { - try { - Field field; - field = findField(receiver.getClass(), fieldName); - if (field == null) { - return null; - } - field.setAccessible(true); - Object old = field.get(receiver); - field.set(receiver, value); - return old; - } catch (IllegalAccessException e) { - e.printStackTrace(); - } catch (IllegalArgumentException e) { - e.printStackTrace(); - } - return null; - } - - public static Object setField(Class clazz, Object receiver, String fieldName, Object value) { - try { - Field field; - field = findField(clazz, fieldName); - if (field == null) { - return null; - } - field.setAccessible(true); - Object old = field.get(receiver); - field.set(receiver, value); - return old; - } catch (IllegalAccessException e) { - e.printStackTrace(); - } catch (IllegalArgumentException e) { - e.printStackTrace(); - } - return null; - } - - public static Object callMethod(Object receiver, String methodName, Object... params) { - return callMethod(null, receiver, methodName, params); - } - - public static Object setField(String clazzName, Object receiver, String fieldName, Object value){ - try { - Class clazz = Class.forName(clazzName); - Field field; - field = findField(clazz, fieldName); - if (field == null) { - return null; - } - field.setAccessible(true); - Object old = field.get(receiver); - field.set(receiver, value); - return old; - } catch (IllegalAccessException e) { - e.printStackTrace(); - } catch (IllegalArgumentException e) { - e.printStackTrace(); - } catch (ClassNotFoundException e) { - e.printStackTrace(); - } - return null; - } - - - public static Object callMethod(String className, String methodName, Object... params) { - return callMethod(className, null, methodName, params); - } - - public static Object callMethod(Class clazz, String className, String methodName, Object receiver, - Class[] types, Object... params) { - try { - if (clazz == null) clazz = Class.forName(className); - Method method = clazz.getDeclaredMethod(methodName, types); - method.setAccessible(true); - return method.invoke(receiver, params); - } catch (Throwable throwable) { - throwable.printStackTrace(); - } - return null; - } - - private static Object callMethod(String className, Object receiver, String methodName, Object... params) { - Class clazz = null; - if (!TextUtils.isEmpty(className)) { - try { - clazz = Class.forName(className); - } catch (ClassNotFoundException e) { - e.printStackTrace(); - } - } else { - if (receiver != null) { - clazz = receiver.getClass(); - } - } - if (clazz == null) return null; - try { - Method method = findMethod(clazz, methodName, params); - if (method == null) { - return null; - } - method.setAccessible(true); - return method.invoke(receiver, params); - } catch (IllegalArgumentException e) { - e.printStackTrace(); - } catch (IllegalAccessException e) { - e.printStackTrace(); - } catch (InvocationTargetException e) { - e.printStackTrace(); - } - return null; - } - - private static Method findMethod(Class clazz, String name, Object... arg) { - Method[] methods = clazz.getMethods(); - Method method = null; - for (Method m : methods) { - if (methodFitParam(m, name, arg)) { - method = m; - break; - } - } - - if (method == null) { - method = findDeclaredMethod(clazz, name, arg); - } - return method; - } - - private static Method findDeclaredMethod(Class clazz, String name, Object... arg) { - Method[] methods = clazz.getDeclaredMethods(); - Method method = null; - for (Method m : methods) { - if (methodFitParam(m, name, arg)) { - method = m; - break; - } - } - - if (method == null) { - if (clazz.equals(Object.class)) { - return null; - } - return findDeclaredMethod(clazz.getSuperclass(), name, arg); - } - return method; - } - - private static boolean methodFitParam(Method method, String methodName, Object... arg) { - if (!methodName.equals(method.getName())) { - return false; - } - - Class[] paramTypes = method.getParameterTypes(); - if (arg == null || arg.length == 0) { - if (paramTypes == null || paramTypes.length == 0) { - return true; - } else { - return false; - } - } - if (paramTypes.length != arg.length) { - return false; - } - - for (int i = 0; i < arg.length; ++i) { - Object ar = arg[i]; - Class paramT = paramTypes[i]; - if (ar == null) continue; - - //TODO for primitive type - if (paramT.isPrimitive()) continue; - - if (!paramT.isInstance(ar)) { - return false; - } - } - return true; - } - - private static Field findField(Class clazz, String name) { - try { - return clazz.getDeclaredField(name); - } catch (NoSuchFieldException e) { - if (clazz.equals(Object.class)) { - e.printStackTrace(); - return null; - } - Class base = clazz.getSuperclass(); - return findField(base, name); - } - } - - //表示Field或者Class是编译器自动生成的 - private static final int SYNTHETIC = 0x00001000; - //表示Field是final的 - private static final int FINAL = 0x00000010; - //内部类持有的外部类对象一定有这两个属性 - private static final int SYNTHETIC_AND_FINAL = SYNTHETIC | FINAL; - - private static boolean checkModifier(int mod) { - return (mod & SYNTHETIC_AND_FINAL) == SYNTHETIC_AND_FINAL; - } - - //获取内部类实例持有的外部类对象 - public static T getExternalField(Object innerObj) { - return getExternalField(innerObj, null); - } - - /** - * 内部类持有的外部类对象的形式为: - * final Outer this$0; - * flags: ACC_FINAL, ACC_SYNTHETIC - * 参考:https://www.jianshu.com/p/9335c15c43cf - * And:https://www.2cto.com/kf/201402/281879.html - * @param innerObj 内部类对象 - * @param name 内部类持有的外部类名称,默认是"this$0" - * @return 内部类持有的外部类对象 - */ - private static T getExternalField(Object innerObj, String name) { - Class clazz = innerObj.getClass(); - if (name == null || name.isEmpty()) { - name = "this$0"; - } - Field field; - try { - field = clazz.getDeclaredField(name); - } catch (NoSuchFieldException e) { - e.printStackTrace(); - return null; - } - field.setAccessible(true); - if (checkModifier(field.getModifiers())) { - try { - return (T)field.get(innerObj); - } catch (IllegalAccessException e) { - throw new RuntimeException(e); - } - } - return getExternalField(innerObj, name + "$"); - } -} diff --git a/LearnAndroid-release-V1.1.2_Huawei.apk b/LearnAndroid-release-V1.1.2_Huawei.apk new file mode 100644 index 0000000..c3f5879 Binary files /dev/null and b/LearnAndroid-release-V1.1.2_Huawei.apk differ diff --git a/AndroidLearnProject/app/.gitignore b/app/.gitignore similarity index 100% rename from AndroidLearnProject/app/.gitignore rename to app/.gitignore diff --git a/AndroidLearnProject/app/build.gradle b/app/build.gradle similarity index 56% rename from AndroidLearnProject/app/build.gradle rename to app/build.gradle index a8c5c7a..a772d4c 100644 --- a/AndroidLearnProject/app/build.gradle +++ b/app/build.gradle @@ -1,33 +1,38 @@ apply plugin: 'com.android.application' +apply plugin: 'kotlin-android' +apply plugin: 'kotlin-android-extensions' +apply plugin: 'kotlin-kapt' ext.getCNName = { - java.util.HashMap map = new HashMap<>(); - map.put("xiaomi", "xiaomi.apk"); - map.put("oppo", "oppo.apk"); - map.put("Tencent", "Tencent.apk"); - map.put("huawei", "huawei.apk"); - map.put("Qihoo", "360.apk"); - return map; + HashMap map = new HashMap<>(); + map.put("Xiaomi", "Xiaomi.apk") + map.put("Oppo", "Oppo.apk") + map.put("Tencent", "Tencent.apk") + map.put("Huawei", "Huawei.apk") + map.put("Vivo", "Vivo.apk") + return map } android { signingConfigs { release { - keyAlias 'mvpmodel' - keyPassword 'android1201' - storeFile file('mvpmodel.jks') - storePassword 'android1201' + keyAlias 'learnandroid' + keyPassword 'learn2022' + storeFile file('learnandroid.jks') + storePassword 'learn2022' + v1SigningEnabled true + v2SigningEnabled true } } - compileSdkVersion rootProject.ext.android.compileSdkVersion - buildToolsVersion rootProject.ext.android.buildToolsVersion + compileSdkVersion rootProject.ext.compileSdkVersion defaultConfig { applicationId "com.android.learn" - minSdkVersion rootProject.ext.android.minSdkVersion - targetSdkVersion rootProject.ext.android.targetSdkVersion - versionCode rootProject.ext.android.versionCode - versionName rootProject.ext.android.versionName - testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" + minSdkVersion rootProject.ext.minSdkVersion + targetSdkVersion rootProject.ext.targetSdkVersion + versionCode 112 + versionName "1.1.2" + testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner' + multiDexEnabled true } buildTypes { @@ -54,7 +59,7 @@ android { if (outputFile != null && outputFile.name.endsWith('.apk')) { // 输出apk名称为XuetangXRelease-3.1.0(3100)_Baidu-百度.apk def channel = variant.productFlavors[0].name - def releaseFileName = "build/outputs/LearnAndroid-${variant.buildType.name}-V${variant.versionName}(${variant.versionCode})_${getCNName().get(channel)}" + def releaseFileName = "LearnAndroid-${variant.buildType.name}-V${variant.versionName}_${getCNName().get(channel)}" outputFileName = releaseFileName } } @@ -65,38 +70,40 @@ android { flavorDimensions("dimension1") productFlavors { - xiaomi { + Xiaomi { dimension "dimension1" - manifestPlaceholders = [UMENG_CHANNEL_VALUE: "xiaomi", SPAM_VALUE: "xiaomi"]; + manifestPlaceholders = [UMENG_CHANNEL_VALUE: "Xiaomi", SPAM_VALUE: "Xiaomi"]; } - Tencent { manifestPlaceholders = [UMENG_CHANNEL_VALUE: "Tencent", SPAM_VALUE: "Tencent"]; dimension "dimension1" } - huawei { - manifestPlaceholders = [UMENG_CHANNEL_VALUE: "huawei", SPAM_VALUE: "huawei"]; + Huawei { + manifestPlaceholders = [UMENG_CHANNEL_VALUE: "Huawei", SPAM_VALUE: "Huawei"]; dimension "dimension1" } - Qihoo { - manifestPlaceholders = [UMENG_CHANNEL_VALUE: "Qihoo", SPAM_VALUE: "Qihoo"]; + + Vivo { + manifestPlaceholders = [UMENG_CHANNEL_VALUE: "Vivo", SPAM_VALUE: "Vivo"]; dimension "dimension1" } - - oppo { - manifestPlaceholders = [UMENG_CHANNEL_VALUE: "oppo", SPAM_VALUE: "oppo"]; + Oppo { + manifestPlaceholders = [UMENG_CHANNEL_VALUE: "Oppo", SPAM_VALUE: "Oppo"]; dimension "dimension1" } } + compileOptions { + sourceCompatibility 1.8 + targetCompatibility 1.8 + } } dependencies { api fileTree(include: ['*.jar'], dir: 'libs') - - annotationProcessor rootProject.ext.dependencies["butterknife-compiler"] + kapt "com.jakewharton:butterknife-compiler:$rootProject.butterknife_compiler" api project(':basemodule') } diff --git a/app/learnandroid.jks b/app/learnandroid.jks new file mode 100644 index 0000000..c6910d0 Binary files /dev/null and b/app/learnandroid.jks differ diff --git a/AndroidLearnProject/app/proguard-rules.pro b/app/proguard-rules.pro similarity index 100% rename from AndroidLearnProject/app/proguard-rules.pro rename to app/proguard-rules.pro diff --git a/AndroidLearnProject/app/src/androidTest/java/com/gaolei/mvpmodel/ExampleInstrumentedTest.java b/app/src/androidTest/java/com/gaolei/mvpmodel/ExampleInstrumentedTest.java similarity index 100% rename from AndroidLearnProject/app/src/androidTest/java/com/gaolei/mvpmodel/ExampleInstrumentedTest.java rename to app/src/androidTest/java/com/gaolei/mvpmodel/ExampleInstrumentedTest.java diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000..a630096 --- /dev/null +++ b/app/src/main/AndroidManifest.xml @@ -0,0 +1,69 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/AndroidLearnProject/app/src/main/assets/skins/xskinloader-skin-apk-debug.apk b/app/src/main/assets/skins/xskinloader-skin-apk-debug.apk similarity index 100% rename from AndroidLearnProject/app/src/main/assets/skins/xskinloader-skin-apk-debug.apk rename to app/src/main/assets/skins/xskinloader-skin-apk-debug.apk diff --git a/app/src/main/java/com/android/learn/MainActivity.kt b/app/src/main/java/com/android/learn/MainActivity.kt new file mode 100644 index 0000000..a443227 --- /dev/null +++ b/app/src/main/java/com/android/learn/MainActivity.kt @@ -0,0 +1,612 @@ +package com.android.learn + +import android.Manifest +import android.content.Context +import android.content.Intent +import android.graphics.Color +import android.graphics.Paint +import android.os.Bundle +import android.os.Environment +import android.os.Handler +import android.text.* +import android.text.style.ForegroundColorSpan +import android.util.Log +import android.util.TypedValue +import android.view.Gravity +import android.view.KeyEvent +import android.view.View +import android.view.ViewGroup +import android.view.inputmethod.EditorInfo +import android.widget.* +import androidx.fragment.app.Fragment +import androidx.recyclerview.widget.LinearLayoutManager +import androidx.recyclerview.widget.RecyclerView +import butterknife.BindView +import butterknife.OnClick +import cn.lankton.flowlayout.FlowLayout +import com.android.base.activity.BaseMvpActivity +import com.android.base.db.DBManager +import com.android.base.db.SearchRecord +import com.android.base.event.ChangeNightEvent +import com.android.base.event.RestartMainEvent +import com.android.base.mmodel.HotKeyData +import com.android.base.utils.* +import com.android.base.view.TitleView +import com.android.learn.activity.SearchResultActivity +import com.android.learn.adapter.MainTabAdapter +import com.android.learn.adapter.SearchRecordAdapter +import com.android.learn.fragment.* +import com.android.learn.mcontract.MainActivityContract +import com.android.learn.mpresenter.MainActivityPresenter +import com.android.learn.view.CustomViewPager +import com.android.learn.view.SearchViewUtils +import com.android.speechdemo.xf.JsonParser +import com.chad.library.adapter.base.BaseQuickAdapter +import com.google.android.material.tabs.TabLayout +import com.iflytek.cloud.* +import com.iflytek.cloud.ui.RecognizerDialog +import com.iflytek.cloud.ui.RecognizerDialogListener +import com.iflytek.sunflower.FlowerCollector +import com.jaeger.library.StatusBarUtil +import com.opensource.svgaplayer.* +import org.greenrobot.eventbus.EventBus +import org.greenrobot.eventbus.Subscribe +import org.greenrobot.eventbus.ThreadMode +import org.json.JSONException +import org.json.JSONObject +import java.net.URL +import java.util.* + +class MainActivity : BaseMvpActivity(), + MainActivityContract.View { + + private lateinit var mFragments: ArrayList + private lateinit var titles: ArrayList + + @BindView(R.id.viewPager) + lateinit var viewPager: CustomViewPager + + @BindView(R.id.tabLayout) + lateinit var tabLayout: TabLayout + + @BindView(R.id.title) + lateinit var title: TextView + + @BindView(R.id.header_layout) + lateinit var header_layout: TitleView + + @BindView(R.id.iv_svga) + lateinit var iv_svga: SVGAImageView + + @BindView(R.id.cardview_search) + lateinit var cardview_search: LinearLayout + + @BindView(R.id.et_search) + lateinit var et_search: EditText + + @BindView(R.id.iv_search) + lateinit var iv_search: ImageView + + @BindView(R.id.history_recycleview) + lateinit var history_recycleview: RecyclerView + + @BindView(R.id.flowlayout) + lateinit var flowlayout: FlowLayout + lateinit var homeFragment: HomeFragment + lateinit var projectFragment: ProjectFragment + var isSearching: Boolean = false + lateinit var searchRecordAdapter: SearchRecordAdapter + var TAG = "MainActivity" + private lateinit var mIat: SpeechRecognizer + private lateinit var mIatDialog: RecognizerDialog + + // 用HashMap存储听写结果 + private val mIatResults = LinkedHashMap() + + // 引擎类型 这里我只考虑了一种引擎类型 :云端的 + private val mCLOUDType = SpeechConstant.TYPE_CLOUD + + // 用来计算返回键的点击间隔时间 + private var exitTime: Long = 0 + + private val mInitListener = InitListener { } + override val layoutId: Int = R.layout.activity_main + + companion object { + fun launch(context: Context) { + context.startActivity(Intent(context, MainActivity::class.java)) + } + } + + /** + * 听写UI监听器 + */ + private val mRecognizerDialogListener = object : RecognizerDialogListener { + /** + * 识别成功时回调数据 + */ + override fun onResult(results: RecognizerResult, isLast: Boolean) { + LogUtil.d(TAG, "printResult(results)------------") + printResult(results) + } + + /** + * 识别回调错误. + */ + override fun onError(error: SpeechError) { + + } + } + + init { + // to do something + + } + + override fun initData(bundle: Bundle?) { + initView() + EventBus.getDefault().register(this) + } + + protected fun initView() { + mFragments = ArrayList() + homeFragment = HomeFragment() + projectFragment = ProjectFragment() + mFragments.add(homeFragment) + mFragments.add(projectFragment) + mFragments.add(KnowledgeFragment()) + mFragments.add(WechatFragment()) + mFragments.add(UserFragment()) + + titles = ArrayList() + titles.add(getString(R.string.home)) + titles.add(getString(R.string.project)) + titles.add(getString(R.string.knowledge)) + titles.add(getString(R.string.public_account)) + titles.add(getString(R.string.mine)) + + val adapter = MainTabAdapter(supportFragmentManager, mFragments) + viewPager.offscreenPageLimit = mFragments.size + viewPager.adapter = adapter + viewPager.addOnPageChangeListener(TabLayout.TabLayoutOnPageChangeListener(tabLayout)) + tabLayout.addOnTabSelectedListener(TabLayout.ViewPagerOnTabSelectedListener(viewPager)) + //将TabLayout和ViewPager关联起来 + tabLayout.setupWithViewPager(viewPager) + initTab() + initSearchRecord() + iv_search.visibility = View.VISIBLE + et_search.setOnEditorActionListener { v, actionId, event -> + if (actionId == EditorInfo.IME_ACTION_SEARCH) {//搜索按键action + beginSearch() + } + false + } + + } + + private fun beginSearch() { + val content = et_search.text.toString() + if (TextUtils.isEmpty(content)) { + Utils.showToast(getString(R.string.search_content_no), true) + } + + val bundle = Bundle() + bundle.putString("key", content) + SearchResultActivity.startActivity(this@MainActivity, bundle) + val dbManager = DBManager.getInstance() + val searchRecord = SearchRecord() + searchRecord.name = content + dbManager.insertUser(searchRecord) + searchRecordAdapter.data.add(searchRecord) + searchRecordAdapter.notifyDataSetChanged() + et_search.setText("") + KeyboardUtils.hideKeyboard(et_search) + } + + private fun initSearchRecord() { + val list = ArrayList() + searchRecordAdapter = SearchRecordAdapter(this, list) + history_recycleview.layoutManager = LinearLayoutManager(this) + history_recycleview.adapter = searchRecordAdapter + searchRecordAdapter.onItemClickListener = + BaseQuickAdapter.OnItemClickListener { adapter, view, position -> + val bundle = Bundle() + bundle.putString("key", searchRecordAdapter.data[position].name) + SearchResultActivity.startActivity(this@MainActivity, bundle) + } + } + + /** + * 设置添加Tab + */ + private fun initTab() { + + tabLayout.getTabAt(0)!!.setCustomView(R.layout.tab_home) + tabLayout.getTabAt(1)!!.setCustomView(R.layout.tab_project) + tabLayout.getTabAt(2)!!.setCustomView(R.layout.tab_knowledge) + tabLayout.getTabAt(3)!!.setCustomView(R.layout.tab_navigation) + tabLayout.getTabAt(4)!!.setCustomView(R.layout.tab_mine) + + + tabLayout.addOnTabSelectedListener(object : TabLayout.OnTabSelectedListener { + //标签选中之后执行的方法 + override fun onTabSelected(tab: TabLayout.Tab) { + val position = tab.position + title.text = titles[position] + + if (position == 4) + header_layout.visibility = View.GONE + else + header_layout.visibility = View.VISIBLE + } + + //标签没选中 + override fun onTabUnselected(tab: TabLayout.Tab) { + + } + + override fun onTabReselected(tab: TabLayout.Tab) { + + } + }) + val isRestartMain = SPUtils.getParam(this, "isRestartMain", false) as Boolean + LogUtil.d(TAG, "isRestartMain:$isRestartMain") + if (isRestartMain) { + //切换语言或切换字体大小,重启MainActivity则会走这里 + viewPager.currentItem = 4 + // tabLayout.getTabAt(4).getCustomView().setSelected(true); + SPUtils.setParam(this@MainActivity, "isRestartMain", false) + } else { + //默认选中的Tab + viewPager.currentItem = 0 + // tabLayout.getTabAt(0).getCustomView().setSelected(true); + loadAnimation() + } + + } + + @OnClick( + R.id.title, + R.id.iv_svga, + R.id.iv_search_back, + R.id.cardview_search, + R.id.iv_search, + R.id.tv_search_clear, + R.id.iv_speech_search + ) + override fun onClick(view: View) { + when (view.id) { + R.id.title -> { + val index = viewPager.currentItem + if (index == 0) + homeFragment.scrollToTop() + if (index == 1) + projectFragment.scrollToTop() + } + + R.id.iv_svga -> { + iv_svga.stopAnimation() + iv_svga.visibility = View.GONE + } + R.id.iv_search_back -> SearchViewUtils.handleSearchLayout( + applicationContext, + cardview_search, + et_search + ) + R.id.cardview_search -> SearchViewUtils.handleSearchLayout( + applicationContext, + cardview_search, + et_search + ) + R.id.iv_search -> { + SearchViewUtils.handleSearchLayout(applicationContext, cardview_search, et_search) + isSearching = true + } + R.id.tv_search_clear -> { + searchRecordAdapter.data.clear() + searchRecordAdapter.notifyDataSetChanged() + DBManager.getInstance().deleteAll() + } + R.id.iv_speech_search -> { + KeyboardUtils.hideKeyboard(et_search) + requestRecordAudioPermission() + } + } + + } + + fun requestPermission() { + requestPermission( + this, + object : PermissionUtil.RequestPermissionCallBack { + + override fun granted() { + + } + + override fun denied() {} + }, + arrayOf( + Manifest.permission.WRITE_EXTERNAL_STORAGE, + Manifest.permission.READ_PHONE_STATE + ) + ) + } + + public override fun onRestart() { + super.onRestart() + //跳转到设置界面后返回,重新检查权限 +// requestPermission() + } + + public override fun onStart() { + super.onStart() + val recordList = DBManager.getInstance().queryUserList() + searchRecordAdapter.data.clear() + searchRecordAdapter.addData(recordList) + + } + + override fun onKeyDown(keyCode: Int, event: KeyEvent): Boolean { + if (keyCode == KeyEvent.KEYCODE_BACK && event.action == KeyEvent.ACTION_DOWN) { + if (isSearching) { + SearchViewUtils.handleSearchLayout(applicationContext, cardview_search, et_search) + isSearching = false + return false + } + if (System.currentTimeMillis() - exitTime > 2000) { + //弹出提示,可以有多种方式 + Toast.makeText( + applicationContext, + getString(R.string.press_exit), + Toast.LENGTH_SHORT + ).show() + exitTime = System.currentTimeMillis() + } else { + finish() + } + return true + } + + return super.onKeyDown(keyCode, event) + } + + + private fun loadAnimation() { + val parser = SVGAParser(this) + try { + parser.parse( + URL("https://github.com/yyued/SVGA-Samples/blob/master/kingset.svga?raw=true"), + object : SVGAParser.ParseCompletion { + override fun onComplete(videoItem: SVGAVideoEntity) { + val drawable = + SVGADrawable(videoItem, requestDynamicItemWithSpannableText()) + iv_svga.setImageDrawable(drawable) + iv_svga.startAnimation() + + Handler().postDelayed({ + + iv_svga.stopAnimation() + iv_svga.visibility = View.GONE + }, 3000) + + } + + override fun onError() { + + } + }) + } catch (e: Exception) { + print(true) + } + + } + + /** + * 你可以设置富文本到 ImageKey 相关的元素上 + * 富文本是会自动换行的,不要设置过长的文本 + * @return + */ + private fun requestDynamicItemWithSpannableText(): SVGADynamicEntity { + val dynamicEntity = SVGADynamicEntity() + val spannableStringBuilder = + SpannableStringBuilder(getString(R.string.welcome_learn_android)) + spannableStringBuilder.setSpan( + ForegroundColorSpan(Color.YELLOW), + 0, + 4, + Spannable.SPAN_INCLUSIVE_INCLUSIVE + ) + val textPaint = TextPaint() + textPaint.color = Color.WHITE + textPaint.textSize = 28f + dynamicEntity.setDynamicText( + StaticLayout( + spannableStringBuilder, + 0, + spannableStringBuilder.length, + textPaint, + 0, + android.text.Layout.Alignment.ALIGN_CENTER, + 1.0f, + 0.0f, + false + ), "banner" + ) + dynamicEntity.setDynamicDrawer({ canvas, frameIndex -> + val aPaint = Paint() + aPaint.color = Color.WHITE + canvas.drawCircle(50f, 54f, (frameIndex % 5).toFloat(), aPaint) + false + }, "banner") + return dynamicEntity + } + + + @Subscribe(threadMode = ThreadMode.MAIN) + fun onEvent(event: RestartMainEvent) { + val intent = intent + overridePendingTransition(0, 0) + intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION) + finish() + overridePendingTransition(0, 0) + startActivity(intent) + event.activity.finish() + SPUtils.setParam(this@MainActivity, "isRestartMain", true) + + } + + @Subscribe(threadMode = ThreadMode.MAIN) + fun onEvent(event: ChangeNightEvent) { + val isNightMode = SPUtils.getParam(this, "nightMode", false) as Boolean + if (isNightMode) { + StatusBarUtil.setColorForSwipeBack(this, resources.getColor(R.color.app_color_night), 0) + } else { + StatusBarUtil.setColorForSwipeBack(this, resources.getColor(R.color.app_color), 0) + } + } + + public override fun onDestroy() { + super.onDestroy() + EventBus.getDefault().unregister(this) + } + + override fun initPresenter(): MainActivityPresenter { + return MainActivityPresenter() + } + + override fun loadData() { + mPresenter!!.getHotKey() + } + + + override fun showHotKey(list: List) { + addFolowLayoutView(list) + + } + + private fun addFolowLayoutView(list: List) { + val length = list.size + for (i in list.indices) { + val hotKeyData = list[i] + val ranHeight = ScreenUtils.dp2px(this, 30) + val lp = ViewGroup.MarginLayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ranHeight) + lp.setMargins(ScreenUtils.dp2px(this, 10), 0, ScreenUtils.dp2px(this, 10), 0) + val tv = TextView(this) + tv.setPadding(ScreenUtils.dp2px(this, 15), 0, ScreenUtils.dp2px(this, 15), 0) + tv.setTextColor(Color.parseColor("#FF3030")) + tv.setTextSize(TypedValue.COMPLEX_UNIT_SP, 15f) + val index = (Math.random() * length).toInt() + tv.text = hotKeyData.name + tv.gravity = Gravity.CENTER_VERTICAL + tv.setLines(1) + tv.setBackgroundResource(R.drawable.bg_tag) + flowlayout.addView(tv, lp) + tv.setOnClickListener { + val bundle = Bundle() + bundle.putString("key", tv.text.toString()) + SearchResultActivity.startActivity(this@MainActivity, bundle) + val dbManager = DBManager.getInstance() + val searchRecord = SearchRecord() + searchRecord.name = tv.text.toString() + dbManager.insertUser(searchRecord) + } + } + flowlayout.relayoutToAlign() + } + + fun requestRecordAudioPermission() { + requestPermission(this, object : PermissionUtil.RequestPermissionCallBack { + override fun granted() { + // 使用SpeechRecognizer对象,可根据回调消息自定义界面;这种方式主要是考虑到了,没有听写Dialog的时候,进行的听写监听 + mIat = SpeechRecognizer.createRecognizer(this@MainActivity, mInitListener) + Log.i(TAG, "onCreate: mIat == null ?" + mIat) + //SpeechRecognizer对象 null 的原因:一、 so 文件放错了位置 二、so文件与自己的SDK不匹配 3、Application中没有配置好appid + // 初始化听写Dialog,如果只使用有UI听写功能,无需创建SpeechRecognizer + // 使用UI听写功能,请根据sdk文件目录下的notice.txt,放置显示RecognizerDialog需要的布局文件和图片资源 + mIatDialog = RecognizerDialog(this@MainActivity, mInitListener) + // 移动数据分析,收集开始听写事件 + FlowerCollector.onEvent(this@MainActivity, "iat_recognize") + + et_search.setText("")// 清空显示内容 + mIatResults.clear() + // 设置参数 + setParam() + + // 显示听写对话框 + mIatDialog.setListener(mRecognizerDialogListener) + mIatDialog.show() + Utils.showToast(getString(R.string.begin_speech), true, Gravity.BOTTOM) + } + + override fun denied() {} + }, arrayOf(Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.RECORD_AUDIO)) + } + + fun setParam() { + // 清空参数 + mIat.setParameter(SpeechConstant.PARAMS, null) + + // 设置听写引擎 注意:这里我只设置云端的方式!后面再考虑本地和混合的类型 + mIat.setParameter(SpeechConstant.ENGINE_TYPE, mCLOUDType) + // 设置返回结果格式 + mIat.setParameter(SpeechConstant.RESULT_TYPE, "json") + + // 设置语言 + mIat.setParameter(SpeechConstant.LANGUAGE, "cn") + mIat.setParameter(SpeechConstant.ACCENT, "mandarin") + + // 设置语音前端点:静音超时时间,即用户多长时间不说话则当做超时处理 + mIat.setParameter(SpeechConstant.VAD_BOS, "4000") + + // 设置语音后端点:后端点静音检测时间,即用户停止说话多长时间内即认为不再输入, 自动停止录音 + mIat.setParameter(SpeechConstant.VAD_EOS, "1000") + + // 设置标点符号,设置为"0"返回结果无标点,设置为"1"返回结果有标点 + mIat.setParameter(SpeechConstant.ASR_PTT, "0") + + // 设置音频保存路径,保存音频格式支持pcm、wav,设置路径为sd卡请注意WRITE_EXTERNAL_STORAGE权限 + // 注:AUDIO_FORMAT参数语记需要更新版本才能生效 + mIat.setParameter(SpeechConstant.AUDIO_FORMAT, "wav") + mIat.setParameter( + SpeechConstant.ASR_AUDIO_PATH, + Environment.getExternalStorageDirectory().toString() + "/msc/iat.wav" + ) + } + + /** + * 成功时显示说话的文字 + * + * @param results + */ + private fun printResult(results: RecognizerResult) { + val text = JsonParser.parseIatResult(results.resultString) + + lateinit var sn: String + // 读取json结果中的sn字段 + try { + val resultJson = JSONObject(results.resultString) + sn = resultJson.optString("sn") + } catch (e: JSONException) { + e.printStackTrace() + } + + mIatResults[sn] = text + + val resultBuffer = StringBuffer() + for (key in mIatResults.keys) { + resultBuffer.append(mIatResults[key]) + } + + et_search.setText(resultBuffer.toString()) + //考虑到TextView只能显示文字 ,后面还要测试文字转语音,所以换EditText控件 + et_search.setSelection(et_search.length()) + KeyboardUtils.showKeyboard(et_search) + if (et_search.text.toString().length > 0 && "SearchResultActivity" != Utils.getTopActivity( + this + ) + ) + beginSearch() + } + +} diff --git a/app/src/main/java/com/android/learn/activity/ArticleDetailActivity.kt b/app/src/main/java/com/android/learn/activity/ArticleDetailActivity.kt new file mode 100644 index 0000000..20c5d61 --- /dev/null +++ b/app/src/main/java/com/android/learn/activity/ArticleDetailActivity.kt @@ -0,0 +1,73 @@ +package com.android.learn.activity + +import android.content.Context +import android.content.Intent +import android.os.Bundle +import android.view.View +import android.widget.ImageView +import android.widget.TextView +import butterknife.BindView +import butterknife.OnClick +import com.android.learn.R +import com.android.base.activity.BaseActivity +import com.android.base.view.Html5Webview + +class ArticleDetailActivity : BaseActivity() { + + @BindView(R.id.webview_article) + lateinit var webview_article: Html5Webview + @BindView(R.id.iv_back) + lateinit var iv_back: ImageView + @BindView(R.id.title) + lateinit var title: TextView + @BindView(R.id.iv_search) + lateinit var iv_search: ImageView + internal var url: String? = null + + override val layoutId: Int + get() = R.layout.activity_article_detail + + public override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + } + + override fun initData(bundle: Bundle?) { + title.text = getString(R.string.article_detail) + iv_back.visibility = View.VISIBLE + url = bundle?.getString("url") + webview_article.loadUrl(url) + iv_search.visibility = View.VISIBLE + iv_search.setImageResource(R.drawable.icon_share) + } + + + @OnClick(R.id.iv_search) + fun click(view: View) { + when (view.id) { + R.id.iv_search -> share("分享地址", url) + } + } + + private fun share(title: String, content: String?) { + var share_intent = Intent() + share_intent.action = Intent.ACTION_SEND//设置分享行为 + share_intent.type = "text/plain"//设置分享内容的类型 + share_intent.putExtra(Intent.EXTRA_SUBJECT, title)//添加分享内容标题 + share_intent.putExtra(Intent.EXTRA_TEXT, content)//添加分享内容 + //创建分享的Dialog + share_intent = Intent.createChooser(share_intent, "分享") + startActivity(share_intent) + } + + + companion object { + + fun startActivity(context: Context, bundle: Bundle?) { + val intent = Intent(context, ArticleDetailActivity::class.java) + + if (bundle != null) + intent.putExtras(bundle) + context.startActivity(intent) + } + } +} diff --git a/app/src/main/java/com/android/learn/activity/FeedbackActivity.kt b/app/src/main/java/com/android/learn/activity/FeedbackActivity.kt new file mode 100644 index 0000000..8637a51 --- /dev/null +++ b/app/src/main/java/com/android/learn/activity/FeedbackActivity.kt @@ -0,0 +1,272 @@ +package com.android.learn.activity + + +import android.annotation.SuppressLint +import android.app.Activity +import android.content.ContentUris +import android.content.Context +import android.content.Intent +import android.database.Cursor +import android.net.Uri +import android.os.Build +import android.os.Bundle +import android.os.Environment +import android.provider.DocumentsContract +import android.provider.MediaStore +import android.util.Log +import android.view.View +import android.widget.EditText +import android.widget.ImageView +import android.widget.TextView +import butterknife.BindView +import butterknife.OnClick +import com.android.learn.R +import com.android.base.activity.BaseActivity +import com.android.base.email.MailSender +import com.android.base.utils.Utils + + +class FeedbackActivity : BaseActivity() { + + @BindView(R.id.iv_back) + lateinit var iv_back: ImageView + @BindView(R.id.title) + lateinit var title: TextView + @BindView(R.id.send_btn) + lateinit var send_btn: TextView + @BindView(R.id.add_attachment) + lateinit var add_attachment: TextView + @BindView(R.id.file_dir) + lateinit var file_dir: TextView + @BindView(R.id.et_email_title) + lateinit var et_email_title: EditText + @BindView(R.id.et_email_content) + lateinit var et_email_content: EditText + + private val FILECHOOSER_RESULTCODE = 1 + private val sendEmail = "gaoleiemail@163.com"//发送方邮件 + private val sendEmaiPassword = "gl1201"//发送方邮箱密码(或授权码) + private val receiveEmail = "gaoleiandroid@163.com"//接收方邮件 + private var file_path: String? = null + + override val layoutId: Int + get() = R.layout.activity_help_feedback + + public override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + } + + override fun initData(bundle: Bundle?) { + title.text = getString(R.string.help_feedback) + iv_back.visibility = View.VISIBLE + } + + + @OnClick(R.id.send_btn, R.id.add_attachment) + fun click(view: View) { + when (view.id) { + R.id.send_btn -> { + val senderRunnable = SenderRunnable(sendEmail, sendEmaiPassword) + val sendTitle = et_email_title.text.toString() + val sendContent = et_email_content.text.toString() + if ("" == sendTitle.trim { it <= ' ' }) { + Utils.showToast(getString(R.string.please_input_contact), true) + return + } + if ("" == sendContent.trim { it <= ' ' }) { + Utils.showToast(getString(R.string.please_input_content), true) + return + } + senderRunnable.setMail(sendTitle, sendContent, + receiveEmail, file_path) + Thread(senderRunnable).start() + } + R.id.add_attachment -> showFileChooser() + }// sendEmail(); + } + + + private fun showFileChooser() { + val i = Intent(Intent.ACTION_GET_CONTENT) + i.addCategory(Intent.CATEGORY_OPENABLE) + i.type = "image/*" + startActivityForResult(Intent.createChooser(i, "File Chooser"), + FILECHOOSER_RESULTCODE) + } + + + public override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { + if (resultCode == Activity.RESULT_OK) { + val uri = data!!.data + + file_path = getPathByUri4kitkat(this, uri) + Log.d("gaolei", "file_path---------------" + file_path!!) + file_dir.text = file_path + + } + super.onActivityResult(requestCode, resultCode, data) + } + + internal inner class SenderRunnable(private val user: String, private val password: String) : Runnable { + private var subject: String? = null + private var body: String? = null + private var receiver: String? = null + private val sender: MailSender + private var attachment: String? = null + + init { + sender = MailSender(user, password) + var mailhost = user.substring(user.lastIndexOf("@") + 1, + user.lastIndexOf(".")) + if (mailhost != "gmail") { + mailhost = "smtp.$mailhost.com" + Log.i("hello", mailhost) + sender.mailhost = mailhost + } + } + + fun setMail(subject: String, body: String, receiver: String, + attachment: String?) { + this.subject = subject + this.body = body + this.receiver = receiver + this.attachment = attachment + } + + override fun run() { + // TODO Auto-generated method stub + try { + sender.sendMail(subject, body, user, receiver!!, attachment) + Utils.showToast(getString(R.string.feedback_send_success), false) + runOnUiThread { finish() } + } catch (e: Exception) { + // TODO Auto-generated catch block + if (e.message != null) + Utils.showToast(getString(R.string.feedback_send_fail), false) + e.printStackTrace() + } finally { + finish() + } + } + } + + private fun sendEmail() { + val email = Intent(Intent.ACTION_SENDTO) + /*不带附件发送邮件*/ + // email.setType("plain/text"); + email.data = Uri.parse(receiveEmail) + + /*设置邮件默认地址,多个收件人,String数组*/ + // email.putExtra(android.content.Intent.EXTRA_EMAIL, (String[])mMailReceivers.toArray(new String[mMailReceivers.size()])); + /*多个抄送人,String数组*/ + // email.putExtra(android.content.Intent.EXTRA_CC, (String[])mMailCopyTos.toArray(new String[mMailCopyTos.size()])); + /*邮件标题*/ + email.putExtra(Intent.EXTRA_SUBJECT, et_email_title.text.toString()) + /*邮件正文*/ + email.putExtra(Intent.EXTRA_TEXT, et_email_content.text.toString()) + //调用系统的邮件系统 + startActivity(Intent.createChooser(email, "请选择邮件发送软件")) + + } + + companion object { + + + fun startActivity(context: Context) { + val intent = Intent(context, FeedbackActivity::class.java) + context.startActivity(intent) + } + + // 专为Android4.4设计的从Uri获取文件绝对路径,以前的方法已不好使了。targetSdkVersion 22;如果targetSdkVersion>=23怎需要动态获取WRITE_EXTERNAL_STORAGE权限;如果targetSdkVersion>=24 则可能需要用到FileProvider + @SuppressLint("NewApi") + fun getPathByUri4kitkat(context: Context, uri: Uri?): String? { + // DocumentProvider + if (DocumentsContract.isDocumentUri(context, uri)) { + if (isExternalStorageDocument(uri!!)) {// ExternalStorageProvider + val docId = DocumentsContract.getDocumentId(uri) + val split = docId.split(":".toRegex()).dropLastWhile { it.isEmpty() }.toTypedArray() + val type = split[0] + if ("primary".equals(type, ignoreCase = true)) { + return Environment.getExternalStorageDirectory().toString() + "/" + split[1] + } + } else if (isDownloadsDocument(uri)) {// DownloadsProvider + val id = DocumentsContract.getDocumentId(uri) + val contentUri = ContentUris.withAppendedId(Uri.parse("content://downloads/public_downloads"), + java.lang.Long.valueOf(id)) + return getDataColumn(context, contentUri, null, null) + } else if (isMediaDocument(uri)) {// MediaProvider + val docId = DocumentsContract.getDocumentId(uri) + val split = docId.split(":".toRegex()).dropLastWhile { it.isEmpty() }.toTypedArray() + val type = split[0] + var contentUri: Uri? = null + if ("image" == type) { + contentUri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI + } else if ("video" == type) { + contentUri = MediaStore.Video.Media.EXTERNAL_CONTENT_URI + } else if ("audio" == type) { + contentUri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI + } + val selection = "_id=?" + val selectionArgs = arrayOf(split[1]) + return getDataColumn(context, contentUri, selection, selectionArgs) + } + } else if ("content".equals(uri!!.scheme, ignoreCase = true)) {// MediaStore + return getDataColumn(context, uri, null, null) + } else if ("file".equals(uri.scheme, ignoreCase = true)) {// File + return uri.path + } + return null + } + + /** + * Get the value of the data column for this Uri. This is useful for + * MediaStore Uris, and other file-based ContentProviders. + * + * @param context The context. + * @param uri The Uri to query. + * @param selection (Optional) Filter used in the query. + * @param selectionArgs (Optional) Selection arguments used in the query. + * @return The value of the _data column, which is typically a file path. + */ + fun getDataColumn(context: Context, uri: Uri?, selection: String?, selectionArgs: Array?): String? { + var cursor: Cursor? = null + val column = "_data" + val projection = arrayOf(column) + try { + cursor = context.contentResolver.query(uri!!, projection, selection, selectionArgs, null) + if (cursor != null && cursor.moveToFirst()) { + val column_index = cursor.getColumnIndexOrThrow(column) + return cursor.getString(column_index) + } + } finally { + cursor?.close() + } + return null + } + + /** + * @param uri The Uri to check. + * @return Whether the Uri authority is ExternalStorageProvider. + */ + fun isExternalStorageDocument(uri: Uri): Boolean { + return "com.android.externalstorage.documents" == uri.authority + } + + /** + * @param uri The Uri to check. + * @return Whether the Uri authority is DownloadsProvider. + */ + fun isDownloadsDocument(uri: Uri): Boolean { + return "com.android.providers.downloads.documents" == uri.authority + } + + /** + * @param uri The Uri to check. + * @return Whether the Uri authority is MediaProvider. + */ + fun isMediaDocument(uri: Uri): Boolean { + return "com.android.providers.media.documents" == uri.authority + } + } + +} diff --git a/app/src/main/java/com/android/learn/activity/FontSizeActivity.kt b/app/src/main/java/com/android/learn/activity/FontSizeActivity.kt new file mode 100644 index 0000000..742275c --- /dev/null +++ b/app/src/main/java/com/android/learn/activity/FontSizeActivity.kt @@ -0,0 +1,143 @@ +package com.android.learn.activity + +import android.content.Context +import android.content.Intent +import android.graphics.Color +import android.os.Bundle +import android.view.KeyEvent +import android.view.View +import android.widget.ImageView +import android.widget.TextView +import butterknife.BindView +import butterknife.OnClick +import com.android.learn.R +import com.android.base.activity.BaseActivity +import com.android.base.event.RestartMainEvent +import com.android.base.utils.LogUtil +import com.android.base.utils.SPUtils +import com.android.base.utils.ScreenUtils +import com.android.learn.view.fontsliderbar.FontSliderBar +import org.greenrobot.eventbus.EventBus + + +class FontSizeActivity : BaseActivity() { + @BindView(R.id.iv_back) + lateinit var iv_back: ImageView + @BindView(R.id.title) + lateinit var title: TextView + @BindView(R.id.fontSliderBar) + lateinit var fontSliderBar: FontSliderBar + @BindView(R.id.tv_chatcontent1) + lateinit var tvContent1: TextView + @BindView(R.id.tv_chatcontent) + lateinit var tvContent2: TextView + @BindView(R.id.iv_userhead) + lateinit var ivUserhead: ImageView + private var textsize1: Float = 0.toFloat() + private var textsize2: Float = 0.toFloat() + private val textsize3: Float = 0.toFloat() + private var textSizef: Float = 0.toFloat()//缩放比例 + private var isClickable = true + internal var currentIndex: Int = 0 + internal var TAG = "FontSizeActivity" + + override val layoutId: Int + get() = R.layout.activity_fontsizes + + public override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + } + + override fun initData(bundle: Bundle?) { + title.text = getString(R.string.font_size) + iv_back.visibility = View.VISIBLE + initData() + } + + private fun initData() { + currentIndex = SPUtils.getParam(this, "currentIndex", 1) as Int + textSizef = 1 + currentIndex * 0.1f + val size1 = tvContent1.textSize + val size2 = tvContent2.textSize + textsize1 = size1 / textSizef + textsize2 = size2 / textSizef + val listener = object : FontSliderBar.OnSliderBarChangeListener { + override fun onIndexChanged(rangeBar: FontSliderBar, index: Int) { + var index = index + if (index > 5) { + return + } + index = index - 1 + val textSizef = 1 + index * 0.1f + setTextSize(textSizef) + } + } + fontSliderBar.setTickCount(6).setTickHeight(ScreenUtils.dp2px(this@FontSizeActivity, 15).toFloat()).setBarColor(Color.GRAY) + .setTextColor(Color.BLACK).setTextPadding(ScreenUtils.dp2px(this@FontSizeActivity, 10)).setTextSize( + ScreenUtils.dp2px(this@FontSizeActivity, 14)) + .setThumbRadius(ScreenUtils.dp2px(this@FontSizeActivity, 10).toFloat()).setThumbColorNormal(Color.GRAY).setThumbColorPressed(Color.GRAY) + .setOnSliderBarChangeListener(listener).setThumbIndex(currentIndex).withAnimation(false).applay(this) + + } + + @OnClick(R.id.iv_back) + fun click(view: View) { + + when (view.id) { + R.id.iv_back -> if (fontSliderBar.currentIndex != currentIndex) { + if (isClickable) { + isClickable = false + refresh() + } + } else { + finish() + } + } + } + + private fun setTextSize(textSize: Float) { + //改变当前页面的字体大小 + val size1 = textsize1 * textSize + val size2 = textsize2 * textSize + val size3 = textsize3 * textSize + tvContent1.textSize = ScreenUtils.px2sp(this@FontSizeActivity, size1).toFloat() + tvContent2.textSize = ScreenUtils.px2sp(this@FontSizeActivity, size2).toFloat() + } + + override fun onKeyDown(keyCode: Int, event: KeyEvent): Boolean { + if (keyCode == KeyEvent.KEYCODE_BACK) { + if (currentIndex != fontSliderBar.currentIndex) { + if (isClickable) { + isClickable = false + refresh() + } + } else { + finish() + } + return true + } + return super.onKeyDown(keyCode, event) + } + + private fun refresh() { + //存储标尺的下标 + SPUtils.setParam(this, "currentIndex", fontSliderBar.currentIndex) + //通知主页面重启 + EventBus.getDefault().post(RestartMainEvent(this)) + + } + + public override fun onDestroy() { + super.onDestroy() + LogUtil.d(TAG, "$TAG onDestroy--------") + } + + + companion object { + + fun startActivity(context: Context) { + val intent = Intent(context, FontSizeActivity::class.java) + context.startActivity(intent) + } + } +} diff --git a/app/src/main/java/com/android/learn/activity/KnowledgeChildActivity.kt b/app/src/main/java/com/android/learn/activity/KnowledgeChildActivity.kt new file mode 100644 index 0000000..ae14600 --- /dev/null +++ b/app/src/main/java/com/android/learn/activity/KnowledgeChildActivity.kt @@ -0,0 +1,152 @@ +package com.android.learn.activity + +import android.content.Context +import android.content.Intent +import android.os.Bundle +import android.view.View +import android.widget.ImageView +import android.widget.TextView +import androidx.recyclerview.widget.LinearLayoutManager +import androidx.recyclerview.widget.RecyclerView +import butterknife.BindView +import com.android.base.activity.BaseMvpActivity +import com.android.base.mmodel.FeedArticleListData +import com.android.base.mmodel.FeedArticleListData.FeedArticleData +import com.android.base.utils.LogUtil +import com.android.base.view.CustomProgressDialog +import com.android.learn.R +import com.android.learn.adapter.ArticleQuickAdapter +import com.android.learn.adapter.DividerItemDecoration +import com.android.learn.mcontract.KnowledgeChildContract +import com.android.learn.mpresenter.KnowledgeChildPresenter +import com.chad.library.adapter.base.BaseQuickAdapter +import com.scwang.smartrefresh.layout.SmartRefreshLayout +import com.scwang.smartrefresh.layout.api.RefreshLayout +import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener + +class KnowledgeChildActivity : + BaseMvpActivity(), + KnowledgeChildContract.View { + @BindView(R.id.iv_back) + lateinit var iv_back: ImageView + @BindView(R.id.title) + lateinit var title: TextView + @BindView(R.id.tv_empty_knowledge) + lateinit var tv_empty_knowledge: TextView + @BindView(R.id.article_recyclerview) + lateinit var article_recyclerview: RecyclerView + @BindView(R.id.smartRefreshLayout) + lateinit var smartRefreshLayout: SmartRefreshLayout + lateinit var articleDataList: List + private var feedArticleAdapter: ArticleQuickAdapter? = null + internal var cid: Int = 0 + internal var titleStr: String? = null + internal var TAG = "KnowledgeChildActivity" + + override val layoutId: Int + get() = R.layout.activity_knowledge_article + + override fun initData(bundle: Bundle?) { + cid = bundle!!.getInt(ID) + titleStr = bundle.getString(TITLE) + LogUtil.d(TAG, "id--------------$cid") + LogUtil.d(TAG, "titleStr--------------" + titleStr!!) + title.text = titleStr + iv_back.visibility = View.VISIBLE + initSmartRefreshLayout() + initRecyclerView() + } + + + override fun initPresenter(): KnowledgeChildPresenter { + return KnowledgeChildPresenter() + } + + override fun loadData() { + CustomProgressDialog.show(this) + mPresenter!!.getKnowledgeArticleList(0, cid) + } + + override fun showArticleList(listData: FeedArticleListData, isRefresh: Boolean) { + val newDataList = listData.datas + if (newDataList.size == 0) { + smartRefreshLayout.finishLoadMoreWithNoMoreData() + return + } + smartRefreshLayout.finishLoadMore() + + feedArticleAdapter!!.addData(newDataList) + + } + + override fun showCollectArticleData(position: Int, feedArticleData: FeedArticleData) { + feedArticleAdapter!!.setData(position, feedArticleData) + } + + override fun showCancelCollectArticleData(position: Int, feedArticleData: FeedArticleData) { + feedArticleAdapter!!.setData(position, feedArticleData) + } + + private fun initRecyclerView() { + articleDataList = ArrayList() + feedArticleAdapter = ArticleQuickAdapter(this, articleDataList, "KnowledgeChildActivity") + article_recyclerview.addItemDecoration( + DividerItemDecoration( + this, + DividerItemDecoration.VERTICAL_LIST + ) + ) + article_recyclerview.layoutManager = LinearLayoutManager(this) + + //解决数据加载完成后, 没有停留在顶部的问题 + article_recyclerview.isFocusable = false + article_recyclerview.adapter = feedArticleAdapter + + feedArticleAdapter!!.onItemClickListener = + BaseQuickAdapter.OnItemClickListener { adapter, view, position -> + val intent = Intent(this@KnowledgeChildActivity, ArticleDetailActivity::class.java) + val bundle = Bundle() + bundle.putString("url", feedArticleAdapter!!.data[position].link) + intent.putExtras(bundle) + startActivity(intent) + } + feedArticleAdapter!!.onItemChildClickListener = + BaseQuickAdapter.OnItemChildClickListener { adapter, view, position -> + if (feedArticleAdapter!!.data[position].isCollect) { + mPresenter!!.cancelCollectArticle(position, feedArticleAdapter!!.data[position]) + } else { + mPresenter!!.addCollectArticle(position, feedArticleAdapter!!.data[position]) + } + } + } + + //初始化下拉刷新控件 + private fun initSmartRefreshLayout() { + smartRefreshLayout.isEnableLoadMore = true + smartRefreshLayout.isEnableRefresh = false + smartRefreshLayout.isEnableScrollContentWhenLoaded = true//是否在加载完成时滚动列表显示新的内容 + smartRefreshLayout.setEnableFooterFollowWhenLoadFinished(true) + smartRefreshLayout.setOnRefreshLoadMoreListener(object : OnRefreshLoadMoreListener { + override fun onLoadMore(refreshLayout: RefreshLayout) { + mPresenter!!.onLoadMore(cid) + } + + override fun onRefresh(refreshLayout: RefreshLayout) { + mPresenter!!.onRefreshMore(cid) + } + }) + } + + companion object { + val ID = "page" + val TITLE = "TITLE" + + fun startTreeChildrenActivity(context: Context?, id: Int, name: String) { + val intent = Intent(context, KnowledgeChildActivity::class.java) + intent.putExtra(ID, id) + intent.putExtra(TITLE, name) + context?.startActivity(intent) + } + } + +} diff --git a/app/src/main/java/com/android/learn/activity/LanguageActivity.kt b/app/src/main/java/com/android/learn/activity/LanguageActivity.kt new file mode 100644 index 0000000..b1460d4 --- /dev/null +++ b/app/src/main/java/com/android/learn/activity/LanguageActivity.kt @@ -0,0 +1,90 @@ +package com.android.learn.activity + +import android.content.Context +import android.content.Intent +import android.os.Bundle +import android.view.View +import android.widget.ImageView +import android.widget.TextView +import androidx.appcompat.widget.AppCompatCheckBox +import butterknife.BindView +import butterknife.OnClick +import com.android.base.activity.BaseActivity +import com.android.base.event.RestartMainEvent +import com.android.base.utils.LanguageUtil +import com.android.base.utils.LogUtil +import com.android.base.utils.SPUtils +import com.android.learn.R +import org.greenrobot.eventbus.EventBus + + +class LanguageActivity : BaseActivity() { + @BindView(R.id.iv_back) + lateinit var iv_back: ImageView + + @BindView(R.id.title) + lateinit var title: TextView + + @BindView(R.id.cb_system) + lateinit var cb_system: AppCompatCheckBox + + @BindView(R.id.cb_chinese) + lateinit var cb_chinese: AppCompatCheckBox + + @BindView(R.id.cb_english) + lateinit var cb_english: AppCompatCheckBox + internal var TAG = "LanguageActivity" + + override val layoutId: Int + get() = R.layout.activity_language + + public override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + } + + override fun initData(bundle: Bundle?) { + title.text = getString(R.string.language_set) + iv_back.visibility = View.VISIBLE + + val language = SPUtils.getParam(this, "language", 0) as Int + if (language == 0) { + cb_system.isChecked = true + } else if (language == 1) { + cb_chinese.isChecked = true + } else if (language == 2) { + cb_english.isChecked = true + } + } + + private fun selectLanguage(select: Int) { + LanguageUtil.saveSelectLanguage(this, select) + EventBus.getDefault().post(RestartMainEvent(this)) + } + + @OnClick(R.id.cb_system, R.id.cb_chinese, R.id.cb_english) + fun click(view: View) { + cb_system.isChecked = false + cb_chinese.isChecked = false + cb_english.isChecked = false + + + when (view.id) { + R.id.cb_system -> selectLanguage(0) + R.id.cb_chinese -> selectLanguage(1) + R.id.cb_english -> selectLanguage(2) + } + } + + public override fun onDestroy() { + super.onDestroy() + LogUtil.d(TAG, "$TAG onDestroy--------") + } + + companion object { + + fun startActivity(context: Context) { + val intent = Intent(context, LanguageActivity::class.java) + context.startActivity(intent) + } + } +} diff --git a/app/src/main/java/com/android/learn/activity/MyCollectActivity.kt b/app/src/main/java/com/android/learn/activity/MyCollectActivity.kt new file mode 100644 index 0000000..7c737d3 --- /dev/null +++ b/app/src/main/java/com/android/learn/activity/MyCollectActivity.kt @@ -0,0 +1,136 @@ +package com.android.learn.activity + +import android.content.Context +import android.content.Intent +import android.os.Bundle +import android.view.View +import android.widget.ImageView +import android.widget.TextView +import androidx.recyclerview.widget.LinearLayoutManager +import androidx.recyclerview.widget.RecyclerView +import butterknife.BindView +import com.android.base.activity.BaseMvpActivity +import com.android.base.event.CancelCollectEvent +import com.android.base.mmodel.FeedArticleListData +import com.android.base.mmodel.FeedArticleListData.FeedArticleData +import com.android.base.view.CustomProgressDialog +import com.android.learn.R +import com.android.learn.adapter.ArticleQuickAdapter +import com.android.learn.adapter.DividerItemDecoration +import com.android.learn.mcontract.CollectContract +import com.android.learn.mpresenter.CollectPresenter +import com.chad.library.adapter.base.BaseQuickAdapter +import com.scwang.smartrefresh.layout.SmartRefreshLayout +import org.greenrobot.eventbus.EventBus +import java.util.* + + +class MyCollectActivity : BaseMvpActivity(), + CollectContract.View { + + @BindView(R.id.iv_back) + lateinit var iv_back: ImageView + + @BindView(R.id.title) + lateinit var title: TextView + + @BindView(R.id.article_collect_recyclerview) + lateinit var article_collect_recyclerview: RecyclerView + + @BindView(R.id.smartRefreshLayout) + lateinit var smartRefreshLayout: SmartRefreshLayout + + @BindView(R.id.tv_empty_collect) + lateinit var tv_empty_collect: TextView + lateinit var articleDataList: List + private var feedArticleAdapter: ArticleQuickAdapter? = null + + override val layoutId: Int + get() = R.layout.activity_collect + + override fun initData(bundle: Bundle?) { + title.text = getString(R.string.collect) + iv_back.visibility = View.VISIBLE + initRecyclerView() + initSmartRefreshLayout() + } + + override fun initPresenter(): CollectPresenter { + return CollectPresenter() + } + + override fun loadData() { + CustomProgressDialog.show(this) + mPresenter!!.getCollectList() + } + + + override fun showCollectList(feedArticleListData: FeedArticleListData) { + val newDataList = feedArticleListData.datas + if (newDataList.size == 0) { + smartRefreshLayout.finishLoadMoreWithNoMoreData() + } + smartRefreshLayout.finishLoadMore() + + feedArticleAdapter!!.addData(newDataList) + + if (feedArticleAdapter!!.data.size == 0) { + tv_empty_collect.visibility = View.VISIBLE + } else + tv_empty_collect.visibility = View.GONE + + } + + override fun showCancelCollectArticle(position: Int, id: Int) { + feedArticleAdapter!!.remove(position) + EventBus.getDefault().post(CancelCollectEvent(id)) + } + + private fun initRecyclerView() { + articleDataList = ArrayList() + feedArticleAdapter = ArticleQuickAdapter(this, articleDataList, "MyCollectActivity") + article_collect_recyclerview.addItemDecoration( + DividerItemDecoration( + this, + DividerItemDecoration.VERTICAL_LIST + ) + ) + article_collect_recyclerview.layoutManager = LinearLayoutManager(this) + + article_collect_recyclerview.isFocusable = false + article_collect_recyclerview.adapter = feedArticleAdapter + feedArticleAdapter!!.onItemChildClickListener = + BaseQuickAdapter.OnItemChildClickListener { adapter, view, position -> + mPresenter!!.cancelCollectArticle( + position, + feedArticleAdapter!!.data[position].originId + ) + } + feedArticleAdapter!!.onItemClickListener = + BaseQuickAdapter.OnItemClickListener { adapter, view, position -> + val intent = Intent(this@MyCollectActivity, ArticleDetailActivity::class.java) + val bundle = Bundle() + bundle.putString("url", articleDataList[position].link) + intent.putExtras(bundle) + startActivity(intent) + } + } + + private fun initSmartRefreshLayout() { + smartRefreshLayout.isEnableLoadMore = true + smartRefreshLayout.isEnableRefresh = false + smartRefreshLayout.isEnableScrollContentWhenLoaded = true//是否在加载完成时滚动列表显示新的内容 + smartRefreshLayout.setEnableFooterFollowWhenLoadFinished(true) + smartRefreshLayout.setOnLoadMoreListener { mPresenter!!.getCollectList() } + } + + companion object { + + fun startActivity(context: Context) { + val intent = Intent(context, MyCollectActivity::class.java) + context.startActivity(intent) + } + } + + +} diff --git a/app/src/main/java/com/android/learn/activity/MyTodoActivity.kt b/app/src/main/java/com/android/learn/activity/MyTodoActivity.kt new file mode 100644 index 0000000..f5dac4e --- /dev/null +++ b/app/src/main/java/com/android/learn/activity/MyTodoActivity.kt @@ -0,0 +1,125 @@ +package com.android.learn.activity + + +import android.content.Context +import android.content.Intent +import android.os.Bundle + +import android.view.View +import android.widget.ImageView +import android.widget.TextView +import androidx.fragment.app.Fragment +import androidx.fragment.app.FragmentManager +import androidx.fragment.app.FragmentPagerAdapter +import butterknife.BindView +import butterknife.OnClick +import com.android.learn.R +import com.android.base.activity.BaseActivity +import com.android.learn.fragment.TodoFragment +import com.android.learn.view.CustomViewPager +import com.google.android.material.tabs.TabLayout +import java.util.* + +class MyTodoActivity : BaseActivity() { + @BindView(R.id.iv_back) + lateinit var iv_back: ImageView + @BindView(R.id.iv_search) + lateinit var iv_search: ImageView + @BindView(R.id.title) + lateinit var tv_title: TextView + @BindView(R.id.tabLayout) + lateinit var tabLayout: TabLayout + @BindView(R.id.viewPager) + lateinit var viewPager: CustomViewPager + lateinit var todoFragment: TodoFragment + lateinit var doneFragment: TodoFragment + + private val mFragments = ArrayList() + + override val layoutId: Int + get() = R.layout.activity_my_todo + + public override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + } + + private fun initTab() { + + tabLayout.getTabAt(0)!!.setCustomView(R.layout.tab_todo) + tabLayout.getTabAt(1)!!.setCustomView(R.layout.tab_done) + + + tabLayout.addOnTabSelectedListener(object : TabLayout.OnTabSelectedListener { + //标签选中之后执行的方法 + override fun onTabSelected(tab: TabLayout.Tab) { + // title.setText(titles.get(tab.getPosition())); + if (tab.position == 0) + iv_search.visibility = View.VISIBLE + if (tab.position == 1) + iv_search.visibility = View.GONE + + } + + //标签没选中 + override fun onTabUnselected(tab: TabLayout.Tab) { + + } + + override fun onTabReselected(tab: TabLayout.Tab) { + + } + }) + //默认选中的Tab + tabLayout.getTabAt(0)!!.customView!!.isSelected = true + } + + override fun initData(bundle: Bundle?) { + tv_title.text = getString(R.string.todo) + iv_back.visibility = View.VISIBLE + iv_search.visibility = View.VISIBLE + iv_search.setImageResource(R.drawable.add_todo) + val bundle1 = Bundle() + bundle1.putInt("position", 0) + todoFragment = TodoFragment.newInstance(bundle1) + val bundle2 = Bundle() + bundle2.putInt("position", 1) + doneFragment = TodoFragment.newInstance(bundle2) + mFragments.add(todoFragment) + mFragments.add(doneFragment) + val adapter = CourseDiscussAdapter(supportFragmentManager, mFragments) + viewPager.offscreenPageLimit = mFragments.size + viewPager.adapter = adapter + viewPager.addOnPageChangeListener(TabLayout.TabLayoutOnPageChangeListener(tabLayout)) + tabLayout.addOnTabSelectedListener(TabLayout.ViewPagerOnTabSelectedListener(viewPager)) + //将TabLayout和ViewPager关联起来 + tabLayout.setupWithViewPager(viewPager) + initTab() + } + + @OnClick(R.id.iv_search) + fun click(view: View) { + when (view.id) { + R.id.iv_search -> TodoAddActivity.startActivity(this@MyTodoActivity, null) + } + } + + inner class CourseDiscussAdapter(fm: FragmentManager, internal var fragments: List) : FragmentPagerAdapter(fm) { + + override fun getItem(position: Int): Fragment { + + return fragments[position] + } + + override fun getCount(): Int { + return fragments.size + } + } + + companion object { + + fun startActivity(context: Context) { + val intent = Intent(context, MyTodoActivity::class.java) + context.startActivity(intent) + } + } +} diff --git a/app/src/main/java/com/android/learn/activity/RegisterLoginActivity.kt b/app/src/main/java/com/android/learn/activity/RegisterLoginActivity.kt new file mode 100644 index 0000000..f188b4c --- /dev/null +++ b/app/src/main/java/com/android/learn/activity/RegisterLoginActivity.kt @@ -0,0 +1,155 @@ +package com.android.learn.activity + +import android.content.Context +import android.content.Intent +import android.os.Bundle +import android.view.KeyEvent +import android.view.View +import android.widget.EditText +import android.widget.ImageView +import android.widget.LinearLayout +import android.widget.TextView +import butterknife.BindView +import butterknife.OnClick +import com.android.base.activity.BaseMvpActivity +import com.android.base.mmodel.RegisterLoginData +import com.android.base.utils.SPUtils +import com.android.base.utils.Utils +import com.android.base.utils.account.UserUtil +import com.android.learn.R +import com.android.learn.mcontract.RegisterLoginContract +import com.android.learn.mpresenter.RegisterLoginPresenter + + +class RegisterLoginActivity : BaseMvpActivity(), + RegisterLoginContract.View { + @BindView(R.id.iv_back) + lateinit var iv_back: ImageView + @BindView(R.id.title) + lateinit var title: TextView + @BindView(R.id.tv_login) + lateinit var tv_login: TextView + @BindView(R.id.tv_register_free) + lateinit var tv_register_free: TextView + @BindView(R.id.tv_register) + lateinit var tv_register: TextView + @BindView(R.id.layout_login) + lateinit var layout_login: LinearLayout + @BindView(R.id.layout_register) + lateinit var layout_register: LinearLayout + @BindView(R.id.et_register_phone_num) + lateinit var et_register_phone_num: EditText + @BindView(R.id.et_register_password) + lateinit var et_register_password: EditText + @BindView(R.id.et_register_confirm_password) + lateinit var et_register_confirm_password: EditText + @BindView(R.id.et_login_phone_num) + lateinit var et_login_phone_num: EditText + @BindView(R.id.et_login_password) + lateinit var et_login_password: EditText + internal var isInRegister = false + lateinit var registerFlag: String + + override val layoutId: Int + get() = R.layout.activity_login_register + + override fun initData(bundle: Bundle?) { + title.text = getString(R.string.login) + iv_back.visibility = View.VISIBLE + } + + @OnClick(R.id.iv_back, R.id.tv_login, R.id.tv_register_free, R.id.tv_register) + fun click(view: View) { + when (view.id) { + R.id.iv_back -> back() + R.id.tv_login -> { + val username = et_login_phone_num.text.toString() + val password = et_login_password.text.toString() + mPresenter!!.login(username, password) + } + R.id.tv_register_free -> { + layout_register.visibility = View.VISIBLE + title.text = getString(R.string.register) + isInRegister = true + } + + R.id.tv_register -> { + registerFlag = "tv_register" + + val username = et_register_phone_num.text.toString().trim { it <= ' ' } + val password = et_register_password.text.toString().trim { it <= ' ' } + val confirmPassword = + et_register_confirm_password.text.toString().trim { it <= ' ' } + + if ("" == username) { + Utils.showToast(getString(R.string.please_input_account), true) + return + } + if (password.length < 6) { + Utils.showToast(getString(R.string.register_password_too_short), true) + return + } + if (password != confirmPassword) { + Utils.showToast(getString(R.string.password_dismatch), true) + return + } + + mPresenter!!.register(username, password, confirmPassword) + } + } + + } + + override fun onKeyDown(keyCode: Int, event: KeyEvent): Boolean { + if (keyCode == KeyEvent.KEYCODE_BACK && event.action == KeyEvent.ACTION_DOWN) { + back() + return true + } + + return super.onKeyDown(keyCode, event) + } + + + private fun back() { + if (isInRegister) { + layout_register.visibility = View.GONE + title.text = getString(R.string.login) + isInRegister = false + } else { + finish() + + } + } + + + public override fun onDestroy() { + super.onDestroy() + } + + override fun initPresenter(): RegisterLoginPresenter { + return RegisterLoginPresenter() + } + + override fun loadData() { + + } + + override fun showRegisterResData(registerResData: RegisterLoginData) { + back() + } + + override fun showLoginResData(data: RegisterLoginData) { + UserUtil.assignUserInfo(data) + SPUtils.setParam(this@RegisterLoginActivity, "username", et_login_phone_num.text.toString()) + SPUtils.setParam(this@RegisterLoginActivity, "password", et_login_password.text.toString()) + finish() + } + + companion object { + + fun startActivity(context: Context) { + val intent = Intent(context, RegisterLoginActivity::class.java) + context.startActivity(intent) + } + } +} diff --git a/app/src/main/java/com/android/learn/activity/SearchResultActivity.kt b/app/src/main/java/com/android/learn/activity/SearchResultActivity.kt new file mode 100644 index 0000000..d89404f --- /dev/null +++ b/app/src/main/java/com/android/learn/activity/SearchResultActivity.kt @@ -0,0 +1,140 @@ +package com.android.learn.activity + +import android.content.Context +import android.content.Intent +import android.os.Bundle +import android.view.View +import android.widget.ImageView +import android.widget.TextView +import androidx.recyclerview.widget.LinearLayoutManager +import androidx.recyclerview.widget.RecyclerView +import butterknife.BindView +import com.android.base.activity.BaseMvpActivity +import com.android.base.mmodel.FeedArticleListData +import com.android.base.mmodel.FeedArticleListData.FeedArticleData +import com.android.learn.R +import com.android.learn.adapter.ArticleQuickAdapter +import com.android.learn.adapter.DividerItemDecoration +import com.android.learn.mcontract.SearchContract +import com.android.learn.mpresenter.SearchPresenter +import com.chad.library.adapter.base.BaseQuickAdapter +import com.scwang.smartrefresh.layout.SmartRefreshLayout +import java.util.* + +class SearchResultActivity : BaseMvpActivity(), + SearchContract.View { + + @BindView(R.id.iv_back) + lateinit var iv_back: ImageView + + @BindView(R.id.title) + lateinit var title: TextView + + @BindView(R.id.tv_empty_knowledge) + lateinit var tv_empty_knowledge: TextView + + @BindView(R.id.article_recyclerview) + lateinit var article_recyclerview: RecyclerView + + @BindView(R.id.smartRefreshLayout) + lateinit var smartRefreshLayout: SmartRefreshLayout + private var feedArticleAdapter: ArticleQuickAdapter? = null + lateinit var keyword: String + internal var TAG = "KnowledgeChildActivity" + + override val layoutId: Int + get() = R.layout.activity_knowledge_article + + override fun initData(bundle: Bundle?) { + keyword = bundle!!.getString("key") as String + title.text = keyword + iv_back.visibility = View.VISIBLE + initSmartRefreshLayout() + initRecyclerView() + } + + + override fun initPresenter(): SearchPresenter { + return SearchPresenter() + } + + override fun loadData() { + mPresenter!!.getFeedArticleList(keyword) + } + + override fun showArticleList(listData: FeedArticleListData) { + val newDataList = listData.datas + if (newDataList.size == 0) { + smartRefreshLayout.finishLoadMoreWithNoMoreData() + } + smartRefreshLayout.finishLoadMore() + + feedArticleAdapter!!.addData(newDataList) + + if (feedArticleAdapter!!.data.size == 0) { + tv_empty_knowledge.visibility = View.VISIBLE + } else + tv_empty_knowledge.visibility = View.GONE + } + + override fun showCollectArticleData(position: Int, feedArticleData: FeedArticleData) { + feedArticleAdapter!!.setData(position, feedArticleData) + } + + override fun showCancelCollectArticleData(position: Int, feedArticleData: FeedArticleData) { + feedArticleAdapter!!.setData(position, feedArticleData) + } + + private fun initRecyclerView() { + val articleDataList = ArrayList() + feedArticleAdapter = ArticleQuickAdapter(this, articleDataList, "KnowledgeChildActivity") + article_recyclerview.addItemDecoration( + DividerItemDecoration( + this, + DividerItemDecoration.VERTICAL_LIST + ) + ) + article_recyclerview.layoutManager = LinearLayoutManager(this) + + //解决数据加载完成后, 没有停留在顶部的问题 + article_recyclerview.isFocusable = false + article_recyclerview.adapter = feedArticleAdapter + feedArticleAdapter!!.onItemClickListener = + BaseQuickAdapter.OnItemClickListener { adapter, view, position -> + val intent = Intent(this@SearchResultActivity, ArticleDetailActivity::class.java) + val bundle = Bundle() + bundle.putString("url", feedArticleAdapter!!.data[position].link) + intent.putExtras(bundle) + startActivity(intent) + } + feedArticleAdapter!!.onItemChildClickListener = + BaseQuickAdapter.OnItemChildClickListener { adapter, view, position -> + if (feedArticleAdapter!!.data[position].isCollect) { + mPresenter!!.cancelCollectArticle(position, feedArticleAdapter!!.data[position]) + } else { + mPresenter!!.addCollectArticle(position, feedArticleAdapter!!.data[position]) + } + } + } + + //初始化下拉刷新控件 + private fun initSmartRefreshLayout() { + smartRefreshLayout.isEnableLoadMore = true + smartRefreshLayout.isEnableRefresh = false + smartRefreshLayout.isEnableScrollContentWhenLoaded = true//是否在加载完成时滚动列表显示新的内容 + smartRefreshLayout.setEnableFooterFollowWhenLoadFinished(true) + smartRefreshLayout.setOnLoadMoreListener { mPresenter!!.onLoadMore(keyword) } + } + + companion object { + + + fun startActivity(context: Context, bundle: Bundle) { + val intent = Intent(context, SearchResultActivity::class.java) + intent.putExtras(bundle) + context.startActivity(intent) + } + } + + +} diff --git a/app/src/main/java/com/android/learn/activity/SettingActivity.kt b/app/src/main/java/com/android/learn/activity/SettingActivity.kt new file mode 100644 index 0000000..ff16dc3 --- /dev/null +++ b/app/src/main/java/com/android/learn/activity/SettingActivity.kt @@ -0,0 +1,129 @@ +package com.android.learn.activity + +import android.content.Context +import android.content.Intent +import android.os.Bundle +import android.view.Gravity +import android.view.View +import android.widget.ImageView +import android.widget.LinearLayout +import android.widget.TextView +import androidx.appcompat.widget.AppCompatCheckBox +import butterknife.BindView +import butterknife.OnClick +import com.android.base.activity.BaseActivity +import com.android.base.event.ChangeNightEvent +import com.android.base.event.LogoutEvent +import com.android.base.event.RestartMainEvent +import com.android.base.thirdframe.retrofit.RetrofitProvider +import com.android.base.utils.SPUtils +import com.android.base.utils.Utils +import com.android.base.utils.account.UserUtil +import com.android.learn.R +import org.greenrobot.eventbus.EventBus +import org.greenrobot.eventbus.Subscribe +import org.greenrobot.eventbus.ThreadMode + + +class SettingActivity : BaseActivity() { + @BindView(R.id.iv_back) + lateinit var iv_back: ImageView + + @BindView(R.id.title) + lateinit var title: TextView + + @BindView(R.id.tv_versionName) + lateinit var tv_versionName: TextView + + @BindView(R.id.help_feedback_layout) + lateinit var help_feedback_layout: LinearLayout + + @BindView(R.id.version_update_layout) + lateinit var version_update_layout: LinearLayout + + @BindView(R.id.language_switch_layout) + lateinit var language_switch_layout: LinearLayout + + @BindView(R.id.font_size_layout) + lateinit var font_size_layout: LinearLayout + + @BindView(R.id.my_logout_layout) + lateinit var my_logout_layout: LinearLayout + + @BindView(R.id.cb_setting_night) + lateinit var cb_setting_night: AppCompatCheckBox + + override val layoutId: Int + get() = R.layout.activity_setting + + public override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + } + + override fun initData(bundle: Bundle?) { + title.text = getString(R.string.my_setting) + iv_back.visibility = View.VISIBLE + tv_versionName.text = Utils.getVersionName(this) + val isNightMode = SPUtils.getParam(this, "nightMode", false) as Boolean + if (isNightMode) { + cb_setting_night.isChecked = true + } else { + cb_setting_night.isChecked = false + } + cb_setting_night.setOnCheckedChangeListener { buttonView, isChecked -> + if (isChecked) + SPUtils.setParam(this@SettingActivity, "nightMode", true) + else + SPUtils.setParam(this@SettingActivity, "nightMode", false) + useNightMode(isChecked) + EventBus.getDefault().post(ChangeNightEvent()) + setStatusBar() + } + EventBus.getDefault().register(this) + } + + + @OnClick( + R.id.help_feedback_layout, + R.id.version_update_layout, + R.id.language_switch_layout, + R.id.font_size_layout, + R.id.my_logout_layout + ) + fun click(view: View) { + + when (view.id) { + R.id.help_feedback_layout -> FeedbackActivity.startActivity(this@SettingActivity) + R.id.language_switch_layout -> LanguageActivity.startActivity(this@SettingActivity) + R.id.font_size_layout -> FontSizeActivity.startActivity(this@SettingActivity) + R.id.my_logout_layout -> { + if (!UserUtil.isLogined) { + Utils.showToast(getString(R.string.user_not_login), true, Gravity.BOTTOM) + return + } + UserUtil.isLogined = false + EventBus.getDefault().post(LogoutEvent()) + RetrofitProvider.instance.sharedPrefsCookiePersistor.clear() + finish() + } + } + } + + @Subscribe(threadMode = ThreadMode.MAIN) + fun onEvent(event: RestartMainEvent) { + finish() + } + + public override fun onDestroy() { + super.onDestroy() + EventBus.getDefault().unregister(this) + } + + companion object { + + fun startActivity(context: Context) { + val intent = Intent(context, SettingActivity::class.java) + context.startActivity(intent) + } + } +} diff --git a/app/src/main/java/com/android/learn/activity/SplashActivity.kt b/app/src/main/java/com/android/learn/activity/SplashActivity.kt new file mode 100644 index 0000000..452a2d0 --- /dev/null +++ b/app/src/main/java/com/android/learn/activity/SplashActivity.kt @@ -0,0 +1,74 @@ +package com.android.learn.activity + +import android.content.Intent +import android.os.Bundle +import android.os.Handler +import android.os.Message +import android.util.Log +import android.view.View +import com.android.learn.MainActivity +import com.android.learn.R +import com.android.base.activity.BaseMvpActivity +import com.android.base.mmodel.RegisterLoginData +import com.android.base.utils.SPUtils +import com.android.base.utils.account.UserUtil +import com.android.learn.mcontract.SplashLoginContract +import com.android.learn.mpresenter.SplashLoginPresenter +import com.jaeger.library.StatusBarUtil + +class SplashActivity : BaseMvpActivity(), SplashLoginContract.View { + + + internal var handler: Handler = object : Handler() { + override fun handleMessage(msg: Message) { + val intent = Intent(this@SplashActivity, MainActivity::class.java) + startActivity(intent) + finish() + } + } + + override val layoutId: Int + get() = R.layout.activity_splash + + public override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + + } + + override fun initData(bundle: Bundle?) {} + + override fun initPresenter(): SplashLoginPresenter { + return SplashLoginPresenter() + } + + override fun loadData() { + val phone_num = SPUtils.getParam(this, "username", "") as String + val password = SPUtils.getParam(this, "password", "") as String + if (phone_num.length > 0 && password.length > 0) { + mPresenter!!.login(phone_num, password) + } else + handler.sendEmptyMessageDelayed(0, 2000) + } + + fun jumpToMainActivity(view: View) { + val intent = Intent(this@SplashActivity, MainActivity::class.java) + startActivity(intent) + handler.removeCallbacksAndMessages(null) + finish() + } + + + override fun showLoginResData(loginResData: RegisterLoginData) { + UserUtil.assignUserInfo(loginResData) + handler.sendEmptyMessageDelayed(0, 1500) + } + + override fun setStatusBar() { + StatusBarUtil.setTranslucent(this,0) + Log.d("gaolei", "setStatusBar") + } + + public override fun onDestroy() { + super.onDestroy() + } +} \ No newline at end of file diff --git a/app/src/main/java/com/android/learn/activity/TodoAddActivity.kt b/app/src/main/java/com/android/learn/activity/TodoAddActivity.kt new file mode 100644 index 0000000..9b1d739 --- /dev/null +++ b/app/src/main/java/com/android/learn/activity/TodoAddActivity.kt @@ -0,0 +1,97 @@ +package com.android.learn.activity + +import android.app.DatePickerDialog +import android.content.Context +import android.content.Intent +import android.os.Bundle +import android.view.View +import android.widget.ImageView +import android.widget.TextView +import butterknife.BindView +import butterknife.OnClick +import com.android.learn.R +import com.android.base.activity.BaseMvpActivity +import com.android.base.event.UpdateTodoEvent +import com.android.base.mmodel.BaseData +import com.android.base.utils.Utils +import com.android.learn.mcontract.TodoAddContract +import com.android.learn.mpresenter.TodoAddPresenter +import com.google.android.material.textfield.TextInputEditText +import org.greenrobot.eventbus.EventBus +import java.util.* + + +class TodoAddActivity : BaseMvpActivity(), TodoAddContract.View { + @BindView(R.id.title) + lateinit var mTitle: TextView + @BindView(R.id.iv_back) + lateinit var iv_back: ImageView + @BindView(R.id.todo_name) + lateinit var et_title: TextInputEditText + @BindView(R.id.todo_des) + lateinit var et_content: TextInputEditText + @BindView(R.id.todo_date) + lateinit var mTodoDate: TextView + + override val layoutId: Int + get() = R.layout.activity_edit_todo + + override fun initData(bundle: Bundle?) { + mTitle.text = getString(R.string.add) + iv_back.visibility = View.VISIBLE + } + + @OnClick(R.id.save_todo, R.id.todo_date) + fun click(view: View) { + when (view.id) { + R.id.save_todo -> { + val map = HashMap() + map["title"] = et_title.text!!.toString() + map["content"] = et_content.text!!.toString() + val date = mTodoDate.text.toString() + if (!date.contains("-")) { + Utils.showToast(getString(R.string.select_time), true) + return + } + map["date"] = date + // map.put("status",0); + map["type"] = 0 + + mPresenter!!.addTodo(map) + } + R.id.todo_date -> { + val calendar = Calendar.getInstance() + + val datePickerDialog = DatePickerDialog(this, DatePickerDialog.OnDateSetListener { datePicker, year, month, dayOfMonth -> mTodoDate.text = String.format("%d-%d-%d", year, month + 1, dayOfMonth) }, calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH)) + datePickerDialog.datePicker.minDate = Date().time + datePickerDialog.show() + } + } + + } + + + override fun initPresenter(): TodoAddPresenter { + return TodoAddPresenter() + } + + override fun loadData() { + + } + + override fun showAddTodo(todoData: BaseData) { + Utils.showToast(getString(R.string.operate_success), true) + EventBus.getDefault().post(UpdateTodoEvent()) + finish() + } + + companion object { + + fun startActivity(context: Context, bundle: Bundle?) { + val intent = Intent(context, TodoAddActivity::class.java) + if (bundle != null) + intent.putExtras(bundle) + context.startActivity(intent) + } + } +} diff --git a/app/src/main/java/com/android/learn/activity/TodoEditActivity.kt b/app/src/main/java/com/android/learn/activity/TodoEditActivity.kt new file mode 100644 index 0000000..d95132d --- /dev/null +++ b/app/src/main/java/com/android/learn/activity/TodoEditActivity.kt @@ -0,0 +1,100 @@ +package com.android.learn.activity + +import android.app.DatePickerDialog +import android.content.Context +import android.content.Intent +import android.os.Bundle +import android.view.View +import android.widget.ImageView +import android.widget.TextView +import butterknife.BindView +import butterknife.OnClick +import com.android.learn.R +import com.android.base.activity.BaseMvpActivity +import com.android.base.event.UpdateTodoEvent +import com.android.base.mmodel.BaseData +import com.android.base.mmodel.TodoData.DatasBean +import com.android.base.utils.Utils +import com.android.learn.mcontract.TodoEditContract +import com.android.learn.mpresenter.TodoEditPresenter +import com.google.android.material.textfield.TextInputEditText +import org.greenrobot.eventbus.EventBus +import java.util.* + + +class TodoEditActivity : BaseMvpActivity(), TodoEditContract.View { + @BindView(R.id.title) + lateinit var mTitle: TextView + @BindView(R.id.iv_back) + lateinit var iv_back: ImageView + @BindView(R.id.todo_name) + lateinit var et_title: TextInputEditText + @BindView(R.id.todo_des) + lateinit var et_content: TextInputEditText + @BindView(R.id.todo_date) + lateinit var mTodoDate: TextView + lateinit var datasBean: DatasBean + + override val layoutId: Int + get() = R.layout.activity_edit_todo + + override fun initData(bundle: Bundle?) { + mTitle.text = getString(R.string.detail) + iv_back.visibility = View.VISIBLE + datasBean = bundle!!.getSerializable("todo_item") as DatasBean + et_title.setText(datasBean.title) + et_content.setText(datasBean.content) + mTodoDate.text = datasBean.dateStr + } + + @OnClick(R.id.save_todo, R.id.todo_date) + fun click(view: View) { + when (view.id) { + R.id.save_todo -> { + val map = HashMap() + map["title"] = et_title.text!!.toString() + map["content"] = et_content.text!!.toString() + val date = mTodoDate.text.toString() + if (!date.contains("-")) { + Utils.showToast(getString(R.string.select_time), true) + return + } + map["date"] = date + map["status"] = 0 + map["type"] = 0 + + mPresenter!!.updateTodo(datasBean.id, map) + } + R.id.todo_date -> { + val calendar = Calendar.getInstance() + + val datePickerDialog = DatePickerDialog(this, DatePickerDialog.OnDateSetListener { datePicker, year, month, dayOfMonth -> mTodoDate!!.text = String.format("%d-%d-%d", year, month + 1, dayOfMonth) }, calendar.get(Calendar.YEAR), calendar.get(Calendar.MONTH), calendar.get(Calendar.DAY_OF_MONTH)) + datePickerDialog.datePicker.minDate = Date().time + datePickerDialog.show() + } + } + } + + override fun initPresenter(): TodoEditPresenter { + return TodoEditPresenter() + } + + override fun loadData() { + + } + + override fun showUpdateTodo(todoData: BaseData) { + Utils.showToast(getString(R.string.operate_success), true) + EventBus.getDefault().post(UpdateTodoEvent()) + finish() + } + + companion object { + + fun startActivity(context: Context, bundle: Bundle) { + val intent = Intent(context, TodoEditActivity::class.java) + intent.putExtras(bundle) + context.startActivity(intent) + } + } +} diff --git a/app/src/main/java/com/android/learn/adapter/ArticleQuickAdapter.kt b/app/src/main/java/com/android/learn/adapter/ArticleQuickAdapter.kt new file mode 100644 index 0000000..eff495c --- /dev/null +++ b/app/src/main/java/com/android/learn/adapter/ArticleQuickAdapter.kt @@ -0,0 +1,48 @@ +package com.android.learn.adapter + +import android.content.Context +import android.text.TextUtils +import android.view.View +import android.widget.TextView +import com.android.base.mmodel.FeedArticleListData.FeedArticleData +import com.android.learn.R +import com.chad.library.adapter.base.BaseQuickAdapter +import com.chad.library.adapter.base.BaseViewHolder + +class ArticleQuickAdapter( + val context: Context?, + internal var list: List, + internal var fromWhere: String +) : BaseQuickAdapter(R.layout.item_article_list, list) { + + fun getPosById(id: Int): Int { + val size = list.size + for (i in 0 until size) { + if (id == list[i].id) + return i + } + return -1 + } + + override fun convert(helper: BaseViewHolder, articleData: FeedArticleData) { + helper.setText(R.id.tv_item_title, articleData.title) + .setText(R.id.tv_article_time, articleData.niceDate) + .setText(R.id.tv_article_author, articleData.author) + helper.addOnClickListener(R.id.iv_article_collect) + if ("HomeFragment" == fromWhere || "KnowledgeChildActivity" == fromWhere || "WechatSubFragment" == fromWhere) { + if (articleData.isCollect) { + helper.setImageResource(R.id.iv_article_collect, R.drawable.icon_collect_select) + } else { + helper.setImageResource(R.id.iv_article_collect, R.drawable.icon_collect_unselect) + } + } + if ("MyCollectActivity" == fromWhere) { + helper.setImageResource(R.id.iv_article_collect, R.drawable.icon_collect_select) + } + if (TextUtils.isEmpty(articleData.author)) { + helper.getView(R.id.tv_article_author).visibility = View.GONE + } else { + helper.getView(R.id.tv_article_author).visibility = View.VISIBLE + } + } +} diff --git a/app/src/main/java/com/android/learn/adapter/DividerItemDecoration.kt b/app/src/main/java/com/android/learn/adapter/DividerItemDecoration.kt new file mode 100644 index 0000000..ced1896 --- /dev/null +++ b/app/src/main/java/com/android/learn/adapter/DividerItemDecoration.kt @@ -0,0 +1,93 @@ +package com.android.learn.adapter + +import android.content.Context +import android.content.res.TypedArray +import android.graphics.Canvas +import android.graphics.Rect +import android.graphics.drawable.Drawable +import androidx.recyclerview.widget.RecyclerView +import android.util.Log +import android.view.View +import androidx.recyclerview.widget.LinearLayoutManager + +class DividerItemDecoration(context: Context, orientation: Int) : RecyclerView.ItemDecoration() { + + private val mDivider: Drawable? + + private var mOrientation: Int = 0 + + init { + val a = context.obtainStyledAttributes(ATTRS) + mDivider = a.getDrawable(0) + a.recycle() + setOrientation(orientation) + } + + fun setOrientation(orientation: Int) { + if (orientation != HORIZONTAL_LIST && orientation != VERTICAL_LIST) { + throw IllegalArgumentException("invalid orientation") + } + mOrientation = orientation + } + + override fun onDraw(c: Canvas, parent: RecyclerView) { + + if (mOrientation == VERTICAL_LIST) { + drawVertical(c, parent) + } else { + drawHorizontal(c, parent) + } + + } + + + fun drawVertical(c: Canvas, parent: RecyclerView) { + val left = parent.paddingLeft + val right = parent.width - parent.paddingRight + + val childCount = parent.childCount + for (i in 0 until childCount) { + val child = parent.getChildAt(i) + val v = androidx.recyclerview.widget.RecyclerView(parent.context) + val params = child + .layoutParams as RecyclerView.LayoutParams + val top = child.bottom + params.bottomMargin + val bottom = top + mDivider!!.intrinsicHeight + mDivider.setBounds(left, top, right, bottom) + mDivider.draw(c) + } + } + + fun drawHorizontal(c: Canvas, parent: RecyclerView) { + val top = parent.paddingTop + val bottom = parent.height - parent.paddingBottom + + val childCount = parent.childCount + for (i in 0 until childCount) { + val child = parent.getChildAt(i) + val params = child + .layoutParams as RecyclerView.LayoutParams + val left = child.right + params.rightMargin + val right = left + mDivider!!.intrinsicHeight + mDivider.setBounds(left, top, right, bottom) + mDivider.draw(c) + } + } + + override fun getItemOffsets(outRect: Rect, itemPosition: Int, parent: RecyclerView) { + if (mOrientation == VERTICAL_LIST) { + outRect.set(0, 0, 0, mDivider!!.intrinsicHeight) + } else { + outRect.set(0, 0, mDivider!!.intrinsicWidth, 0) + } + } + + companion object { + + private val ATTRS = intArrayOf(android.R.attr.listDivider) + + val HORIZONTAL_LIST = LinearLayoutManager.HORIZONTAL + + val VERTICAL_LIST = LinearLayoutManager.VERTICAL + } +} \ No newline at end of file diff --git a/app/src/main/java/com/android/learn/adapter/HorizontalPagerAdapter.kt b/app/src/main/java/com/android/learn/adapter/HorizontalPagerAdapter.kt new file mode 100644 index 0000000..0203de2 --- /dev/null +++ b/app/src/main/java/com/android/learn/adapter/HorizontalPagerAdapter.kt @@ -0,0 +1,78 @@ +package com.android.learn.adapter + +import android.content.Context +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import android.widget.TextView +import androidx.recyclerview.widget.LinearLayoutManager +import androidx.recyclerview.widget.RecyclerView +import androidx.viewpager.widget.PagerAdapter +import com.android.base.mmodel.TreeBean +import com.android.learn.R +import com.android.learn.activity.KnowledgeChildActivity +import com.chad.library.adapter.base.BaseQuickAdapter +import com.chad.library.adapter.base.BaseViewHolder + + +class HorizontalPagerAdapter(private val mContext: Context?, mList: List) : + PagerAdapter() { + private val mLayoutInflater: LayoutInflater + private var mList: List = ArrayList() + + init { + this.mList = mList + mLayoutInflater = LayoutInflater.from(mContext) + } + + fun setList(list: List) { + mList = list + } + + override fun getCount(): Int { + return mList.size + } + + override fun instantiateItem(container: ViewGroup, position: Int): Any { + val view: View + val page: Int + view = mLayoutInflater.inflate(R.layout.item_tree, container, false) + val txt = view.findViewById(R.id.txt_item) as TextView + val treeBean = mList[position] + txt.text = treeBean.name + val recyclerView = view.findViewById(R.id.recyclerView) + recyclerView.layoutManager = LinearLayoutManager(mContext) + val adapter = ChildrenAdapter(treeBean.children) + recyclerView.adapter = adapter + adapter.onItemClickListener = + BaseQuickAdapter.OnItemClickListener { adapter, view, position -> + KnowledgeChildActivity.startTreeChildrenActivity( + mContext, + treeBean.children[position].id, + treeBean.children[position].name + ) + } + container.addView(view) + return view + } + + override fun destroyItem(container: ViewGroup, position: Int, `object`: Any) { + container.removeView(`object` as View) + } + + override fun isViewFromObject(view: View, `object`: Any): Boolean { + return view == `object` + } + + override fun getItemPosition(`object`: Any): Int { + return PagerAdapter.POSITION_NONE + } + + private inner class ChildrenAdapter(data: List?) : + BaseQuickAdapter(R.layout.item_tree_children, data) { + + override fun convert(helper: BaseViewHolder, item: TreeBean.ChildrenBean) { + helper.setText(R.id.tv, item.name) + } + } +} diff --git a/app/src/main/java/com/android/learn/adapter/MainTabAdapter.kt b/app/src/main/java/com/android/learn/adapter/MainTabAdapter.kt new file mode 100644 index 0000000..4e15180 --- /dev/null +++ b/app/src/main/java/com/android/learn/adapter/MainTabAdapter.kt @@ -0,0 +1,18 @@ +package com.android.learn.adapter + +import androidx.fragment.app.Fragment +import androidx.fragment.app.FragmentManager +import androidx.fragment.app.FragmentPagerAdapter + + +class MainTabAdapter(fm: FragmentManager, internal var fragments: List) : FragmentPagerAdapter(fm) { + + override fun getItem(position: Int): Fragment { + return fragments[position] + } + + override fun getCount(): Int { + return fragments.size + } +} + diff --git a/app/src/main/java/com/android/learn/adapter/ProjectQuickAdapter.kt b/app/src/main/java/com/android/learn/adapter/ProjectQuickAdapter.kt new file mode 100644 index 0000000..73af9d3 --- /dev/null +++ b/app/src/main/java/com/android/learn/adapter/ProjectQuickAdapter.kt @@ -0,0 +1,28 @@ +package com.android.learn.adapter + +import android.content.Context +import android.text.TextUtils +import android.view.View +import android.widget.ImageView +import android.widget.TextView +import com.android.learn.R +import com.android.base.mmodel.ProjectListData.ProjectData +import com.android.base.thirdframe.glide.ImageLoader +import com.chad.library.adapter.base.BaseQuickAdapter +import com.chad.library.adapter.base.BaseViewHolder + +class ProjectQuickAdapter(internal var context: Context?, list: List) : BaseQuickAdapter(R.layout.item_project_list, list) { + + override fun convert(helper: BaseViewHolder, projectInfo: ProjectData) { + helper.setText(R.id.tv_project_title, projectInfo.title) + .setText(R.id.tv_project_content, projectInfo.desc) + .setText(R.id.tv_project_time, projectInfo.niceDate) + .setText(R.id.tv_project_author, projectInfo.author) + if (TextUtils.isEmpty(projectInfo.author)) { + helper.getView(R.id.tv_project_author).visibility = View.GONE + } else { + helper.getView(R.id.tv_project_author).visibility = View.VISIBLE + } + ImageLoader.instance.load(context!!, projectInfo.envelopePic, helper.getView(R.id.iv_project) as ImageView) + } +} diff --git a/app/src/main/java/com/android/learn/adapter/SearchRecordAdapter.kt b/app/src/main/java/com/android/learn/adapter/SearchRecordAdapter.kt new file mode 100644 index 0000000..06f4cdb --- /dev/null +++ b/app/src/main/java/com/android/learn/adapter/SearchRecordAdapter.kt @@ -0,0 +1,19 @@ +package com.android.learn.adapter + +import android.content.Context + +import com.android.learn.R +import com.android.base.db.SearchRecord +import com.chad.library.adapter.base.BaseQuickAdapter +import com.chad.library.adapter.base.BaseViewHolder + +/** + * Created by yuepeng on 2017/6/9. + */ + +class SearchRecordAdapter(internal var context: Context, internal var list: List) : BaseQuickAdapter(R.layout.item_search_record, list) { + + override fun convert(helper: BaseViewHolder, searchRecord: SearchRecord) { + helper.setText(R.id.tv_history_item, searchRecord.name) + } +} diff --git a/app/src/main/java/com/android/learn/adapter/TodoQuickAdapter.kt b/app/src/main/java/com/android/learn/adapter/TodoQuickAdapter.kt new file mode 100644 index 0000000..50089d5 --- /dev/null +++ b/app/src/main/java/com/android/learn/adapter/TodoQuickAdapter.kt @@ -0,0 +1,34 @@ +package com.android.learn.adapter + +import android.content.Context +import android.graphics.Color +import android.view.View +import android.widget.ImageView +import android.widget.TextView + +import com.android.learn.R +import com.android.base.mmodel.TodoData.DatasBean +import com.chad.library.adapter.base.BaseQuickAdapter +import com.chad.library.adapter.base.BaseViewHolder + +class TodoQuickAdapter(internal var context: Context?, internal var list: List, internal var position: Int) : BaseQuickAdapter(R.layout.todo_item_view, list) { + + + override fun convert(helper: BaseViewHolder, bean: DatasBean) { + helper.setText(R.id.item_name, bean.title) + helper.setText(R.id.item_des, bean.content) + helper.setText(R.id.tv_todo_time, bean.dateStr) + if (position == 1) { + val tv_todo_time = helper.getView(R.id.tv_todo_time) + val iv_item_todo = helper.getView(R.id.iv_item_todo) + tv_todo_time.setTextColor(Color.parseColor("#E4A340")) + tv_todo_time.setBackgroundColor(Color.parseColor("#FFFAF1")) + iv_item_todo.setImageResource(R.drawable.icon_done) + val tv_item_done_time = helper.getView(R.id.tv_item_done_time) + tv_item_done_time.visibility = View.VISIBLE + tv_item_done_time.text = context?.getString(R.string.todo_finish_time) + bean.completeDateStr + } + helper.addOnClickListener(R.id.iv_item_todo) + helper.addOnClickListener(R.id.iv_item_delete) + } +} diff --git a/app/src/main/java/com/android/learn/fragment/HomeFragment.kt b/app/src/main/java/com/android/learn/fragment/HomeFragment.kt new file mode 100644 index 0000000..be4a340 --- /dev/null +++ b/app/src/main/java/com/android/learn/fragment/HomeFragment.kt @@ -0,0 +1,238 @@ +package com.android.learn.fragment + +import android.content.Context +import android.content.Intent +import android.os.Bundle +import androidx.core.widget.NestedScrollView +import androidx.recyclerview.widget.RecyclerView +import android.view.View +import android.widget.ImageView +import androidx.recyclerview.widget.LinearLayoutManager +import butterknife.BindView +import com.android.learn.R +import com.android.learn.activity.ArticleDetailActivity +import com.android.learn.adapter.ArticleQuickAdapter +import com.android.learn.adapter.DividerItemDecoration +import com.android.base.event.CancelCollectEvent +import com.android.base.event.LoginEvent +import com.android.base.fragment.BaseMvpFragment +import com.android.base.mmodel.BannerListData +import com.android.base.mmodel.FeedArticleListData +import com.android.base.mmodel.FeedArticleListData.FeedArticleData +import com.android.base.view.CustomProgressDialog +import com.android.learn.mcontract.HomeContract +import com.android.learn.mpresenter.HomePresenter +import com.bumptech.glide.Glide +import com.chad.library.adapter.base.BaseQuickAdapter +import com.scwang.smartrefresh.layout.SmartRefreshLayout +import com.scwang.smartrefresh.layout.api.RefreshLayout +import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener +import com.youth.banner.Banner +import com.youth.banner.BannerConfig +import org.greenrobot.eventbus.EventBus +import org.greenrobot.eventbus.Subscribe +import org.greenrobot.eventbus.ThreadMode +import java.util.* + + +class HomeFragment : BaseMvpFragment(), HomeContract.View { + + @BindView(R.id.article_recyclerview) + lateinit var article_recyclerview: RecyclerView + @BindView(R.id.scrollview_nested) + lateinit var scrollview_nested: NestedScrollView + @BindView(R.id.banner) + lateinit var banner: Banner + @BindView(R.id.smartRefreshLayout_home) + lateinit var smartRefreshLayout: SmartRefreshLayout + + lateinit var articleDataList: List + private var feedArticleAdapter: ArticleQuickAdapter? = null + + override fun initData(bundle: Bundle?) { + + EventBus.getDefault().register(this) + } + + override fun initView(view: View) { + initSmartRefreshLayout() + initRecyclerView() + } + + override fun setContentLayout(): Int { + return R.layout.fragment_home + } + + override fun reload() { + mPresenter!!.getFeedArticleList(0) + mPresenter!!.getBannerInfo() + } + + override fun initPresenter(): HomePresenter { + return HomePresenter() + } + + override fun loadData() { + CustomProgressDialog.show(activity) + mPresenter!!.getFeedArticleList(0) + mPresenter!!.getBannerInfo() + + } + + + override fun showArticleList(itemBeans: FeedArticleListData, isRefresh: Boolean) { + val newDataList = itemBeans.datas + if (newDataList.size == 0) { + smartRefreshLayout.finishLoadMoreWithNoMoreData() + return + } + smartRefreshLayout.finishLoadMore() + + feedArticleAdapter!!.addData(newDataList) + + } + + override fun showBannerList(itemBeans: BannerListData) { + + val linkList = ArrayList() + val imageList = ArrayList() + val titleList = ArrayList() + val size = itemBeans.data.size + + for (i in 0 until size) { + imageList.add(itemBeans.data[i].imagePath) + titleList.add(itemBeans.data[i].title) + linkList.add(itemBeans.data[i].url) + } + banner.setImageLoader(object : com.youth.banner.loader.ImageLoader() { + override fun displayImage(context: Context, path: Any, imageView: ImageView) { + Glide.with(activity!!).load(path).into(imageView) + } + }) + + //设置样式,默认为:Banner.NOT_INDICATOR(不显示指示器和标题) + //可选样式如下: + //1. Banner.CIRCLE_INDICATOR 显示圆形指示器 + //2. Banner.NUM_INDICATOR 显示数字指示器 + //3. Banner.NUM_INDICATOR_TITLE 显示数字指示器和标题 + //4. Banner.CIRCLE_INDICATOR_TITLE 显示圆形指示器和标题 + banner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR)//设置圆形指示器与标题 + //设置banner动画效果 + // Tansformer.CubeIn + // Transformer.CubeOut + // Transformer.DepthPage + // Transformer.FlipHorizontal + // Transformer.FlipVertical + // banner.setBannerAnimation(Transformer.FlipHorizontal); + banner.setIndicatorGravity(BannerConfig.CENTER)//设置指示器位置 + banner.setDelayTime(4000)//设置轮播时间 + banner.setImages(imageList)//设置图片源 + banner.setBannerTitles(titleList)//设置标题源 + + banner.start() + + + banner.setOnBannerListener { position -> + val intent = Intent(activity, ArticleDetailActivity::class.java) + val bundle = Bundle() + bundle.putString("url", linkList[position]) + intent.putExtras(bundle) + startActivity(intent) + } + } + + private fun initRecyclerView() { + articleDataList = ArrayList() + feedArticleAdapter = ArticleQuickAdapter(activity, articleDataList, "HomeFragment") + article_recyclerview.addItemDecoration(DividerItemDecoration(activity!!, + DividerItemDecoration.VERTICAL_LIST)) + article_recyclerview.itemAnimator = null + article_recyclerview.layoutManager = object : LinearLayoutManager(activity) { + override fun canScrollVertically(): Boolean { + //解决ScrollView里存在多个RecyclerView时滑动卡顿的问题 + //如果你的RecyclerView是水平滑动的话可以重写canScrollHorizontally方法 + return false + } + } + //解决数据加载不完的问题 + // project_recyclerview.setNestedScrollingEnabled(false); + // project_recyclerview.setHasFixedSize(true); + // //解决数据加载完成后, 没有停留在顶部的问题 + article_recyclerview.isFocusable = false + article_recyclerview.adapter = feedArticleAdapter + feedArticleAdapter!!.onItemClickListener = BaseQuickAdapter.OnItemClickListener { adapter, view, position -> + val intent = Intent(activity, ArticleDetailActivity::class.java) + val bundle = Bundle() + bundle.putString("url", articleDataList[position].link) + intent.putExtras(bundle) + startActivity(intent) + } + feedArticleAdapter!!.onItemChildClickListener = BaseQuickAdapter.OnItemChildClickListener { adapter, view, position -> + if (feedArticleAdapter!!.data[position].isCollect) { + mPresenter!!.cancelCollectArticle(position, feedArticleAdapter!!.data[position]) + } else { + mPresenter!!.addCollectArticle(position, feedArticleAdapter!!.data[position]) + } + } + } + + //初始化下拉刷新控件 + private fun initSmartRefreshLayout() { + smartRefreshLayout.isEnableLoadMore = true + smartRefreshLayout.isEnableRefresh = false + smartRefreshLayout.isEnableScrollContentWhenLoaded = true//是否在加载完成时滚动列表显示新的内容 + smartRefreshLayout.setEnableFooterFollowWhenLoadFinished(true) + smartRefreshLayout.setOnRefreshLoadMoreListener(object : OnRefreshLoadMoreListener { + override fun onLoadMore(refreshLayout: RefreshLayout) { + mPresenter!!.onLoadMore() + } + + override fun onRefresh(refreshLayout: RefreshLayout) { + mPresenter!!.onRefreshMore() + } + }) + } + + fun scrollToTop() { + scrollview_nested.scrollTo(0, 0) + } + + override fun onResume() { + super.onResume() + + } + + override fun showCollectArticleData(position: Int, feedArticleData: FeedArticleData) { + feedArticleAdapter!!.setData(position, feedArticleData) + } + + override fun showCancelCollectArticleData(position: Int, feedArticleData: FeedArticleData) { + feedArticleAdapter!!.setData(position, feedArticleData) + } + + override fun showCancelCollectArticleData(id: Int) { + val position = feedArticleAdapter!!.getPosById(id) + if (position == -1) return + val feedArticleData = articleDataList[position] + feedArticleData.isCollect = false + feedArticleAdapter!!.setData(position, feedArticleData) + } + + @Subscribe(threadMode = ThreadMode.MAIN) + fun onEvent(event: CancelCollectEvent) { + mPresenter!!.cancelCollectArticle(event.id) + } + + @Subscribe(threadMode = ThreadMode.MAIN) + fun onEvent(accountEvent: LoginEvent) { + feedArticleAdapter!!.data.clear() + feedArticleAdapter!!.notifyDataSetChanged() + mPresenter!!.getFeedArticleList(0) + mPresenter!!.mCurrentPage = 0 + } + + override fun onDestroy() { + super.onDestroy() + EventBus.getDefault().unregister(this) + } +} diff --git a/app/src/main/java/com/android/learn/fragment/KnowledgeFragment.kt b/app/src/main/java/com/android/learn/fragment/KnowledgeFragment.kt new file mode 100644 index 0000000..26d04fb --- /dev/null +++ b/app/src/main/java/com/android/learn/fragment/KnowledgeFragment.kt @@ -0,0 +1,55 @@ +package com.android.learn.fragment + +import android.os.Bundle +import android.os.Handler +import android.os.Message +import android.view.View + +import com.android.learn.R +import com.android.learn.adapter.HorizontalPagerAdapter +import com.android.base.fragment.BaseMvpFragment +import com.android.base.mmodel.TreeBean +import com.android.base.view.CustomProgressDialog +import com.android.learn.mcontract.KnowledgeContract +import com.android.learn.mpresenter.KnowledgePresenter +import com.gigamole.infinitecycleviewpager.HorizontalInfiniteCycleViewPager + +import butterknife.BindView + + +class KnowledgeFragment : BaseMvpFragment(), + KnowledgeContract.View { + + @BindView(R.id.hicvp) + lateinit var horizontalInfiniteCycleViewPager: HorizontalInfiniteCycleViewPager + private var mPagerAdapter: HorizontalPagerAdapter? = null + + override fun initData(bundle: Bundle?) {} + + override fun initView(view: View) {} + + override fun setContentLayout(): Int { + return R.layout.fragment_knowledge + } + + override fun reload() {} + + override fun initPresenter(): KnowledgePresenter { + return KnowledgePresenter() + } + + override fun loadData() { + + CustomProgressDialog.show(activity) + mPresenter!!.getKnowledge() + } + + override fun showKnowledge(data: List) { + mPagerAdapter = HorizontalPagerAdapter(context, data) + horizontalInfiniteCycleViewPager.adapter = mPagerAdapter + if (data.size > 1) + horizontalInfiniteCycleViewPager.currentItem = 1 + horizontalInfiniteCycleViewPager.post { CustomProgressDialog.cancel() } + + } +} diff --git a/app/src/main/java/com/android/learn/fragment/ProjectFragment.kt b/app/src/main/java/com/android/learn/fragment/ProjectFragment.kt new file mode 100644 index 0000000..867a209 --- /dev/null +++ b/app/src/main/java/com/android/learn/fragment/ProjectFragment.kt @@ -0,0 +1,113 @@ +package com.android.learn.fragment + +import android.content.Intent +import android.os.Bundle +import android.view.View +import androidx.recyclerview.widget.LinearLayoutManager +import androidx.recyclerview.widget.RecyclerView +import butterknife.BindView +import com.android.base.fragment.BaseMvpFragment +import com.android.base.mmodel.ProjectListData +import com.android.base.view.CustomProgressDialog +import com.android.learn.R +import com.android.learn.activity.ArticleDetailActivity +import com.android.learn.adapter.DividerItemDecoration +import com.android.learn.adapter.ProjectQuickAdapter +import com.android.learn.mcontract.ProjectContract +import com.android.learn.mpresenter.ProjectPresenter +import com.scwang.smartrefresh.layout.SmartRefreshLayout +import com.scwang.smartrefresh.layout.api.RefreshLayout +import com.scwang.smartrefresh.layout.listener.OnRefreshLoadMoreListener + + +class ProjectFragment : BaseMvpFragment(), + ProjectContract.View { + + @BindView(R.id.project_recyclerview) + lateinit var project_recyclerview: RecyclerView + + @BindView(R.id.smartRefreshLayout_home) + lateinit var smartRefreshLayout: SmartRefreshLayout + lateinit var projectAdapter: ProjectQuickAdapter + lateinit var projectDataList: List + + override fun initData(bundle: Bundle?) { + + } + + override fun initView(view: View) { + initSmartRefreshLayout() + initRecyclerView() + } + + override fun setContentLayout(): Int { + return R.layout.fragment_project + } + + override fun reload() { + mPresenter!!.getProjectInfo(1, 294) + } + + override fun initPresenter(): ProjectPresenter { + return ProjectPresenter() + } + + override fun loadData() { + CustomProgressDialog.show(activity) + mPresenter!!.getProjectInfo(1, 294) + } + + + override fun showProjectList(listData: ProjectListData, isRefresh: Boolean) { + val newDataList = listData.data.datas + if (newDataList.size == 0) { + smartRefreshLayout.finishLoadMoreWithNoMoreData() + return + } + smartRefreshLayout.finishLoadMore() + projectAdapter.addData(newDataList) + + } + + private fun initRecyclerView() { + projectDataList = ArrayList() + projectAdapter = ProjectQuickAdapter(activity, projectDataList) + project_recyclerview.addItemDecoration( + DividerItemDecoration( + activity!!, + DividerItemDecoration.VERTICAL_LIST + ) + ) + project_recyclerview.layoutManager = LinearLayoutManager(activity) + project_recyclerview.adapter = projectAdapter + + projectAdapter.setOnItemClickListener { adapter, view, position -> + val intent = Intent(activity, ArticleDetailActivity::class.java) + val bundle = Bundle() + bundle.putString("url", projectDataList[position].link) + intent.putExtras(bundle) + startActivity(intent) + } + } + + //初始化下拉刷新控件 + private fun initSmartRefreshLayout() { + smartRefreshLayout.isEnableLoadMore = true + smartRefreshLayout.isEnableRefresh = false + smartRefreshLayout.isEnableScrollContentWhenLoaded = true//是否在加载完成时滚动列表显示新的内容 + smartRefreshLayout.setEnableFooterFollowWhenLoadFinished(true) + smartRefreshLayout.setOnRefreshLoadMoreListener(object : OnRefreshLoadMoreListener { + override fun onLoadMore(refreshLayout: RefreshLayout) { + mPresenter!!.onLoadMore(294) + } + + override fun onRefresh(refreshLayout: RefreshLayout) { + mPresenter!!.onRefreshMore(294) + } + }) + } + + fun scrollToTop() { + project_recyclerview.scrollToPosition(0) + } +} diff --git a/app/src/main/java/com/android/learn/fragment/TodoFragment.kt b/app/src/main/java/com/android/learn/fragment/TodoFragment.kt new file mode 100644 index 0000000..754626e --- /dev/null +++ b/app/src/main/java/com/android/learn/fragment/TodoFragment.kt @@ -0,0 +1,204 @@ +package com.android.learn.fragment + +import android.os.Bundle +import androidx.recyclerview.widget.RecyclerView +import android.view.View +import android.widget.TextView +import androidx.recyclerview.widget.LinearLayoutManager +import butterknife.BindView +import com.android.learn.R +import com.android.learn.activity.TodoEditActivity +import com.android.learn.adapter.DividerItemDecoration +import com.android.learn.adapter.TodoQuickAdapter +import com.android.base.event.UpdateDoneEvent +import com.android.base.event.UpdateTodoEvent +import com.android.base.fragment.BaseMvpFragment +import com.android.base.mmodel.BaseData +import com.android.base.mmodel.TodoData +import com.android.base.mmodel.TodoData.DatasBean +import com.android.base.view.CustomProgressDialog +import com.android.learn.mcontract.TodoContract +import com.android.learn.mpresenter.TodoPresenter +import com.chad.library.adapter.base.BaseQuickAdapter +import com.scwang.smartrefresh.layout.SmartRefreshLayout +import org.greenrobot.eventbus.EventBus +import org.greenrobot.eventbus.Subscribe +import org.greenrobot.eventbus.ThreadMode +import java.util.* + + +class TodoFragment : BaseMvpFragment(), TodoContract.View { + @BindView(R.id.article_recyclerview) + lateinit var article_recyclerview: RecyclerView + @BindView(R.id.smartRefreshLayout) + lateinit var smartRefreshLayout: SmartRefreshLayout + @BindView(R.id.tv_empty_todo) + lateinit var tv_empty_todo: TextView + lateinit var todoList: List + private var todoAdapter: TodoQuickAdapter? = null + internal var fragmentPosition: Int = 0 + internal var clickId: Int = 0 + + + override fun initData(bundle: Bundle?) { + fragmentPosition = bundle!!.getInt("position", 0) + initSmartRefreshLayout() + initRecyclerView() + } + + override fun initView(view: View) { + EventBus.getDefault().register(this) + } + + override fun setContentLayout(): Int { + return R.layout.fragment_todo + } + + override fun reload() { + + } + + override fun initPresenter(): TodoPresenter { + return TodoPresenter() + } + + override fun loadData() { + CustomProgressDialog.show(activity) + if (fragmentPosition == 0) + mPresenter!!.getListNotDone(0) + if (fragmentPosition == 1) + mPresenter!!.getListDone(0) + } + + + private fun initRecyclerView() { + todoList = ArrayList() + todoAdapter = TodoQuickAdapter(activity, todoList, fragmentPosition) + article_recyclerview.addItemDecoration(DividerItemDecoration(activity!!, + DividerItemDecoration.VERTICAL_LIST)) + article_recyclerview.layoutManager = LinearLayoutManager(activity) + + //解决数据加载完成后, 没有停留在顶部的问题 + article_recyclerview.isFocusable = false + article_recyclerview.adapter = todoAdapter + + todoAdapter!!.onItemClickListener = BaseQuickAdapter.OnItemClickListener { adapter, view, position -> + var datasBean: DatasBean? = null + if (fragmentPosition == 0) { + datasBean = todoAdapter!!.data[position] + val bundle = Bundle() + bundle.putSerializable("todo_item", datasBean) + TodoEditActivity.startActivity(activity!!, bundle) + } + } + todoAdapter!!.onItemChildClickListener = BaseQuickAdapter.OnItemChildClickListener { adapter, view, position -> + val datasBean = todoAdapter!!.data[position] + when (view.id) { + R.id.iv_item_todo -> { + if (fragmentPosition == 0) { + clickId = datasBean.id + mPresenter!!.updateTodoStatus(clickId, 1) + todoAdapter!!.remove(position) + } + if (fragmentPosition == 1) { + clickId = datasBean.id + mPresenter!!.updateTodoStatus(clickId, 0) + todoAdapter!!.remove(position) + } + } + R.id.iv_item_delete -> { + mPresenter!!.deleteTodo(datasBean.id) + todoAdapter!!.remove(position) + } + } + } + } + + //初始化下拉刷新控件 + private fun initSmartRefreshLayout() { + smartRefreshLayout.isEnableLoadMore = true + smartRefreshLayout.isEnableRefresh = false + smartRefreshLayout.isEnableScrollContentWhenLoaded = true//是否在加载完成时滚动列表显示新的内容 + smartRefreshLayout.setEnableFooterFollowWhenLoadFinished(true) + smartRefreshLayout.setOnLoadMoreListener { + if (fragmentPosition == 0) + mPresenter!!.getListNotDone(0) + if (fragmentPosition == 1) + mPresenter!!.getListDone(0) + } + } + + override fun onDestroy() { + super.onDestroy() + EventBus.getDefault().unregister(this) + } + + override fun showListNotDone(todoData: TodoData) { + val newDataList = todoData.datas + if (newDataList.size == 0) { + smartRefreshLayout.finishLoadMoreWithNoMoreData() + } + smartRefreshLayout.finishLoadMore() + todoAdapter!!.addData(newDataList) + + if (todoAdapter!!.data.size == 0) { + tv_empty_todo.visibility = View.VISIBLE + + } else + tv_empty_todo.visibility = View.GONE + } + + override fun showListDone(todoData: TodoData) { + val newDataList = todoData.datas + if (newDataList.size == 0) { + smartRefreshLayout.finishLoadMoreWithNoMoreData() + } + smartRefreshLayout.finishLoadMore() + + todoAdapter!!.addData(newDataList) + + if (todoAdapter!!.data.size == 0) { + tv_empty_todo.visibility = View.VISIBLE + tv_empty_todo.text = getString(R.string.empty_done) + } else + tv_empty_todo.visibility = View.GONE + + + } + + @Subscribe(threadMode = ThreadMode.MAIN) + fun onEvent(event: UpdateDoneEvent) { + if (fragmentPosition == 1) { + todoAdapter!!.data.clear() + mPresenter!!.donePage = 1 + mPresenter!!.getListDone(0) + } + } + + @Subscribe(threadMode = ThreadMode.MAIN) + fun onEvent(event: UpdateTodoEvent) { + if (fragmentPosition == 0) { + todoAdapter!!.data.clear() + mPresenter!!.notDonePage = 1 + mPresenter!!.getListNotDone(0) + } + } + + override fun showUpdateTodoStatus(todoData: BaseData) { + if (fragmentPosition == 0) { + EventBus.getDefault().post(UpdateDoneEvent()) + } + if (fragmentPosition == 1) { + EventBus.getDefault().post(UpdateTodoEvent()) + } + } + + companion object { + + fun newInstance(bundle: Bundle): TodoFragment { + val testFragment = TodoFragment() + testFragment.arguments = bundle + return testFragment + } + } +} diff --git a/app/src/main/java/com/android/learn/fragment/UserFragment.kt b/app/src/main/java/com/android/learn/fragment/UserFragment.kt new file mode 100644 index 0000000..0c1a9ee --- /dev/null +++ b/app/src/main/java/com/android/learn/fragment/UserFragment.kt @@ -0,0 +1,121 @@ +package com.android.learn.fragment + +import android.os.Bundle +import android.view.View +import android.widget.ImageView +import android.widget.TextView + +import com.android.learn.R +import com.android.learn.activity.MyCollectActivity +import com.android.learn.activity.MyTodoActivity +import com.android.learn.activity.RegisterLoginActivity +import com.android.learn.activity.SettingActivity +import com.android.base.event.LoginEvent +import com.android.base.event.LogoutEvent +import com.android.base.fragment.BaseMvpFragment +import com.android.base.utils.SPUtils +import com.android.base.utils.Utils +import com.android.base.utils.account.UserUtil +import com.android.learn.mcontract.UserInfoContract +import com.android.learn.mpresenter.UserInfoPresenter +import com.bumptech.glide.Glide +import com.bumptech.glide.request.RequestOptions + +import org.greenrobot.eventbus.EventBus +import org.greenrobot.eventbus.Subscribe +import org.greenrobot.eventbus.ThreadMode + +import butterknife.BindView +import butterknife.OnClick + + +class UserFragment : BaseMvpFragment(), UserInfoContract.View { + + @BindView(R.id.iv_user_photo) + lateinit var iv_user_photo: ImageView + @BindView(R.id.tv_user_profile_not_login) + lateinit internal var tv_user_profile_not_login: TextView + + override fun initData(bundle: Bundle?) { + EventBus.getDefault().register(this) + } + + override fun initView(view: View) { + refreshUserInfo() + } + + @OnClick(R.id.iv_user_photo, R.id.my_setting_layout, R.id.my_collect_layout, R.id.my_todo_layout) + fun click(view: View) { + when (view.id) { + R.id.my_todo_layout, + R.id.my_collect_layout -> { + if (!UserUtil.isLogined) { + RegisterLoginActivity.startActivity(activity!!) + Utils.showToast(getString(R.string.user_not_login), true) + return + } + MyCollectActivity.startActivity(activity!!) + } + R.id.my_setting_layout -> SettingActivity.startActivity(activity!!) + + R.id.iv_user_photo -> if (!UserUtil.isLogined) { + RegisterLoginActivity.startActivity(activity!!) + } + } + } + + override fun setContentLayout(): Int { + return R.layout.fragment_user + } + + override fun reload() {} + + override fun initPresenter(): UserInfoPresenter { + return UserInfoPresenter() + } + + override fun loadData() { + + } + + @Subscribe(threadMode = ThreadMode.MAIN) + fun onEvent(accountEvent: LoginEvent) { + refreshUserInfo() + } + + @Subscribe(threadMode = ThreadMode.MAIN) + fun onEvent(logoutEvent: LogoutEvent) { + logout() + } + + + fun refreshUserInfo() { + if (UserUtil.gainUserInfo() == null) return + if (UserUtil.isLogined) { + val username = UserUtil.gainUserInfo()?.data?.username + tv_user_profile_not_login.text = username + val photoUrl = UserUtil.gainUserInfo()?.data?.icon + if (photoUrl != null) { + val options = RequestOptions().placeholder(R.drawable.user_default_photo) + Glide.with(activity!!).load(photoUrl).apply(options).into(iv_user_photo) + } + + } + } + + private fun logout() { + + tv_user_profile_not_login.text = getString(R.string.login_register) + iv_user_photo.setImageResource(R.drawable.user_default_photo) + SPUtils.clear(activity!!, "phone_num") + SPUtils.clear(activity!!, "password") + mPresenter!!.getLogoutData() +// RegisterLoginActivity.startActivity(activity!!) + UserUtil.assignUserInfo(null) + } + + override fun onDestroy() { + super.onDestroy() + EventBus.getDefault().unregister(activity) + } +} diff --git a/app/src/main/java/com/android/learn/fragment/WechatFragment.kt b/app/src/main/java/com/android/learn/fragment/WechatFragment.kt new file mode 100644 index 0000000..27d010f --- /dev/null +++ b/app/src/main/java/com/android/learn/fragment/WechatFragment.kt @@ -0,0 +1,96 @@ +package com.android.learn.fragment + +import android.os.Bundle +import android.view.View +import androidx.fragment.app.Fragment +import androidx.fragment.app.FragmentManager +import androidx.fragment.app.FragmentPagerAdapter +import androidx.viewpager.widget.ViewPager +import butterknife.BindView +import com.android.learn.R +import com.android.base.fragment.BaseMvpFragment +import com.android.base.mmodel.WxArticle +import com.android.base.view.colorfultab.ColorClipTabLayout +import com.android.learn.mcontract.WechatContract +import com.android.learn.mpresenter.WechatPresenter +import java.util.* + + +class WechatFragment : BaseMvpFragment(), WechatContract.View { + + @BindView(R.id.tab_layout) + lateinit var tab_layout: ColorClipTabLayout + @BindView(R.id.view_pager) + lateinit var view_pager: ViewPager + + internal var fragmentList: MutableList = ArrayList() + internal var titleList: MutableList = ArrayList() + + override fun loadData() { + mPresenter!!.getWxArticle() + } + + override fun initData(bundle: Bundle?) { + + } + + override fun initView(view: View) { + + } + + override fun setContentLayout(): Int { + return R.layout.fragment_wechat + } + + override fun reload() {} + + override fun initPresenter(): WechatPresenter { + return WechatPresenter() + } + + override fun showWxArticle(list: List) { + var firstSubFragment: WechatSubFragment? = null + var firstId = 0 + val size = list.size + for (i in 0 until size) { + val wxArticle = list[i] + titleList.add(wxArticle.name) + val wechatSubFragment = WechatSubFragment.newInstance(wxArticle.id, wxArticle.name) + fragmentList.add(wechatSubFragment) + if (i == 0) { + firstId = wxArticle.id + firstSubFragment = wechatSubFragment + } + } + val adapter = CustomPagerAdapter(fragmentManager, fragmentList) + view_pager.adapter = adapter + view_pager.offscreenPageLimit = list.size + tab_layout.setupWithViewPager(view_pager) + firstSubFragment!!.userId = firstId + firstSubFragment.loadData() + } + + + inner class CustomPagerAdapter(fm: FragmentManager?, private val mFragments: List) : FragmentPagerAdapter(fm) { + + init { + fm?.beginTransaction()?.commitAllowingStateLoss() + } + + override fun getItem(position: Int): Fragment { + return this.mFragments[position] + } + + override fun getCount(): Int { + return this.mFragments.size + } + + override fun getItemId(position: Int): Long { + return position.toLong() + } + + override fun getPageTitle(position: Int): CharSequence? { + return titleList[position] + } + } +} diff --git a/app/src/main/java/com/android/learn/fragment/WechatSubFragment.kt b/app/src/main/java/com/android/learn/fragment/WechatSubFragment.kt new file mode 100644 index 0000000..e75ae5d --- /dev/null +++ b/app/src/main/java/com/android/learn/fragment/WechatSubFragment.kt @@ -0,0 +1,163 @@ +package com.android.learn.fragment + +import android.content.Intent +import android.os.Bundle +import androidx.recyclerview.widget.RecyclerView +import android.view.View +import androidx.recyclerview.widget.LinearLayoutManager +import butterknife.BindView +import com.android.learn.R +import com.android.learn.activity.ArticleDetailActivity +import com.android.learn.adapter.ArticleQuickAdapter +import com.android.learn.adapter.DividerItemDecoration +import com.android.base.event.CancelCollectEvent +import com.android.base.event.LoginEvent +import com.android.base.fragment.BaseMvpFragment +import com.android.base.mmodel.FeedArticleListData +import com.android.base.mmodel.FeedArticleListData.FeedArticleData +import com.android.base.view.CustomProgressDialog +import com.android.learn.mcontract.WechatSubContract +import com.android.learn.mpresenter.WechatSubPresenter +import com.chad.library.adapter.base.BaseQuickAdapter +import com.scwang.smartrefresh.layout.SmartRefreshLayout +import org.greenrobot.eventbus.EventBus +import org.greenrobot.eventbus.Subscribe +import org.greenrobot.eventbus.ThreadMode +import java.util.* + + +class WechatSubFragment : BaseMvpFragment(), WechatSubContract.View { + @BindView(R.id.article_recyclerview) + lateinit var article_recyclerview: RecyclerView + @BindView(R.id.smartRefreshLayout) + lateinit var smartRefreshLayout: SmartRefreshLayout + lateinit var articleDataList: List + private var feedArticleAdapter: ArticleQuickAdapter? = null + + internal var userId: Int = 0 + internal var userName: String? = null + + + override fun initData(bundle: Bundle?) { + userId = bundle!!.getInt("id", 408) + userName = bundle.getString("name") + initSmartRefreshLayout() + initRecyclerView() + } + + override fun initView(view: View) { + EventBus.getDefault().register(this) + } + + override fun setContentLayout(): Int { + return R.layout.fragment_wechat_sub + } + + override fun reload() { + + } + + override fun initPresenter(): WechatSubPresenter { + return WechatSubPresenter() + } + + override public fun loadData() { + CustomProgressDialog.show(activity) + if (userId != 0) + mPresenter!!.getWxArtileById(userId) + } + + override fun showWxArticleById(datas: FeedArticleListData) { + val newDataList = datas.datas + if (newDataList.size == 0) { + smartRefreshLayout.finishLoadMoreWithNoMoreData() + return + } + smartRefreshLayout.finishLoadMore() + feedArticleAdapter!!.addData(newDataList) + + } + + override fun showCollectArticleData(position: Int, feedArticleData: FeedArticleListData.FeedArticleData) { + feedArticleAdapter!!.setData(position, feedArticleData) + } + + override fun showCancelCollectArticleData(position: Int, feedArticleData: FeedArticleListData.FeedArticleData) { + feedArticleAdapter!!.setData(position, feedArticleData) + } + + override fun showCancelCollectArticleData(id: Int) { + val position = feedArticleAdapter!!.getPosById(id) + if (position == -1) return + val feedArticleData = articleDataList[position] + feedArticleData.isCollect = false + feedArticleAdapter!!.setData(position, feedArticleData) + } + + + private fun initRecyclerView() { + articleDataList = ArrayList() + feedArticleAdapter = ArticleQuickAdapter(activity, articleDataList, "WechatSubFragment") + article_recyclerview.addItemDecoration(DividerItemDecoration(activity!!, + DividerItemDecoration.VERTICAL_LIST)) + article_recyclerview.layoutManager = LinearLayoutManager(activity) + + //解决数据加载完成后, 没有停留在顶部的问题 + article_recyclerview.isFocusable = false + article_recyclerview.adapter = feedArticleAdapter + + feedArticleAdapter!!.onItemClickListener = BaseQuickAdapter.OnItemClickListener { adapter, view, position -> + val intent = Intent(activity, ArticleDetailActivity::class.java) + val bundle = Bundle() + bundle.putString("url", feedArticleAdapter!!.data[position].link) + intent.putExtras(bundle) + startActivity(intent) + } + feedArticleAdapter!!.onItemChildClickListener = BaseQuickAdapter.OnItemChildClickListener { adapter, view, position -> + if (feedArticleAdapter!!.data[position].isCollect) { + mPresenter!!.cancelCollectArticle(position, feedArticleAdapter!!.data[position]) + } else { + mPresenter!!.addCollectArticle(position, feedArticleAdapter!!.data[position]) + } + } + } + + //初始化下拉刷新控件 + private fun initSmartRefreshLayout() { + smartRefreshLayout.isEnableLoadMore = true + smartRefreshLayout.isEnableRefresh = false + smartRefreshLayout.isEnableScrollContentWhenLoaded = true//是否在加载完成时滚动列表显示新的内容 + smartRefreshLayout.setEnableFooterFollowWhenLoadFinished(true) + smartRefreshLayout.setOnLoadMoreListener { mPresenter!!.getWxArtileById(userId) } + } + + @Subscribe(threadMode = ThreadMode.MAIN) + fun onEvent(event: CancelCollectEvent) { + mPresenter!!.cancelCollectArticle(event.id) + } + + @Subscribe(threadMode = ThreadMode.MAIN) + fun onEvent(accountEvent: LoginEvent) { + feedArticleAdapter!!.data.clear() + feedArticleAdapter!!.notifyDataSetChanged() + mPresenter!!.getWxArtileById(userId) + mPresenter!!.num = 0 + } + + override fun onDestroy() { + super.onDestroy() + EventBus.getDefault().unregister(this) + } + + companion object { + + fun newInstance(id: Int, name: String): WechatSubFragment { + val testFragment = WechatSubFragment() + val bundle = Bundle() + bundle.putInt("id", id) + bundle.putString("name", name) + testFragment.arguments = bundle + return testFragment + } + } +} diff --git a/app/src/main/java/com/android/learn/mcontract/CollectContract.kt b/app/src/main/java/com/android/learn/mcontract/CollectContract.kt new file mode 100644 index 0000000..76e7812 --- /dev/null +++ b/app/src/main/java/com/android/learn/mcontract/CollectContract.kt @@ -0,0 +1,25 @@ +package com.android.learn.mcontract + +import com.android.base.mmodel.FeedArticleListData +import com.android.base.mview.BaseView + +/** + * Created by gaolei on 2018/6/18. + */ + +class CollectContract { + + interface Presenter { + + fun getCollectList() + + fun cancelCollectArticle(position: Int, id: Int) + } + + interface View : BaseView { + + fun showCollectList(feedArticleListData: FeedArticleListData) + + fun showCancelCollectArticle(position: Int, id: Int) + } +} diff --git a/app/src/main/java/com/android/learn/mcontract/HomeContract.kt b/app/src/main/java/com/android/learn/mcontract/HomeContract.kt new file mode 100644 index 0000000..0da4b86 --- /dev/null +++ b/app/src/main/java/com/android/learn/mcontract/HomeContract.kt @@ -0,0 +1,40 @@ +package com.android.learn.mcontract + +import com.android.base.mmodel.BannerListData +import com.android.base.mmodel.FeedArticleListData.FeedArticleData +import com.android.base.mmodel.FeedArticleListData +import com.android.base.mview.BaseView + +/** + * Created by gaolei on 2018/6/18. + */ + +class HomeContract { + + interface Presenter { + + fun getBannerInfo() + + fun getFeedArticleList(num: Int) + + fun onLoadMore() + + fun onRefreshMore() + + fun addCollectArticle(position: Int, feedArticleData: FeedArticleData) + + fun cancelCollectArticle(position: Int, feedArticleData: FeedArticleData) + } + + interface View : BaseView { + + fun showArticleList(itemBeans: FeedArticleListData, isRefresh: Boolean) + + fun showBannerList(itemBeans: BannerListData) + + fun showCollectArticleData(position: Int, feedArticleData: FeedArticleData) + + fun showCancelCollectArticleData(position: Int, feedArticleData: FeedArticleData) + fun showCancelCollectArticleData(id: Int) + } +} diff --git a/app/src/main/java/com/android/learn/mcontract/KnowledgeChildContract.kt b/app/src/main/java/com/android/learn/mcontract/KnowledgeChildContract.kt new file mode 100644 index 0000000..17d85d9 --- /dev/null +++ b/app/src/main/java/com/android/learn/mcontract/KnowledgeChildContract.kt @@ -0,0 +1,30 @@ +package com.android.learn.mcontract + + +import com.android.base.mmodel.FeedArticleListData +import com.android.base.mmodel.FeedArticleListData.FeedArticleData +import com.android.base.mview.BaseView + + +class KnowledgeChildContract { + + interface Presenter { + fun getKnowledgeArticleList(num: Int, cid: Int) + + fun onRefreshMore(cid: Int) + + fun onLoadMore(cid: Int) + + fun addCollectArticle(position: Int, feedArticleData: FeedArticleData) + + fun cancelCollectArticle(position: Int, feedArticleData: FeedArticleData) + } + + interface View : BaseView { + fun showArticleList(itemBeans: FeedArticleListData, isRefresh: Boolean) + fun showCollectArticleData(position: Int, feedArticleData: FeedArticleData) + + fun showCancelCollectArticleData(id: Int, feedArticleData: FeedArticleData) + } + +} diff --git a/app/src/main/java/com/android/learn/mcontract/KnowledgeContract.kt b/app/src/main/java/com/android/learn/mcontract/KnowledgeContract.kt new file mode 100644 index 0000000..bfd25cf --- /dev/null +++ b/app/src/main/java/com/android/learn/mcontract/KnowledgeContract.kt @@ -0,0 +1,20 @@ +package com.android.learn.mcontract + + +import com.android.base.mmodel.TreeBean +import com.android.base.mview.BaseView + + +class KnowledgeContract { + + interface View : BaseView { + fun showKnowledge(data: List) + + } + + interface Presenter { + fun getKnowledge() + + } + +} diff --git a/app/src/main/java/com/android/learn/mcontract/MainActivityContract.kt b/app/src/main/java/com/android/learn/mcontract/MainActivityContract.kt new file mode 100644 index 0000000..7c33e21 --- /dev/null +++ b/app/src/main/java/com/android/learn/mcontract/MainActivityContract.kt @@ -0,0 +1,23 @@ +package com.android.learn.mcontract + +import com.android.base.mmodel.HotKeyData +import com.android.base.mview.BaseView + +/** + * Created by gaolei on 2018/6/18. + */ + +class MainActivityContract { + + interface Presenter { + + fun getHotKey() + + } + + interface View : BaseView { + + fun showHotKey(list: List) + + } +} diff --git a/app/src/main/java/com/android/learn/mcontract/ProjectContract.kt b/app/src/main/java/com/android/learn/mcontract/ProjectContract.kt new file mode 100644 index 0000000..a83f8d8 --- /dev/null +++ b/app/src/main/java/com/android/learn/mcontract/ProjectContract.kt @@ -0,0 +1,25 @@ +package com.android.learn.mcontract + +import com.android.base.mmodel.ProjectListData +import com.android.base.mview.BaseView + +/** + * Created by gaolei on 2018/6/18. + */ + +class ProjectContract { + + interface Presenter { + + fun getProjectInfo(page: Int, cid: Int) + + fun onRefreshMore(cid: Int) + + fun onLoadMore(cid: Int) + } + + interface View : BaseView { + + fun showProjectList(itemBeans: ProjectListData, isRefresh: Boolean) + } +} diff --git a/app/src/main/java/com/android/learn/mcontract/RegisterLoginContract.kt b/app/src/main/java/com/android/learn/mcontract/RegisterLoginContract.kt new file mode 100644 index 0000000..5cc92fd --- /dev/null +++ b/app/src/main/java/com/android/learn/mcontract/RegisterLoginContract.kt @@ -0,0 +1,26 @@ +package com.android.learn.mcontract + +import com.android.base.mmodel.RegisterLoginData +import com.android.base.mview.BaseView + +/** + * Created by gaolei on 2018/6/18. + */ + +class RegisterLoginContract { + + interface Presenter { + + fun login(account: String, password: String) + + fun register(account: String, password: String, rePassword: String) + + } + + interface View : BaseView { + + fun showRegisterResData(registerResData: RegisterLoginData) + + fun showLoginResData(loginData: RegisterLoginData) + } +} diff --git a/app/src/main/java/com/android/learn/mcontract/SearchContract.kt b/app/src/main/java/com/android/learn/mcontract/SearchContract.kt new file mode 100644 index 0000000..2d05285 --- /dev/null +++ b/app/src/main/java/com/android/learn/mcontract/SearchContract.kt @@ -0,0 +1,33 @@ +package com.android.learn.mcontract + +import com.android.base.mmodel.FeedArticleListData +import com.android.base.mview.BaseView + +/** + * Created by gaolei on 2018/6/18. + */ + +class SearchContract { + + interface Presenter { + + + fun getFeedArticleList(key: String) + + fun onLoadMore(key: String) + + fun addCollectArticle(position: Int, feedArticleData: FeedArticleListData.FeedArticleData) + + fun cancelCollectArticle(position: Int, feedArticleData: FeedArticleListData.FeedArticleData) + } + + interface View : BaseView { + + + fun showArticleList(itemBeans: FeedArticleListData) + + fun showCollectArticleData(position: Int, feedArticleData: FeedArticleListData.FeedArticleData) + + fun showCancelCollectArticleData(id: Int, feedArticleData: FeedArticleListData.FeedArticleData) + } +} diff --git a/app/src/main/java/com/android/learn/mcontract/SplashLoginContract.kt b/app/src/main/java/com/android/learn/mcontract/SplashLoginContract.kt new file mode 100644 index 0000000..305c0c4 --- /dev/null +++ b/app/src/main/java/com/android/learn/mcontract/SplashLoginContract.kt @@ -0,0 +1,26 @@ +package com.android.learn.mcontract + +import com.android.base.mmodel.RegisterLoginData +import com.android.base.mview.BaseView + +/** + * Created by gaolei on 2018/6/18. + */ + +class SplashLoginContract { + + interface Presenter { + + + fun login(username: String, password: String) + + + } + + interface View : BaseView { + + fun showLoginResData(loginResData: RegisterLoginData) + + } + +} diff --git a/app/src/main/java/com/android/learn/mcontract/TodoAddContract.kt b/app/src/main/java/com/android/learn/mcontract/TodoAddContract.kt new file mode 100644 index 0000000..f57ef87 --- /dev/null +++ b/app/src/main/java/com/android/learn/mcontract/TodoAddContract.kt @@ -0,0 +1,23 @@ +package com.android.learn.mcontract + +import com.android.base.mmodel.BaseData +import com.android.base.mview.BaseView + +/** + * Created by gaolei on 2018/6/18. + */ + +class TodoAddContract { + + interface Presenter { + + fun addTodo(map: Map) + + } + + interface View : BaseView { + + + fun showAddTodo(todoData: BaseData) + } +} diff --git a/app/src/main/java/com/android/learn/mcontract/TodoContract.kt b/app/src/main/java/com/android/learn/mcontract/TodoContract.kt new file mode 100644 index 0000000..04440b8 --- /dev/null +++ b/app/src/main/java/com/android/learn/mcontract/TodoContract.kt @@ -0,0 +1,33 @@ +package com.android.learn.mcontract + +import com.android.base.mmodel.BaseData +import com.android.base.mmodel.TodoData +import com.android.base.mview.BaseView + +/** + * Created by gaolei on 2018/6/18. + */ + +class TodoContract { + + interface Presenter { + + + fun getListNotDone(type: Int) + + fun getListDone(type: Int) + + fun deleteTodo(id: Int) + + fun updateTodoStatus(id: Int, status: Int) + + } + + interface View : BaseView { + + fun showListNotDone(todoData: TodoData) + + fun showListDone(todoData: TodoData) + fun showUpdateTodoStatus(todoData: BaseData) + } +} diff --git a/app/src/main/java/com/android/learn/mcontract/TodoEditContract.kt b/app/src/main/java/com/android/learn/mcontract/TodoEditContract.kt new file mode 100644 index 0000000..2c2a242 --- /dev/null +++ b/app/src/main/java/com/android/learn/mcontract/TodoEditContract.kt @@ -0,0 +1,23 @@ +package com.android.learn.mcontract + +import com.android.base.mmodel.BaseData +import com.android.base.mview.BaseView + +/** + * Created by gaolei on 2018/6/18. + */ + +class TodoEditContract { + + interface Presenter { + + fun updateTodo(id: Int, map: Map) + + } + + interface View : BaseView { + + + fun showUpdateTodo(todoData: BaseData) + } +} diff --git a/app/src/main/java/com/android/learn/mcontract/UserInfoContract.kt b/app/src/main/java/com/android/learn/mcontract/UserInfoContract.kt new file mode 100644 index 0000000..559b855 --- /dev/null +++ b/app/src/main/java/com/android/learn/mcontract/UserInfoContract.kt @@ -0,0 +1,19 @@ +package com.android.learn.mcontract + +import com.android.base.mview.BaseView + +/** + * Created by gaolei on 2018/6/18. + */ + +class UserInfoContract { + + interface Presenter { + + + fun getLogoutData() + + } + + interface View : BaseView +} diff --git a/app/src/main/java/com/android/learn/mcontract/WechatContract.kt b/app/src/main/java/com/android/learn/mcontract/WechatContract.kt new file mode 100644 index 0000000..cd49865 --- /dev/null +++ b/app/src/main/java/com/android/learn/mcontract/WechatContract.kt @@ -0,0 +1,24 @@ +package com.android.learn.mcontract + +import com.android.base.mmodel.WxArticle +import com.android.base.mview.BaseView + +/** + * Created by gaolei on 2018/6/18. + */ + +class WechatContract { + + interface Presenter { + + fun getWxArticle() + + } + + interface View : BaseView { + + fun showWxArticle(list: List) + + + } +} diff --git a/app/src/main/java/com/android/learn/mcontract/WechatSubContract.kt b/app/src/main/java/com/android/learn/mcontract/WechatSubContract.kt new file mode 100644 index 0000000..48dce7b --- /dev/null +++ b/app/src/main/java/com/android/learn/mcontract/WechatSubContract.kt @@ -0,0 +1,35 @@ +package com.android.learn.mcontract + +import com.android.base.mmodel.FeedArticleListData +import com.android.base.mmodel.FeedArticleListData.FeedArticleData +import com.android.base.mview.BaseView + +/** + * Created by gaolei on 2018/6/18. + */ + +class WechatSubContract { + + interface Presenter { + + + fun getWxArtileById(id: Int) + + + fun addCollectArticle(position: Int, feedArticleData: FeedArticleData) + + fun cancelCollectArticle(position: Int, feedArticleData: FeedArticleData) + } + + interface View : BaseView { + + + fun showWxArticleById(datas: FeedArticleListData) + + fun showCollectArticleData(position: Int, feedArticleData: FeedArticleData) + + fun showCancelCollectArticleData(position: Int, feedArticleData: FeedArticleData) + + fun showCancelCollectArticleData(id: Int) + } +} diff --git a/app/src/main/java/com/android/learn/mpresenter/CollectPresenter.kt b/app/src/main/java/com/android/learn/mpresenter/CollectPresenter.kt new file mode 100644 index 0000000..41298a4 --- /dev/null +++ b/app/src/main/java/com/android/learn/mpresenter/CollectPresenter.kt @@ -0,0 +1,47 @@ +package com.android.learn.mpresenter + + +import com.android.base.mmodel.BaseData +import com.android.base.mmodel.BaseResponse +import com.android.base.mmodel.FeedArticleListData +import com.android.base.mpresenter.BasePresenter +import com.android.base.thirdframe.rxjava.BaseObserver +import com.android.base.utils.ResponseStatusUtil +import com.android.learn.mcontract.CollectContract + + +class CollectPresenter : BasePresenter(), CollectContract.Presenter { + + internal var page = 0 + + override fun getCollectList() { + + val observable = mRestService.getCollectList(page) + addSubscribe(observable, object : BaseObserver>(true) { + + override fun onNext(data: BaseResponse) { + if (data.errorCode == BaseData.SUCCESS) { + mView!!.showCollectList(data.data) + } else + ResponseStatusUtil.handleResponseStatus(data) + } + + }) + page++ + } + + override fun cancelCollectArticle(position: Int, id: Int) { + // int id = feedArticleData.getId(); + val observable = mRestService.cancelCollectArticle(id, -1) + addSubscribe(observable, object : BaseObserver(true) { + + override fun onNext(data: BaseData) { + if (data.errorCode == BaseData.SUCCESS) { + mView!!.showCancelCollectArticle(position, id) + } else + ResponseStatusUtil.handleResponseStatus(data) + } + + }) + } +} diff --git a/app/src/main/java/com/android/learn/mpresenter/HomePresenter.kt b/app/src/main/java/com/android/learn/mpresenter/HomePresenter.kt new file mode 100644 index 0000000..cda1106 --- /dev/null +++ b/app/src/main/java/com/android/learn/mpresenter/HomePresenter.kt @@ -0,0 +1,108 @@ +package com.android.learn.mpresenter + + +import com.android.base.mmodel.BannerListData +import com.android.base.mmodel.BaseData +import com.android.base.mmodel.BaseResponse +import com.android.base.mmodel.FeedArticleListData +import com.android.base.mmodel.FeedArticleListData.FeedArticleData +import com.android.base.mpresenter.BasePresenter +import com.android.base.thirdframe.rxjava.BaseObserver +import com.android.base.utils.ResponseStatusUtil +import com.android.learn.mcontract.HomeContract + + +class HomePresenter : BasePresenter(), HomeContract.Presenter { + private val isRefresh = true + var mCurrentPage = 0 + + override fun onRefreshMore() { + val observable = mRestService.getFeedArticleList(-1) + addSubscribe(observable, object : BaseObserver>(false) { + override fun onNext(feedArticleListData: BaseResponse) { + mView!!.showArticleList(feedArticleListData.data, true) + } + }) + + + } + + override fun onLoadMore() { + ++mCurrentPage + val observable = mRestService.getFeedArticleList(mCurrentPage) + addSubscribe(observable, object : BaseObserver>(false) { + override fun onNext(feedArticleListData: BaseResponse) { + mView!!.showArticleList(feedArticleListData.data, false) + } + }) + } + + override fun getFeedArticleList(num: Int) { + val observable = mRestService.getFeedArticleList(num) + addSubscribe(observable, object : BaseObserver>(true) { + override fun onNext(feedArticleListData: BaseResponse) { + mView!!.showArticleList(feedArticleListData.data, false) + } + }) + } + + override fun getBannerInfo() { + val observable = mRestService.bannerListData + addSubscribe(observable, object : BaseObserver(true) { + + override fun onNext(bannerListData: BannerListData) { + mView!!.showBannerList(bannerListData) + } + + }) + + + } + + + override fun addCollectArticle(position: Int, feedArticleData: FeedArticleData) { + val observable = mRestService.addCollectArticle(feedArticleData.id) + addSubscribe(observable, object : BaseObserver(true) { + + override fun onNext(data: BaseData) { + if (data.errorCode == BaseData.SUCCESS) { + feedArticleData.isCollect = true + mView!!.showCollectArticleData(position, feedArticleData) + } else + ResponseStatusUtil.handleResponseStatus(data) + } + + }) + + } + + override fun cancelCollectArticle(position: Int, feedArticleData: FeedArticleData) { + val observable = mRestService.cancelCollectArticle(feedArticleData.id, -1) + addSubscribe(observable, object : BaseObserver(true) { + + override fun onNext(data: BaseData) { + if (data.errorCode == BaseData.SUCCESS) { + feedArticleData.isCollect = false + mView!!.showCancelCollectArticleData(position, feedArticleData) + } else + ResponseStatusUtil.handleResponseStatus(data) + } + + }) + } + + fun cancelCollectArticle(id: Int) { + val observable = mRestService.cancelCollectArticle(id, -1) + addSubscribe(observable, object : BaseObserver(true) { + + override fun onNext(data: BaseData) { + if (data.errorCode == BaseData.SUCCESS) { + mView!!.showCancelCollectArticleData(id) + } else + ResponseStatusUtil.handleResponseStatus(data) + } + + }) + } + +} diff --git a/app/src/main/java/com/android/learn/mpresenter/KnowledgeChildPresenter.kt b/app/src/main/java/com/android/learn/mpresenter/KnowledgeChildPresenter.kt new file mode 100644 index 0000000..996ea60 --- /dev/null +++ b/app/src/main/java/com/android/learn/mpresenter/KnowledgeChildPresenter.kt @@ -0,0 +1,78 @@ +package com.android.learn.mpresenter + +import com.android.base.mmodel.BaseData +import com.android.base.mmodel.BaseResponse +import com.android.base.mmodel.FeedArticleListData +import com.android.base.mmodel.FeedArticleListData.FeedArticleData +import com.android.base.mpresenter.BasePresenter +import com.android.base.thirdframe.rxjava.BaseObserver +import com.android.base.utils.ResponseStatusUtil +import com.android.learn.mcontract.KnowledgeChildContract + + +class KnowledgeChildPresenter : BasePresenter(), KnowledgeChildContract.Presenter { + private var mCurrentPage = 0 + + override fun getKnowledgeArticleList(num: Int, cid: Int) { + val observable = mRestService.getKnowledgeArticleList(num, cid) + addSubscribe(observable, object : BaseObserver>(true) { + override fun onNext(feedArticleListData: BaseResponse) { + mView!!.showArticleList(feedArticleListData.data, false) + } + }) + } + + override fun onRefreshMore(cid: Int) { + val observable = mRestService.getKnowledgeArticleList(-1, cid) + addSubscribe(observable, object : BaseObserver>(false) { + override fun onNext(feedArticleListData: BaseResponse) { + mView!!.showArticleList(feedArticleListData.data, true) + } + }) + + + } + + override fun onLoadMore(cid: Int) { + ++mCurrentPage + val observable = mRestService.getKnowledgeArticleList(mCurrentPage, cid) + addSubscribe(observable, object : BaseObserver>(false) { + override fun onNext(feedArticleListData: BaseResponse) { + mView!!.showArticleList(feedArticleListData.data, false) + } + }) + } + + override fun addCollectArticle(position: Int, feedArticleData: FeedArticleData) { + val observable = mRestService.addCollectArticle(feedArticleData.id) + addSubscribe(observable, object : BaseObserver(true) { + + override fun onNext(data: BaseData) { + if (data.errorCode == BaseData.SUCCESS) { + feedArticleData.isCollect = true + mView!!.showCollectArticleData(position, feedArticleData) + } else + ResponseStatusUtil.handleResponseStatus(data) + } + + }) + + } + + override fun cancelCollectArticle(position: Int, feedArticleData: FeedArticleData) { + val observable = mRestService.cancelCollectArticle(feedArticleData.id, -1) + addSubscribe(observable, object : BaseObserver(true) { + + override fun onNext(data: BaseData) { + if (data.errorCode == BaseData.SUCCESS) { + feedArticleData.isCollect = false + mView!!.showCancelCollectArticleData(position, feedArticleData) + } else + ResponseStatusUtil.handleResponseStatus(data) + } + + }) + } + + +} diff --git a/app/src/main/java/com/android/learn/mpresenter/KnowledgePresenter.kt b/app/src/main/java/com/android/learn/mpresenter/KnowledgePresenter.kt new file mode 100644 index 0000000..281decc --- /dev/null +++ b/app/src/main/java/com/android/learn/mpresenter/KnowledgePresenter.kt @@ -0,0 +1,36 @@ +package com.android.learn.mpresenter + +import com.android.base.mmodel.BaseListResponse +import com.android.base.mmodel.TreeBean +import com.android.base.mpresenter.BasePresenter +import com.android.base.thirdframe.rxjava.BaseObserver +import com.android.learn.mcontract.KnowledgeContract + + +/** + *
+ * author : lex
+ * e-mail : ldlywt@163.com
+ * time   : 2018/09/05
+ * desc   :
+ * version: 1.0
+
* + */ +class KnowledgePresenter : BasePresenter(), KnowledgeContract.Presenter { + + override fun getKnowledge() { + + val observable = mRestService.knowledgeTree + val baseObserver = object : BaseObserver>>(false) { + override fun onNext(datas: BaseListResponse>) { + mView!!.showKnowledge(datas.data) + } + } + baseObserver.setCancelDialog(false) + addSubscribe(observable, baseObserver) + + + } + + +} diff --git a/app/src/main/java/com/android/learn/mpresenter/MainActivityPresenter.kt b/app/src/main/java/com/android/learn/mpresenter/MainActivityPresenter.kt new file mode 100644 index 0000000..2313e92 --- /dev/null +++ b/app/src/main/java/com/android/learn/mpresenter/MainActivityPresenter.kt @@ -0,0 +1,32 @@ +package com.android.learn.mpresenter + + +import com.android.base.mmodel.BaseData +import com.android.base.mmodel.BaseListResponse +import com.android.base.mmodel.HotKeyData +import com.android.base.mpresenter.BasePresenter +import com.android.base.thirdframe.rxjava.BaseObserver +import com.android.base.utils.ResponseStatusUtil +import com.android.learn.mcontract.MainActivityContract + + +class MainActivityPresenter : BasePresenter(), MainActivityContract.Presenter { + + private val mCurrentPage = 0 + + override fun getHotKey() { + val observable = mRestService.hotKey + addSubscribe(observable, object : BaseObserver>>(true) { + + override fun onNext(datas: BaseListResponse>) { + if (datas.errorCode == BaseData.SUCCESS) { + mView!!.showHotKey(datas.data) + } else + ResponseStatusUtil.handleListResponseStatus(datas as BaseListResponse>) + } + + }) + + } + +} diff --git a/app/src/main/java/com/android/learn/mpresenter/ProjectPresenter.kt b/app/src/main/java/com/android/learn/mpresenter/ProjectPresenter.kt new file mode 100644 index 0000000..2e624bb --- /dev/null +++ b/app/src/main/java/com/android/learn/mpresenter/ProjectPresenter.kt @@ -0,0 +1,44 @@ +package com.android.learn.mpresenter + + +import com.android.base.mmodel.ProjectListData +import com.android.base.mpresenter.BasePresenter +import com.android.base.thirdframe.rxjava.BaseObserver +import com.android.learn.mcontract.ProjectContract + + +class ProjectPresenter : BasePresenter(), ProjectContract.Presenter { + + private var mCurrentPage = 1 + + override fun getProjectInfo(page: Int, cid: Int) { + val observable = mRestService.getProjectListData(page, cid) + addSubscribe(observable, object : BaseObserver(true) { + override fun onNext(projectListData: ProjectListData) { + mView!!.showProjectList(projectListData, false) + } + }) + } + + override fun onRefreshMore(cid: Int) { + val observable = mRestService.getProjectListData(-1, cid) + addSubscribe(observable, object : BaseObserver(false) { + override fun onNext(projectListData: ProjectListData) { + mView!!.showProjectList(projectListData, true) + } + }) + } + + override fun onLoadMore(cid: Int) { + ++mCurrentPage + val observable = mRestService.getProjectListData(mCurrentPage, cid) + addSubscribe(observable, object : BaseObserver(false) { + override fun onNext(projectListData: ProjectListData) { + mView!!.showProjectList(projectListData, false) + } + }) + } + + +} + diff --git a/app/src/main/java/com/android/learn/mpresenter/RegisterLoginPresenter.kt b/app/src/main/java/com/android/learn/mpresenter/RegisterLoginPresenter.kt new file mode 100644 index 0000000..26b46db --- /dev/null +++ b/app/src/main/java/com/android/learn/mpresenter/RegisterLoginPresenter.kt @@ -0,0 +1,42 @@ +package com.android.learn.mpresenter + + +import com.android.base.mmodel.BaseData +import com.android.base.mmodel.RegisterLoginData +import com.android.base.mpresenter.BasePresenter +import com.android.base.thirdframe.retrofit.ApiService +import com.android.base.thirdframe.retrofit.RetrofitProvider +import com.android.base.thirdframe.rxjava.BaseObserver +import com.android.base.utils.ResponseStatusUtil +import com.android.base.utils.Utils +import com.android.learn.mcontract.RegisterLoginContract + + +class RegisterLoginPresenter : BasePresenter(), RegisterLoginContract.Presenter { + override fun login(account: String, password: String) { + val observable = RetrofitProvider.instance.createService(ApiService::class.java).login(account, password) + addSubscribe(observable, object : BaseObserver(false) { + override fun onNext(data: RegisterLoginData) { + if (data.errorCode == BaseData.SUCCESS) { + mView!!.showLoginResData(data) + } else + ResponseStatusUtil.handleResponseStatus(data) + + } + }) + } + + override fun register(account: String, password: String, repassword: String) { + val observable = RetrofitProvider.instance.createService(ApiService::class.java).register(account, password, repassword) + addSubscribe(observable, object : BaseObserver(false) { + override fun onNext(data: RegisterLoginData) { + if (data.errorCode == BaseData.SUCCESS) { + Utils.showToast("注册成功", true) + mView!!.showRegisterResData(data) + } else + ResponseStatusUtil.handleResponseStatus(data) + + } + }) + } +} diff --git a/app/src/main/java/com/android/learn/mpresenter/SearchPresenter.kt b/app/src/main/java/com/android/learn/mpresenter/SearchPresenter.kt new file mode 100644 index 0000000..c9458d2 --- /dev/null +++ b/app/src/main/java/com/android/learn/mpresenter/SearchPresenter.kt @@ -0,0 +1,68 @@ +package com.android.learn.mpresenter + + +import com.android.base.mmodel.BaseData +import com.android.base.mmodel.BaseResponse +import com.android.base.mmodel.FeedArticleListData +import com.android.base.mpresenter.BasePresenter +import com.android.base.thirdframe.rxjava.BaseObserver +import com.android.base.utils.ResponseStatusUtil +import com.android.learn.mcontract.SearchContract + + +class SearchPresenter : BasePresenter(), SearchContract.Presenter { + + private var mCurrentPage = 0 + + override fun getFeedArticleList(key: String) { + val observable = mRestService.search(mCurrentPage, key) + addSubscribe(observable, object : BaseObserver>(true) { + override fun onNext(feedArticleListData: BaseResponse) { + mView!!.showArticleList(feedArticleListData.data) + } + }) + } + + override fun onLoadMore(key: String) { + ++mCurrentPage + val observable = mRestService.search(mCurrentPage, key) + addSubscribe(observable, object : BaseObserver>(true) { + override fun onNext(feedArticleListData: BaseResponse) { + mView!!.showArticleList(feedArticleListData.data) + } + }) + } + + override fun addCollectArticle(position: Int, feedArticleData: FeedArticleListData.FeedArticleData) { + val observable = mRestService.addCollectArticle(feedArticleData.id) + addSubscribe(observable, object : BaseObserver(true) { + + override fun onNext(data: BaseData) { + if (data.errorCode == BaseData.SUCCESS) { + feedArticleData.isCollect = true + mView!!.showCollectArticleData(position, feedArticleData) + } else + ResponseStatusUtil.handleResponseStatus(data) + } + + }) + + } + + override fun cancelCollectArticle(position: Int, feedArticleData: FeedArticleListData.FeedArticleData) { + val observable = mRestService.cancelCollectArticle(feedArticleData.id, -1) + addSubscribe(observable, object : BaseObserver(true) { + + override fun onNext(data: BaseData) { + if (data.errorCode == BaseData.SUCCESS) { + feedArticleData.isCollect = false + mView!!.showCancelCollectArticleData(position, feedArticleData) + } else + ResponseStatusUtil.handleResponseStatus(data) + } + + }) + } + + +} diff --git a/app/src/main/java/com/android/learn/mpresenter/SplashLoginPresenter.kt b/app/src/main/java/com/android/learn/mpresenter/SplashLoginPresenter.kt new file mode 100644 index 0000000..983151f --- /dev/null +++ b/app/src/main/java/com/android/learn/mpresenter/SplashLoginPresenter.kt @@ -0,0 +1,22 @@ +package com.android.learn.mpresenter + +import com.android.base.mmodel.RegisterLoginData +import com.android.base.mpresenter.BasePresenter +import com.android.base.thirdframe.retrofit.ApiService +import com.android.base.thirdframe.retrofit.RetrofitProvider +import com.android.base.thirdframe.rxjava.BaseObserver +import com.android.learn.mcontract.SplashLoginContract + + +class SplashLoginPresenter : BasePresenter(), SplashLoginContract.Presenter { + + override fun login(account: String, password: String) { + val observable = RetrofitProvider.instance.createService(ApiService::class.java).login(account, password) + addSubscribe(observable, object : BaseObserver(false) { + override fun onNext(data: RegisterLoginData) { + mView!!.showLoginResData(data) + + } + }) + } +} diff --git a/app/src/main/java/com/android/learn/mpresenter/TodoAddPresenter.kt b/app/src/main/java/com/android/learn/mpresenter/TodoAddPresenter.kt new file mode 100644 index 0000000..b4371cf --- /dev/null +++ b/app/src/main/java/com/android/learn/mpresenter/TodoAddPresenter.kt @@ -0,0 +1,27 @@ +package com.android.learn.mpresenter + + +import com.android.base.mmodel.BaseData +import com.android.base.mpresenter.BasePresenter +import com.android.base.thirdframe.rxjava.BaseObserver +import com.android.base.utils.ResponseStatusUtil +import com.android.learn.mcontract.TodoAddContract + + +class TodoAddPresenter : BasePresenter(), TodoAddContract.Presenter { + + override fun addTodo(map: Map) { + val observable = mRestService.addTodo(map) + + addSubscribe(observable, object : BaseObserver(false) { + + override fun onNext(data: BaseData) { + if (data.errorCode == BaseData.SUCCESS) { + mView!!.showAddTodo(data) + } else + ResponseStatusUtil.handleResponseStatus(data) + } + }) + } + +} diff --git a/app/src/main/java/com/android/learn/mpresenter/TodoEditPresenter.kt b/app/src/main/java/com/android/learn/mpresenter/TodoEditPresenter.kt new file mode 100644 index 0000000..c4b072b --- /dev/null +++ b/app/src/main/java/com/android/learn/mpresenter/TodoEditPresenter.kt @@ -0,0 +1,27 @@ +package com.android.learn.mpresenter + + +import com.android.base.mmodel.BaseData +import com.android.base.mpresenter.BasePresenter +import com.android.base.thirdframe.rxjava.BaseObserver +import com.android.base.utils.ResponseStatusUtil +import com.android.learn.mcontract.TodoEditContract + + +class TodoEditPresenter : BasePresenter(), TodoEditContract.Presenter { + + override fun updateTodo(id: Int, map: Map) { + val observable = mRestService.updateTodo(id, map) + + addSubscribe(observable, object : BaseObserver(false) { + + override fun onNext(data: BaseData) { + if (data.errorCode == BaseData.SUCCESS) { + mView!!.showUpdateTodo(data) + } else + ResponseStatusUtil.handleResponseStatus(data) + } + }) + } + +} diff --git a/app/src/main/java/com/android/learn/mpresenter/TodoPresenter.kt b/app/src/main/java/com/android/learn/mpresenter/TodoPresenter.kt new file mode 100644 index 0000000..bfd7e47 --- /dev/null +++ b/app/src/main/java/com/android/learn/mpresenter/TodoPresenter.kt @@ -0,0 +1,74 @@ +package com.android.learn.mpresenter + + +import com.android.base.mmodel.BaseData +import com.android.base.mmodel.BaseResponse +import com.android.base.mmodel.TodoData +import com.android.base.mpresenter.BasePresenter +import com.android.base.thirdframe.rxjava.BaseObserver +import com.android.base.utils.ResponseStatusUtil +import com.android.learn.mcontract.TodoContract + + +class TodoPresenter : BasePresenter(), TodoContract.Presenter { + var notDonePage = 1 + var donePage = 1 + + override fun getListNotDone(type: Int) { + val observable = mRestService.getListNotDone(type, notDonePage) + addSubscribe(observable, object : BaseObserver>(true) { + + override fun onNext(data: BaseResponse) { + if (data.errorCode == BaseData.SUCCESS) { + mView!!.showListNotDone(data.data) + } else + ResponseStatusUtil.handleResponseStatus(data) + } + + }) + notDonePage++ + } + + override fun getListDone(type: Int) { + val observable = mRestService.getListDone(type, donePage) + addSubscribe(observable, object : BaseObserver>(true) { + + override fun onNext(data: BaseResponse) { + if (data.errorCode == BaseData.SUCCESS) { + mView!!.showListDone(data.data) + } else + ResponseStatusUtil.handleResponseStatus(data) + } + + }) + donePage++ + } + + override fun deleteTodo(id: Int) { + val observable = mRestService.deleteTodo(id) + + addSubscribe(observable, object : BaseObserver(false) { + + override fun onNext(data: BaseData) { + if (data.errorCode == BaseData.SUCCESS) { + } else + ResponseStatusUtil.handleResponseStatus(data) + } + }) + } + + //status: 0或1,传1代表未完成到已完成 + override fun updateTodoStatus(id: Int, status: Int) { + val observable = mRestService.updateTodoStatus(id, status) + + addSubscribe(observable, object : BaseObserver(false) { + + override fun onNext(data: BaseData) { + if (data.errorCode == BaseData.SUCCESS) { + mView!!.showUpdateTodoStatus(data) + } else + ResponseStatusUtil.handleResponseStatus(data) + } + }) + } +} diff --git a/app/src/main/java/com/android/learn/mpresenter/UserInfoPresenter.kt b/app/src/main/java/com/android/learn/mpresenter/UserInfoPresenter.kt new file mode 100644 index 0000000..8c2e589 --- /dev/null +++ b/app/src/main/java/com/android/learn/mpresenter/UserInfoPresenter.kt @@ -0,0 +1,21 @@ +package com.android.learn.mpresenter + +import com.android.base.mmodel.BaseData +import com.android.base.mpresenter.BasePresenter +import com.android.base.thirdframe.retrofit.ApiService +import com.android.base.thirdframe.retrofit.RetrofitProvider +import com.android.base.thirdframe.rxjava.BaseObserver +import com.android.learn.mcontract.UserInfoContract + +class UserInfoPresenter : BasePresenter(), UserInfoContract.Presenter { + + override fun getLogoutData() { + + val observable = RetrofitProvider.instance.createService(ApiService::class.java).logout() + addSubscribe(observable, object : BaseObserver(false) { + override fun onNext(baseData: BaseData) {} + }) + } + + +} diff --git a/app/src/main/java/com/android/learn/mpresenter/WechatPresenter.kt b/app/src/main/java/com/android/learn/mpresenter/WechatPresenter.kt new file mode 100644 index 0000000..88a0346 --- /dev/null +++ b/app/src/main/java/com/android/learn/mpresenter/WechatPresenter.kt @@ -0,0 +1,22 @@ +package com.android.learn.mpresenter + + +import com.android.base.mmodel.BaseListResponse +import com.android.base.mmodel.WxArticle +import com.android.base.mpresenter.BasePresenter +import com.android.base.thirdframe.rxjava.BaseObserver +import com.android.learn.mcontract.WechatContract + + +class WechatPresenter : BasePresenter(), WechatContract.Presenter { + + override fun getWxArticle() { + val observable = mRestService.wxArticle + addSubscribe(observable, object : BaseObserver>>(false) { + override fun onNext(datas: BaseListResponse>) { + mView!!.showWxArticle(datas.data) + } + }) + } + +} diff --git a/app/src/main/java/com/android/learn/mpresenter/WechatSubPresenter.kt b/app/src/main/java/com/android/learn/mpresenter/WechatSubPresenter.kt new file mode 100644 index 0000000..b44c267 --- /dev/null +++ b/app/src/main/java/com/android/learn/mpresenter/WechatSubPresenter.kt @@ -0,0 +1,74 @@ +package com.android.learn.mpresenter + + +import com.android.base.mmodel.BaseData +import com.android.base.mmodel.BaseResponse +import com.android.base.mmodel.FeedArticleListData +import com.android.base.mmodel.FeedArticleListData.FeedArticleData +import com.android.base.mpresenter.BasePresenter +import com.android.base.thirdframe.rxjava.BaseObserver +import com.android.base.utils.ResponseStatusUtil +import com.android.learn.mcontract.WechatSubContract + + +class WechatSubPresenter : BasePresenter(), WechatSubContract.Presenter { + + var num = 0 + override fun getWxArtileById(id: Int) { + val observable = mRestService.getWxArtileById(id, num) + addSubscribe(observable, object : BaseObserver>(true) { + + override fun onNext(listData: BaseResponse) { + mView!!.showWxArticleById(listData.data) + } + + }) + num++ + } + + override fun addCollectArticle(position: Int, feedArticleData: FeedArticleData) { + val observable = mRestService.addCollectArticle(feedArticleData.id) + addSubscribe(observable, object : BaseObserver(true) { + + override fun onNext(data: BaseData) { + if (data.errorCode == BaseData.SUCCESS) { + feedArticleData.isCollect = true + mView!!.showCollectArticleData(position, feedArticleData) + } else + ResponseStatusUtil.handleResponseStatus(data) + } + + }) + + } + + override fun cancelCollectArticle(position: Int, feedArticleData: FeedArticleData) { + val observable = mRestService.cancelCollectArticle(feedArticleData.id, -1) + addSubscribe(observable, object : BaseObserver(true) { + + override fun onNext(data: BaseData) { + if (data.errorCode == BaseData.SUCCESS) { + feedArticleData.isCollect = false + mView!!.showCancelCollectArticleData(position, feedArticleData) + } else + ResponseStatusUtil.handleResponseStatus(data) + } + + }) + } + + fun cancelCollectArticle(id: Int) { + val observable = mRestService.cancelCollectArticle(id, -1) + addSubscribe(observable, object : BaseObserver(true) { + + override fun onNext(data: BaseData) { + if (data.errorCode == BaseData.SUCCESS) { + mView!!.showCancelCollectArticleData(id) + } else + ResponseStatusUtil.handleResponseStatus(data) + } + + }) + } + +} diff --git a/app/src/main/java/com/android/learn/view/CustomViewPager.kt b/app/src/main/java/com/android/learn/view/CustomViewPager.kt new file mode 100644 index 0000000..d538383 --- /dev/null +++ b/app/src/main/java/com/android/learn/view/CustomViewPager.kt @@ -0,0 +1,49 @@ +package com.android.learn.view + +import android.content.Context +import android.util.AttributeSet +import android.view.MotionEvent +import androidx.viewpager.widget.ViewPager + + +class CustomViewPager : ViewPager { + + + var canScroll = true + + constructor(context: Context, attrs: AttributeSet) : super(context, attrs) {} + + constructor(context: Context) : super(context) {} + + + override fun onTouchEvent(ev: MotionEvent): Boolean { + return canScroll && super.onTouchEvent(ev) + } + + override fun onInterceptTouchEvent(ev: MotionEvent): Boolean { + return canScroll && super.onInterceptTouchEvent(ev) + } + + override fun dispatchTouchEvent(ev: MotionEvent): Boolean { + if (currentItem != 0) + parent.requestDisallowInterceptTouchEvent(true)//如果不是viewpager的第一项让父控件不要拦截事件 + return super.dispatchTouchEvent(ev) + } + + // @Override + // protected boolean canScroll(View v, boolean checkV, int dx, int x, int y) { + // if (v != this && v instanceof ViewPager) { //判断当前的View是不是ViewPager + // int currentItem = ((ViewPager) v).getCurrentItem(); //当前的条目 + // int countItem = ((ViewPager) v).getAdapter().getCount(); //总的条目 + // if ((currentItem == (countItem - 1) && dx < 0) || (currentItem == 0 && dx > 0)) { //判断当前条目以及滑动方向 + // return false; + // } + // return true; + // } + // return super.canScroll(v, checkV, dx, x, y); + // } + + override fun setCurrentItem(item: Int) { + setCurrentItem(item, false) + } +} diff --git a/app/src/main/java/com/android/learn/view/SearchViewUtils.kt b/app/src/main/java/com/android/learn/view/SearchViewUtils.kt new file mode 100644 index 0000000..f6c435e --- /dev/null +++ b/app/src/main/java/com/android/learn/view/SearchViewUtils.kt @@ -0,0 +1,98 @@ +package com.android.learn.view + +import android.animation.Animator +import android.content.Context +import android.os.Build +import android.view.View +import android.view.ViewAnimationUtils +import android.widget.EditText +import com.android.base.utils.KeyboardUtils + + +object SearchViewUtils { + + fun handleSearchLayout(context: Context, searchView: View, searchEt: EditText) { + //隐藏 + if (searchView.visibility == View.VISIBLE) { + + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { + val animatorHide = ViewAnimationUtils.createCircularReveal( + searchView, + searchView.width - dip2px(context, 56f), + dip2px(context, 23f), + //确定元的半径(算长宽的斜边长,这样半径不会太短也不会很长效果比较舒服) + Math.hypot(searchView.width.toDouble(), searchView.height.toDouble()).toFloat(), + 0f + ) + animatorHide.addListener(object : Animator.AnimatorListener { + override fun onAnimationStart(animation: Animator) { + + } + + override fun onAnimationEnd(animation: Animator) { + searchView.visibility = View.GONE + KeyboardUtils.hideKeyboard(searchEt) + } + + override fun onAnimationCancel(animation: Animator) { + + } + + override fun onAnimationRepeat(animation: Animator) { + + } + }) + animatorHide.duration = 300 + animatorHide.start() + } else { + // 关闭输入法 + KeyboardUtils.hideKeyboard(searchEt) + searchView.visibility = View.GONE + } + searchEt.setText("") + searchView.isEnabled = false + } else { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { + val animator = ViewAnimationUtils.createCircularReveal( + searchView, + searchView.width - dip2px(context, 56f), + dip2px(context, 23f), + 0f, + Math.hypot(searchView.width.toDouble(), searchView.height.toDouble()).toFloat() + ) + animator.addListener(object : Animator.AnimatorListener { + override fun onAnimationStart(animation: Animator) {} + + override fun onAnimationEnd(animation: Animator) { + KeyboardUtils.showKeyboard(searchEt) + } + + override fun onAnimationCancel(animation: Animator) { + + } + + override fun onAnimationRepeat(animation: Animator) { + + } + }) + searchView.visibility = View.VISIBLE + if (searchView.visibility == View.VISIBLE) { + animator.duration = 300 + animator.start() + searchView.isEnabled = true + } + } else { + searchView.visibility = View.VISIBLE + searchView.isEnabled = true + //显示输入法 + KeyboardUtils.showKeyboard(searchEt) + } + } + } + + + fun dip2px(context: Context, dp: Float): Int { + val scale = context.resources.displayMetrics.density + return (dp * scale + 0.5).toInt() + } +} diff --git a/app/src/main/java/com/android/learn/view/fontsliderbar/Bar.kt b/app/src/main/java/com/android/learn/view/fontsliderbar/Bar.kt new file mode 100644 index 0000000..2018379 --- /dev/null +++ b/app/src/main/java/com/android/learn/view/fontsliderbar/Bar.kt @@ -0,0 +1,112 @@ +package com.android.learn.view.fontsliderbar + +import android.content.Context +import android.graphics.Canvas +import android.graphics.Paint +import android.text.TextUtils + +import com.android.learn.R + +/** + * Created by Administrator on 2017/9/6 0006. + */ +class Bar(internal var context: Context, val leftX: Float, private val mY: Float, width: Float, tickCount: Int, private val mTickHeight: Float, + barWidth: Float, barColor: Int, textColor: Int, private val mtextSize: Int, padding: Int) { + + private var mBarPaint: Paint? = null + private var mTextPaint: Paint? = null + val rightX: Float + private val mPadding: Float + + private val mSegments: Int + private val mTickDistance: Float + private val mTickStartY: Float + private val mTickEndY: Float + + init { + rightX = leftX + width + mPadding = padding.toFloat() + + mSegments = tickCount - 1 + mTickDistance = width / mSegments + mTickStartY = mY - mTickHeight / 2f + mTickEndY = mY + mTickHeight / 2f + + mBarPaint = Paint() + mBarPaint!!.color = barColor + mBarPaint!!.strokeWidth = barWidth + mBarPaint!!.isAntiAlias = true + + mTextPaint = Paint() + mTextPaint!!.color = textColor + mTextPaint!!.textSize = mtextSize.toFloat() + mTextPaint!!.isAntiAlias = true + } + + fun draw(canvas: Canvas) { + drawLine(canvas) + drawTicks(canvas, context) + } + + //获取标尺最近的刻度 通过圆所在的位置 + fun getNearestTickCoordinate(thumb: Thumb): Float { + val nearestTickIndex = getNearestTickIndex(thumb) + return leftX + nearestTickIndex * mTickDistance + } + + //获取标尺最近的刻度 通过下标 + fun getNearestTickCoordinate(index: Int): Float { + return leftX + index * mTickDistance + } + + + fun getNearestTickIndex(thumb: Thumb): Int { + return getNearestTickIndex(thumb.x) + } + + fun getNearestTickIndex(x: Float): Int { + return ((x - leftX + mTickDistance / 2f) / mTickDistance).toInt() + } + + private fun drawLine(canvas: Canvas) { + canvas.drawLine(leftX, mY, rightX, mY, mBarPaint!!) + } + + private fun drawTicks(canvas: Canvas, context: Context?) { + for (i in 0..mSegments) { + val x = i * mTickDistance + leftX + canvas.drawLine(x, mTickStartY, x, mTickEndY, mBarPaint!!) + //绘制头尾 A 以及标准 + var text = "" + if (i == 0) { + text = "A" + mTextPaint!!.textSize = mtextSize * 0.9f + } + if (i == 1) { + if (context != null) + text = context.getString(R.string.standrd) + mTextPaint!!.textSize = mtextSize.toFloat() + } + if (i == mSegments) { + text = "A" + mTextPaint!!.textSize = mtextSize * 1.4f + } + if (!TextUtils.isEmpty(text)) { + canvas.drawText(text, x - getTextWidth(text) / 2, mTickStartY - mPadding, mTextPaint!!) + } + } + } + + internal fun getTextWidth(text: String): Float { + return mTextPaint!!.measureText(text) + } + + fun destroyResources() { + if (null != mBarPaint) { + mBarPaint = null + } + if (null != mTextPaint) { + mTextPaint = null + } + } +} \ No newline at end of file diff --git a/app/src/main/java/com/android/learn/view/fontsliderbar/FontSliderBar.kt b/app/src/main/java/com/android/learn/view/fontsliderbar/FontSliderBar.kt new file mode 100644 index 0000000..2d7d24e --- /dev/null +++ b/app/src/main/java/com/android/learn/view/fontsliderbar/FontSliderBar.kt @@ -0,0 +1,401 @@ +package com.android.learn.view.fontsliderbar + +import android.animation.ValueAnimator +import android.content.Context +import android.graphics.Canvas +import android.graphics.Color +import android.graphics.Paint +import android.util.AttributeSet +import android.util.Log +import android.view.MotionEvent +import android.view.View + +/** + * Created by Administrator on 2017/9/6 0006. + */ + +class FontSliderBar : View { + + private var mTickCount = DEFAULT_TICK_COUNT + private var mTickHeight = DEFAULT_TICK_HEIGHT + + private var mBarWidth = DEFAULT_BAR_WIDTH + private var mBarColor = DEFAULT_BAR_COLOR + + private var xCoordinate = DEFAULT_THUMB_RADIUS + private var mThumbColorNormal = DEFAULT_THUMB_COLOR_NORMAL + private var mThumbColorPressed = DEFAULT_THUMB_COLOR_PRESSED + + private var mTextSize = DEFAULT_TEXT_SIZE + private var mTextColor = DEFAULT_TEXT_COLOR + private var mTextPadding = DEFAULT_TEXT_PADDING + + private val mDefaultWidth = 500 + + private var mCurrentIndex = 1 + private var mAnimation = true + + lateinit var mThumb: Thumb + private var mBar: Bar? = null + private var mWith: Float = 0.toFloat() + + private var mAnimator: ValueAnimator? = null + private var mListener: OnSliderBarChangeListener? = null + + private val minHeight: Int + get() { + val f = fontHeight + return (f + mTextPadding.toFloat() + xCoordinate * 2).toInt() + } + + val currentIndex: Int + get() { + if (mCurrentIndex > mTickCount - 1) { + mCurrentIndex = mTickCount - 1 + } + return mCurrentIndex + } + + private val yCoordinate: Float + get() = height - xCoordinate + + private val fontHeight: Float + get() { + val paint = Paint() + paint.textSize = mTextSize.toFloat() + paint.measureText("A") + val fontMetrics = paint.fontMetrics + return fontMetrics.descent - fontMetrics.ascent + } + + private val barLength: Float + get() = width - 2 * xCoordinate + + private val isAnimationRunning: Boolean + get() = if (null != mAnimator && mAnimator!!.isRunning) { + true + } else false + + constructor(context: Context) : super(context) {} + + constructor(context: Context, attrs: AttributeSet) : super(context, attrs) { + } + + constructor(context: Context, attrs: AttributeSet, defStyle: Int) : super(context, attrs, defStyle) { + + } + + override fun onMeasure(widthMeasureSpec: Int, heightMeasureSpec: Int) { + super.onMeasure(widthMeasureSpec, heightMeasureSpec) + val width: Int + val height: Int + + val measureWidthMode = View.MeasureSpec.getMode(widthMeasureSpec) + val measureHeightMode = View.MeasureSpec.getMode(heightMeasureSpec) + val measureWidth = View.MeasureSpec.getSize(widthMeasureSpec) + val measureHeight = View.MeasureSpec.getSize(heightMeasureSpec) + + if (measureWidthMode == View.MeasureSpec.AT_MOST) { + width = measureWidth + } else if (measureWidthMode == View.MeasureSpec.EXACTLY) { + width = measureWidth + } else { + width = mDefaultWidth + } + mWith = width.toFloat() + if (measureHeightMode == View.MeasureSpec.AT_MOST) { + height = Math.min(minHeight, measureHeight) + } else if (measureHeightMode == View.MeasureSpec.EXACTLY) { + height = measureHeight + } else { + height = minHeight + } + setMeasuredDimension(width, height) + } + + override fun onSizeChanged(w: Int, h: Int, oldw: Int, oldh: Int) { + super.onSizeChanged(w, h, oldw, oldh) + + createBar(context) + createThumbs() + } + + override fun onDraw(canvas: Canvas) { + super.onDraw(canvas) + mBar!!.draw(canvas) + mThumb!!.draw(canvas) + } + + override fun onVisibilityChanged(changedView: View, visibility: Int) { + super.onVisibilityChanged(changedView, visibility) + if (View.VISIBLE != visibility) { + stopAnimation() + } + } + + override fun onDetachedFromWindow() { + destroyResources() + super.onDetachedFromWindow() + } + + override fun onTouchEvent(event: MotionEvent): Boolean { + if (!isEnabled || isAnimationRunning) { + return false + } + when (event.action) { + MotionEvent.ACTION_DOWN -> return onActionDown(event.x, event.y) + MotionEvent.ACTION_MOVE -> { + this.parent.requestDisallowInterceptTouchEvent(true) + return onActionMove(event.x) + } + MotionEvent.ACTION_UP, MotionEvent.ACTION_CANCEL -> { + this.parent.requestDisallowInterceptTouchEvent(false) + return onActionUp(event.x, event.y) + } + else -> return true + } + } + + fun setOnSliderBarChangeListener(listener: OnSliderBarChangeListener): FontSliderBar { + mListener = listener + return this@FontSliderBar + } + + fun setTickCount(tickCount: Int): FontSliderBar { + if (isValidTickCount(tickCount)) { + mTickCount = tickCount + } else { + Log.e(TAG, "tickCount less than 2; invalid tickCount.") + throw IllegalArgumentException("tickCount less than 2; invalid tickCount.") + } + return this@FontSliderBar + } + + fun setTickHeight(tickHeight: Float): FontSliderBar { + mTickHeight = tickHeight + return this@FontSliderBar + } + + fun setBarWeight(barWeight: Float): FontSliderBar { + mBarWidth = barWeight + return this@FontSliderBar + } + + fun setBarColor(barColor: Int): FontSliderBar { + mBarColor = barColor + return this@FontSliderBar + } + + fun setTextSize(textSize: Int): FontSliderBar { + mTextSize = textSize + return this@FontSliderBar + } + + fun setTextColor(textColor: Int): FontSliderBar { + mTextColor = textColor + return this@FontSliderBar + } + + fun setTextPadding(textPadding: Int): FontSliderBar { + mTextPadding = textPadding + return this@FontSliderBar + } + + fun setThumbRadius(thumbRadius: Float): FontSliderBar { + xCoordinate = thumbRadius + return this@FontSliderBar + } + + fun setThumbColorNormal(thumbColorNormal: Int): FontSliderBar { + mThumbColorNormal = thumbColorNormal + return this@FontSliderBar + } + + fun setThumbColorPressed(thumbColorPressed: Int): FontSliderBar { + mThumbColorPressed = thumbColorPressed + return this@FontSliderBar + } + + + fun setThumbIndex(currentIndex: Int): FontSliderBar { + //处理越界 + if (indexOutOfRange(currentIndex)) { + if (currentIndex < 0) { + mCurrentIndex = 0 + } + if (currentIndex > mTickCount - 1) { + mCurrentIndex = mTickCount - 1 + } + // throw new IllegalArgumentException( + // "A thumb index is out of bounds. Check that it is between 0 and mTickCount - 1"); + } else { + if (mCurrentIndex != currentIndex) { + mCurrentIndex = currentIndex + } + } + if (mListener != null) { + mListener!!.onIndexChanged(this, mCurrentIndex) + } + return this@FontSliderBar + } + + fun withAnimation(animation: Boolean): FontSliderBar { + mAnimation = animation + return this@FontSliderBar + } + + fun applay(context: Context) { + createThumbs() + createBar(context) + requestLayout() + invalidate() + } + + private fun createBar(context: Context) { + mBar = Bar(context, xCoordinate, yCoordinate, barLength, mTickCount, mTickHeight, mBarWidth, + mBarColor, mTextColor, mTextSize, mTextPadding) + } + + private fun createThumbs() { + if (mCurrentIndex == 0) { + mThumb = Thumb(xCoordinate + (mWith / mTickCount + xCoordinate / 2) * mCurrentIndex, yCoordinate, mThumbColorNormal, mThumbColorPressed, xCoordinate) + } else { + mThumb = Thumb(xCoordinate + (mWith / mTickCount + xCoordinate / 2) * mCurrentIndex - 4, yCoordinate, mThumbColorNormal, mThumbColorPressed, xCoordinate) + } + //getWidth() - 2 * getXCoordinate() + // float xCoordinate = getBarLength() / (mTickCount - 1) * mCurrentIndex + getXCoordinate(); + // mThumb = new Thumb(xCoordinate, getYCoordinate(), mThumbColorNormal, mThumbColorPressed, mThumbRadius); + } + + private fun indexOutOfRange(thumbIndex: Int): Boolean { + return thumbIndex < 0 || thumbIndex >= mTickCount + } + + private fun isValidTickCount(tickCount: Int): Boolean { + return tickCount > 1 + } + + private fun onActionDown(x: Float, y: Float): Boolean { + if (!mThumb!!.isPressed && mThumb!!.isInTargetZone(x, y)) { + pressThumb(mThumb!!) + } + return true + } + + private fun onActionMove(x: Float): Boolean { + if (mThumb!!.isPressed) { + moveThumb(mThumb, x) + } + return true + } + + private fun onActionUp(x: Float, y: Float): Boolean { + if (mThumb!!.isPressed) { + releaseThumb(mThumb) + } else { + //点击事件 + val tempIndex = mBar!!.getNearestTickIndex(x) + if (tempIndex != mCurrentIndex) { + mCurrentIndex = tempIndex + if (null != mListener) { + mListener!!.onIndexChanged(this, mCurrentIndex) + } + var end = mBar!!.getNearestTickCoordinate(mCurrentIndex) + if (end > mBar!!.rightX) { + end = mBar!!.rightX + } + mThumb!!.x = end + invalidate() + } + mThumb!!.release()//回收 + } + return true + } + + private fun pressThumb(thumb: Thumb) { + thumb.press() + invalidate() + } + + private fun releaseThumb(thumb: Thumb) { + val tempIndex = mBar!!.getNearestTickIndex(thumb) + if (tempIndex != mCurrentIndex) { + mCurrentIndex = tempIndex + if (null != mListener) { + mListener!!.onIndexChanged(this, mCurrentIndex) + } + } + + val start = thumb.x + val end = mBar!!.getNearestTickCoordinate(thumb) + if (mAnimation) { + startAnimation(thumb, start, end) + } else { + thumb.x = end + invalidate() + } + thumb.release() + } + + private fun startAnimation(thumb: Thumb, start: Float, end: Float) { + stopAnimation() + mAnimator = ValueAnimator.ofFloat(start, end) + mAnimator!!.duration = 80 + mAnimator!!.addUpdateListener { animation -> + val x = animation.animatedValue as Float + thumb.x = x + invalidate() + } + mAnimator!!.start() + } + + private fun destroyResources() { + stopAnimation() + if (null != mBar) { + mBar!!.destroyResources() + mBar = null + } + if (null != mThumb) { + mThumb!!.destroyResources() + } + } + + private fun stopAnimation() { + if (null != mAnimator) { + mAnimator!!.cancel() + mAnimator = null + } + } + + private fun moveThumb(thumb: Thumb, x: Float) { + if (x < mBar!!.leftX || x > mBar!!.rightX) { + // Do nothing. + } else { + thumb.x = x + invalidate() + } + } + + interface OnSliderBarChangeListener { + fun onIndexChanged(rangeBar: FontSliderBar, index: Int) + } + + companion object { + + private val TAG = "SliderBar" + + private val DEFAULT_TICK_COUNT = 3 + private val DEFAULT_TICK_HEIGHT = 24f + + private val DEFAULT_BAR_WIDTH = 3f + private val DEFAULT_BAR_COLOR = Color.LTGRAY + + private val DEFAULT_TEXT_SIZE = 14 + private val DEFAULT_TEXT_COLOR = Color.LTGRAY + private val DEFAULT_TEXT_PADDING = 20 + + private val DEFAULT_THUMB_RADIUS = 20f + private val DEFAULT_THUMB_COLOR_NORMAL = -0xcc4a1b + private val DEFAULT_THUMB_COLOR_PRESSED = -0xcc4a1b + } +} diff --git a/app/src/main/java/com/android/learn/view/fontsliderbar/Thumb.kt b/app/src/main/java/com/android/learn/view/fontsliderbar/Thumb.kt new file mode 100644 index 0000000..37cb33b --- /dev/null +++ b/app/src/main/java/com/android/learn/view/fontsliderbar/Thumb.kt @@ -0,0 +1,78 @@ +package com.android.learn.view.fontsliderbar + +import android.graphics.Canvas +import android.graphics.Color +import android.graphics.Paint + +/** + * Created by Administrator on 2017/9/6 0006. + */ + +class Thumb(var x: Float, private val mY: Float, private val mColorNormal: Int, private val mColorPressed: Int, private val mRadius: Float) { + + private val mTouchZone: Float + var isPressed: Boolean = false + private set + + private var mPaintNormal: Paint? = null + private var mPaintPressed: Paint? = null + + init { + + mPaintNormal = Paint() + mPaintNormal!!.color = mColorNormal + mPaintNormal!!.isAntiAlias = true + + mPaintPressed = Paint() + mPaintPressed!!.color = mColorPressed + mPaintPressed!!.isAntiAlias = true + + mTouchZone = Math.max(MINIMUM_TARGET_RADIUS, mRadius).toInt().toFloat() + } + + fun press() { + isPressed = true + } + + fun release() { + isPressed = false + } + + fun isInTargetZone(x: Float, y: Float): Boolean { + return if (Math.abs(x - this.x) <= mTouchZone && Math.abs(y - mY) <= mTouchZone) { + true + } else false + } + + fun draw(canvas: Canvas) { + if (isPressed) { + mPaintPressed!!.color = Color.WHITE + mPaintPressed!!.style = Paint.Style.FILL + canvas.drawCircle(x, mY, mRadius, mPaintPressed!!) + mPaintPressed!!.color = mColorPressed + mPaintPressed!!.style = Paint.Style.STROKE + canvas.drawCircle(x, mY, mRadius - 1, mPaintPressed!!) + } else { + mPaintNormal!!.color = Color.WHITE + mPaintNormal!!.style = Paint.Style.FILL + canvas.drawCircle(x, mY, mRadius, mPaintNormal!!) + mPaintNormal!!.color = mColorPressed + mPaintNormal!!.style = Paint.Style.STROKE + canvas.drawCircle(x, mY, mRadius - 1, mPaintNormal!!) + } + } + + fun destroyResources() { + if (null != mPaintNormal) { + mPaintNormal = null + } + if (null != mPaintPressed) { + mPaintPressed = null + } + } + + companion object { + + private val MINIMUM_TARGET_RADIUS = 50f + } +} diff --git a/AndroidLearnProject/app/src/main/res/anim/anim_dialog_load.xml b/app/src/main/res/anim/anim_dialog_load.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/anim/anim_dialog_load.xml rename to app/src/main/res/anim/anim_dialog_load.xml diff --git a/AndroidLearnProject/app/src/main/res/color/selector_tab_text.xml b/app/src/main/res/color/selector_tab_text.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/color/selector_tab_text.xml rename to app/src/main/res/color/selector_tab_text.xml diff --git a/AndroidLearnProject/app/src/main/res/drawable-v24/ic_launcher_foreground.xml b/app/src/main/res/drawable-v24/ic_launcher_foreground.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable-v24/ic_launcher_foreground.xml rename to app/src/main/res/drawable-v24/ic_launcher_foreground.xml diff --git a/AndroidLearnProject/app/src/main/res/drawable-xhdpi/ic_launcher.png b/app/src/main/res/drawable-xhdpi/ic_launcher.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable-xhdpi/ic_launcher.png rename to app/src/main/res/drawable-xhdpi/ic_launcher.png diff --git a/AndroidLearnProject/app/src/main/res/drawable-xhdpi/ic_launcher_round.png b/app/src/main/res/drawable-xhdpi/ic_launcher_round.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable-xhdpi/ic_launcher_round.png rename to app/src/main/res/drawable-xhdpi/ic_launcher_round.png diff --git a/AndroidLearnProject/app/src/main/res/drawable-xxhdpi/icon_home_tab_select.png b/app/src/main/res/drawable-xxhdpi/icon_home_tab_select.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable-xxhdpi/icon_home_tab_select.png rename to app/src/main/res/drawable-xxhdpi/icon_home_tab_select.png diff --git a/AndroidLearnProject/app/src/main/res/drawable-xxhdpi/icon_home_tab_unselect.png b/app/src/main/res/drawable-xxhdpi/icon_home_tab_unselect.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable-xxhdpi/icon_home_tab_unselect.png rename to app/src/main/res/drawable-xxhdpi/icon_home_tab_unselect.png diff --git a/AndroidLearnProject/app/src/main/res/drawable-xxhdpi/icon_knowledge_tab_select.png b/app/src/main/res/drawable-xxhdpi/icon_knowledge_tab_select.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable-xxhdpi/icon_knowledge_tab_select.png rename to app/src/main/res/drawable-xxhdpi/icon_knowledge_tab_select.png diff --git a/AndroidLearnProject/app/src/main/res/drawable-xxhdpi/icon_knowledge_tab_unselect.png b/app/src/main/res/drawable-xxhdpi/icon_knowledge_tab_unselect.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable-xxhdpi/icon_knowledge_tab_unselect.png rename to app/src/main/res/drawable-xxhdpi/icon_knowledge_tab_unselect.png diff --git a/AndroidLearnProject/app/src/main/res/drawable-xxhdpi/icon_mine_tab_select.png b/app/src/main/res/drawable-xxhdpi/icon_mine_tab_select.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable-xxhdpi/icon_mine_tab_select.png rename to app/src/main/res/drawable-xxhdpi/icon_mine_tab_select.png diff --git a/AndroidLearnProject/app/src/main/res/drawable-xxhdpi/icon_mine_tab_unselect.png b/app/src/main/res/drawable-xxhdpi/icon_mine_tab_unselect.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable-xxhdpi/icon_mine_tab_unselect.png rename to app/src/main/res/drawable-xxhdpi/icon_mine_tab_unselect.png diff --git a/AndroidLearnProject/app/src/main/res/drawable-xxhdpi/icon_navigation_tab_select.png b/app/src/main/res/drawable-xxhdpi/icon_navigation_tab_select.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable-xxhdpi/icon_navigation_tab_select.png rename to app/src/main/res/drawable-xxhdpi/icon_navigation_tab_select.png diff --git a/AndroidLearnProject/app/src/main/res/drawable-xxhdpi/icon_navigation_tab_unselect.png b/app/src/main/res/drawable-xxhdpi/icon_navigation_tab_unselect.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable-xxhdpi/icon_navigation_tab_unselect.png rename to app/src/main/res/drawable-xxhdpi/icon_navigation_tab_unselect.png diff --git a/AndroidLearnProject/app/src/main/res/drawable-xxhdpi/icon_project_tab_select.png b/app/src/main/res/drawable-xxhdpi/icon_project_tab_select.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable-xxhdpi/icon_project_tab_select.png rename to app/src/main/res/drawable-xxhdpi/icon_project_tab_select.png diff --git a/AndroidLearnProject/app/src/main/res/drawable-xxhdpi/icon_project_tab_unselect.png b/app/src/main/res/drawable-xxhdpi/icon_project_tab_unselect.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable-xxhdpi/icon_project_tab_unselect.png rename to app/src/main/res/drawable-xxhdpi/icon_project_tab_unselect.png diff --git a/AndroidLearnProject/app/src/main/res/drawable-xxhdpi/icon_public_account_select.png b/app/src/main/res/drawable-xxhdpi/icon_public_account_select.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable-xxhdpi/icon_public_account_select.png rename to app/src/main/res/drawable-xxhdpi/icon_public_account_select.png diff --git a/AndroidLearnProject/app/src/main/res/drawable-xxhdpi/icon_public_account_unselect.png b/app/src/main/res/drawable-xxhdpi/icon_public_account_unselect.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable-xxhdpi/icon_public_account_unselect.png rename to app/src/main/res/drawable-xxhdpi/icon_public_account_unselect.png diff --git a/AndroidLearnProject/app/src/main/res/drawable-xxhdpi/progress_dialog_icon.png b/app/src/main/res/drawable-xxhdpi/progress_dialog_icon.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable-xxhdpi/progress_dialog_icon.png rename to app/src/main/res/drawable-xxhdpi/progress_dialog_icon.png diff --git a/AndroidLearnProject/app/src/main/res/drawable-xxxhdpi/progress_dialog_icon.png b/app/src/main/res/drawable-xxxhdpi/progress_dialog_icon.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable-xxxhdpi/progress_dialog_icon.png rename to app/src/main/res/drawable-xxxhdpi/progress_dialog_icon.png diff --git a/AndroidLearnProject/app/src/main/res/drawable/banner_selected_radius.xml b/app/src/main/res/drawable/banner_selected_radius.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable/banner_selected_radius.xml rename to app/src/main/res/drawable/banner_selected_radius.xml diff --git a/AndroidLearnProject/app/src/main/res/drawable/bt_refresh_selector.xml b/app/src/main/res/drawable/bt_refresh_selector.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable/bt_refresh_selector.xml rename to app/src/main/res/drawable/bt_refresh_selector.xml diff --git a/AndroidLearnProject/app/src/main/res/drawable/color_cursor.xml b/app/src/main/res/drawable/color_cursor.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable/color_cursor.xml rename to app/src/main/res/drawable/color_cursor.xml diff --git a/AndroidLearnProject/app/src/main/res/drawable/common_bg_loading.xml b/app/src/main/res/drawable/common_bg_loading.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable/common_bg_loading.xml rename to app/src/main/res/drawable/common_bg_loading.xml diff --git a/AndroidLearnProject/app/src/main/res/drawable/ic_history_black_24dp.xml b/app/src/main/res/drawable/ic_history_black_24dp.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable/ic_history_black_24dp.xml rename to app/src/main/res/drawable/ic_history_black_24dp.xml diff --git a/AndroidLearnProject/app/src/main/res/drawable/ic_launcher_background.xml b/app/src/main/res/drawable/ic_launcher_background.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable/ic_launcher_background.xml rename to app/src/main/res/drawable/ic_launcher_background.xml diff --git a/AndroidLearnProject/app/src/main/res/drawable/shape_stroke_state_normal.xml b/app/src/main/res/drawable/shape_stroke_state_normal.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable/shape_stroke_state_normal.xml rename to app/src/main/res/drawable/shape_stroke_state_normal.xml diff --git a/AndroidLearnProject/app/src/main/res/drawable/shape_stroke_state_press.xml b/app/src/main/res/drawable/shape_stroke_state_press.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable/shape_stroke_state_press.xml rename to app/src/main/res/drawable/shape_stroke_state_press.xml diff --git a/AndroidLearnProject/app/src/main/res/drawable/tab_selector_home.xml b/app/src/main/res/drawable/tab_selector_home.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable/tab_selector_home.xml rename to app/src/main/res/drawable/tab_selector_home.xml diff --git a/AndroidLearnProject/app/src/main/res/drawable/tab_selector_knowledge.xml b/app/src/main/res/drawable/tab_selector_knowledge.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable/tab_selector_knowledge.xml rename to app/src/main/res/drawable/tab_selector_knowledge.xml diff --git a/AndroidLearnProject/app/src/main/res/drawable/tab_selector_mine.xml b/app/src/main/res/drawable/tab_selector_mine.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable/tab_selector_mine.xml rename to app/src/main/res/drawable/tab_selector_mine.xml diff --git a/AndroidLearnProject/app/src/main/res/drawable/tab_selector_novagation.xml b/app/src/main/res/drawable/tab_selector_novagation.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable/tab_selector_novagation.xml rename to app/src/main/res/drawable/tab_selector_novagation.xml diff --git a/AndroidLearnProject/app/src/main/res/drawable/tab_selector_project.xml b/app/src/main/res/drawable/tab_selector_project.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable/tab_selector_project.xml rename to app/src/main/res/drawable/tab_selector_project.xml diff --git a/AndroidLearnProject/app/src/main/res/drawable/unselected_radius.xml b/app/src/main/res/drawable/unselected_radius.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable/unselected_radius.xml rename to app/src/main/res/drawable/unselected_radius.xml diff --git a/AndroidLearnProject/app/src/main/res/layout/activity_article_detail.xml b/app/src/main/res/layout/activity_article_detail.xml similarity index 81% rename from AndroidLearnProject/app/src/main/res/layout/activity_article_detail.xml rename to app/src/main/res/layout/activity_article_detail.xml index 14d9995..2b78f2a 100644 --- a/AndroidLearnProject/app/src/main/res/layout/activity_article_detail.xml +++ b/app/src/main/res/layout/activity_article_detail.xml @@ -5,12 +5,13 @@ android:layout_height="match_parent" android:orientation="vertical"> - - diff --git a/AndroidLearnProject/app/src/main/res/layout/activity_collect.xml b/app/src/main/res/layout/activity_collect.xml similarity index 92% rename from AndroidLearnProject/app/src/main/res/layout/activity_collect.xml rename to app/src/main/res/layout/activity_collect.xml index 03beb9c..c72b504 100644 --- a/AndroidLearnProject/app/src/main/res/layout/activity_collect.xml +++ b/app/src/main/res/layout/activity_collect.xml @@ -8,7 +8,7 @@ skin:enable="true"> - @@ -19,7 +19,7 @@ android:layout_height="match_parent" android:layout_below="@id/layout_title"> - diff --git a/AndroidLearnProject/app/src/main/res/layout/activity_edit_todo.xml b/app/src/main/res/layout/activity_edit_todo.xml old mode 100755 new mode 100644 similarity index 98% rename from AndroidLearnProject/app/src/main/res/layout/activity_edit_todo.xml rename to app/src/main/res/layout/activity_edit_todo.xml index de9116d..30bc88a --- a/AndroidLearnProject/app/src/main/res/layout/activity_edit_todo.xml +++ b/app/src/main/res/layout/activity_edit_todo.xml @@ -7,7 +7,7 @@ android:orientation="vertical" skin:enable="true"> - diff --git a/AndroidLearnProject/app/src/main/res/layout/activity_fontsizes.xml b/app/src/main/res/layout/activity_fontsizes.xml similarity index 98% rename from AndroidLearnProject/app/src/main/res/layout/activity_fontsizes.xml rename to app/src/main/res/layout/activity_fontsizes.xml index 4d44b7d..742926b 100644 --- a/AndroidLearnProject/app/src/main/res/layout/activity_fontsizes.xml +++ b/app/src/main/res/layout/activity_fontsizes.xml @@ -8,7 +8,7 @@ skin:enable="true"> - diff --git a/AndroidLearnProject/app/src/main/res/layout/activity_help_feedback.xml b/app/src/main/res/layout/activity_help_feedback.xml similarity index 98% rename from AndroidLearnProject/app/src/main/res/layout/activity_help_feedback.xml rename to app/src/main/res/layout/activity_help_feedback.xml index 5b60b3c..5610b43 100644 --- a/AndroidLearnProject/app/src/main/res/layout/activity_help_feedback.xml +++ b/app/src/main/res/layout/activity_help_feedback.xml @@ -7,7 +7,7 @@ skin:enable="true" android:orientation="vertical"> - @@ -73,6 +73,7 @@ android:hint="@string/please_inupt_content" skin:enable="true" android:gravity="top" + android:textSize="14sp" android:inputType="text" /> diff --git a/AndroidLearnProject/app/src/main/res/layout/activity_knowledge_article.xml b/app/src/main/res/layout/activity_knowledge_article.xml similarity index 92% rename from AndroidLearnProject/app/src/main/res/layout/activity_knowledge_article.xml rename to app/src/main/res/layout/activity_knowledge_article.xml index 7eb5614..1e0eb4e 100644 --- a/AndroidLearnProject/app/src/main/res/layout/activity_knowledge_article.xml +++ b/app/src/main/res/layout/activity_knowledge_article.xml @@ -7,7 +7,7 @@ android:orientation="vertical" skin:enable="true"> - @@ -18,7 +18,7 @@ android:layout_width="match_parent" android:layout_height="match_parent"> - - diff --git a/AndroidLearnProject/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml similarity index 94% rename from AndroidLearnProject/app/src/main/res/layout/activity_main.xml rename to app/src/main/res/layout/activity_main.xml index 3dca483..0d29520 100644 --- a/AndroidLearnProject/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -2,6 +2,7 @@ - + android:layout_height="wrap_content" /> - + app:tabIndicatorHeight="0dp" /> - + android:visibility="gone" + tools:visibility="visible"> - - - - @@ -74,7 +74,7 @@ android:text="@string/night_mode" skin:enable="true" /> - + android:layout_height="match_parent"> - @@ -58,7 +58,7 @@ android:background="@color/divider_color" skin:enable="true" /> - - + diff --git a/AndroidLearnProject/app/src/main/res/layout/fragment_knowledge.xml b/app/src/main/res/layout/fragment_knowledge.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/layout/fragment_knowledge.xml rename to app/src/main/res/layout/fragment_knowledge.xml diff --git a/AndroidLearnProject/app/src/main/res/layout/fragment_project.xml b/app/src/main/res/layout/fragment_project.xml similarity index 94% rename from AndroidLearnProject/app/src/main/res/layout/fragment_project.xml rename to app/src/main/res/layout/fragment_project.xml index 1e449a0..804f84b 100644 --- a/AndroidLearnProject/app/src/main/res/layout/fragment_project.xml +++ b/app/src/main/res/layout/fragment_project.xml @@ -12,7 +12,7 @@ android:layout_width="match_parent" android:layout_height="match_parent"> - - diff --git a/AndroidLearnProject/app/src/main/res/layout/fragment_user.xml b/app/src/main/res/layout/fragment_user.xml similarity index 98% rename from AndroidLearnProject/app/src/main/res/layout/fragment_user.xml rename to app/src/main/res/layout/fragment_user.xml index deed9f4..cc36641 100644 --- a/AndroidLearnProject/app/src/main/res/layout/fragment_user.xml +++ b/app/src/main/res/layout/fragment_user.xml @@ -19,7 +19,7 @@ android:paddingTop="24dp" skin:enable="true"> - - + app:text_unselected_color="@color/text_color" + skin:enable="true" /> - diff --git a/AndroidLearnProject/app/src/main/res/layout/fragment_wechat_sub.xml b/app/src/main/res/layout/fragment_wechat_sub.xml similarity index 93% rename from AndroidLearnProject/app/src/main/res/layout/fragment_wechat_sub.xml rename to app/src/main/res/layout/fragment_wechat_sub.xml index 0e1cf50..c956174 100644 --- a/AndroidLearnProject/app/src/main/res/layout/fragment_wechat_sub.xml +++ b/app/src/main/res/layout/fragment_wechat_sub.xml @@ -13,7 +13,7 @@ android:layout_height="match_parent"> - diff --git a/AndroidLearnProject/app/src/main/res/layout/iatdemo.xml b/app/src/main/res/layout/iatdemo.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/layout/iatdemo.xml rename to app/src/main/res/layout/iatdemo.xml diff --git a/AndroidLearnProject/app/src/main/res/layout/item_article_list.xml b/app/src/main/res/layout/item_article_list.xml similarity index 75% rename from AndroidLearnProject/app/src/main/res/layout/item_article_list.xml rename to app/src/main/res/layout/item_article_list.xml index eced6b5..f4eb2fb 100644 --- a/AndroidLearnProject/app/src/main/res/layout/item_article_list.xml +++ b/app/src/main/res/layout/item_article_list.xml @@ -1,24 +1,21 @@ - - + android:textSize="16sp" + skin:enable="true" /> + android:textColor="@color/color_666666" + skin:enable="true" + tools:text="2023" /> - + android:maxLines="1" + android:textColor="@color/color_666666" + skin:enable="true" + tools:text="GcsSloop" /> - @@ -19,66 +18,65 @@ android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_gravity="center_vertical" - android:layout_marginLeft="10dp"> + android:layout_marginStart="10dp"> + android:textSize="16sp" + skin:enable="true" /> - + android:maxLines="2" + android:textColor="@color/text_color" + skin:enable="true" /> + android:layout_alignParentBottom="true"> + android:textColor="@color/color_666666" + skin:enable="true" + tools:text="2024" /> - + android:maxLines="1" + android:textColor="@color/color_666666" + skin:enable="true" + tools:text="success" /> - diff --git a/AndroidLearnProject/app/src/main/res/layout/item_search_record.xml b/app/src/main/res/layout/item_search_record.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/layout/item_search_record.xml rename to app/src/main/res/layout/item_search_record.xml diff --git a/AndroidLearnProject/app/src/main/res/layout/item_tree.xml b/app/src/main/res/layout/item_tree.xml similarity index 85% rename from AndroidLearnProject/app/src/main/res/layout/item_tree.xml rename to app/src/main/res/layout/item_tree.xml index 3cdb60a..c02b565 100644 --- a/AndroidLearnProject/app/src/main/res/layout/item_tree.xml +++ b/app/src/main/res/layout/item_tree.xml @@ -6,7 +6,7 @@ android:layout_width="match_parent" android:layout_height="match_parent"> - @@ -39,13 +39,13 @@ android:paddingLeft="20dp" android:paddingRight="20dp" android:textColor="@color/colorAccent" - android:textSize="30sp" + android:textSize="24sp" android:typeface="sans" tools:text="DeliveryDeliveryDelivery" /> - - + \ No newline at end of file diff --git a/AndroidLearnProject/app/src/main/res/layout/item_tree_children.xml b/app/src/main/res/layout/item_tree_children.xml similarity index 86% rename from AndroidLearnProject/app/src/main/res/layout/item_tree_children.xml rename to app/src/main/res/layout/item_tree_children.xml index a0474d9..9638e9e 100644 --- a/AndroidLearnProject/app/src/main/res/layout/item_tree_children.xml +++ b/app/src/main/res/layout/item_tree_children.xml @@ -3,11 +3,11 @@ xmlns:tools="http://schemas.android.com/tools" android:id="@+id/tv" android:layout_width="match_parent" - android:layout_height="60dp" + android:layout_height="45dp" android:background="?android:attr/selectableItemBackground" android:gravity="center" android:textColor="@color/colorBlue" - android:textSize="20sp" + android:textSize="18sp" tools:text="网络基础">
\ No newline at end of file diff --git a/AndroidLearnProject/app/src/main/res/layout/layout_error_page.xml b/app/src/main/res/layout/layout_error_page.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/layout/layout_error_page.xml rename to app/src/main/res/layout/layout_error_page.xml diff --git a/AndroidLearnProject/app/src/main/res/layout/tab_done.xml b/app/src/main/res/layout/tab_done.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/layout/tab_done.xml rename to app/src/main/res/layout/tab_done.xml diff --git a/AndroidLearnProject/app/src/main/res/layout/tab_home.xml b/app/src/main/res/layout/tab_home.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/layout/tab_home.xml rename to app/src/main/res/layout/tab_home.xml diff --git a/AndroidLearnProject/app/src/main/res/layout/tab_knowledge.xml b/app/src/main/res/layout/tab_knowledge.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/layout/tab_knowledge.xml rename to app/src/main/res/layout/tab_knowledge.xml diff --git a/AndroidLearnProject/app/src/main/res/layout/tab_mine.xml b/app/src/main/res/layout/tab_mine.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/layout/tab_mine.xml rename to app/src/main/res/layout/tab_mine.xml diff --git a/AndroidLearnProject/app/src/main/res/layout/tab_navigation.xml b/app/src/main/res/layout/tab_navigation.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/layout/tab_navigation.xml rename to app/src/main/res/layout/tab_navigation.xml diff --git a/AndroidLearnProject/app/src/main/res/layout/tab_project.xml b/app/src/main/res/layout/tab_project.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/layout/tab_project.xml rename to app/src/main/res/layout/tab_project.xml diff --git a/AndroidLearnProject/app/src/main/res/layout/tab_todo.xml b/app/src/main/res/layout/tab_todo.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/layout/tab_todo.xml rename to app/src/main/res/layout/tab_todo.xml diff --git a/AndroidLearnProject/app/src/main/res/layout/todo_item_view.xml b/app/src/main/res/layout/todo_item_view.xml old mode 100755 new mode 100644 similarity index 100% rename from AndroidLearnProject/app/src/main/res/layout/todo_item_view.xml rename to app/src/main/res/layout/todo_item_view.xml diff --git a/AndroidLearnProject/app/src/main/res/layout/view_item_clear_history.xml b/app/src/main/res/layout/view_item_clear_history.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/layout/view_item_clear_history.xml rename to app/src/main/res/layout/view_item_clear_history.xml diff --git a/AndroidLearnProject/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml rename to app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml diff --git a/AndroidLearnProject/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml b/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml rename to app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml diff --git a/AndroidLearnProject/app/src/main/res/mipmap-hdpi/ic_launcher.png b/app/src/main/res/mipmap-hdpi/ic_launcher.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/mipmap-hdpi/ic_launcher.png rename to app/src/main/res/mipmap-hdpi/ic_launcher.png diff --git a/AndroidLearnProject/app/src/main/res/mipmap-hdpi/ic_launcher_round.png b/app/src/main/res/mipmap-hdpi/ic_launcher_round.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/mipmap-hdpi/ic_launcher_round.png rename to app/src/main/res/mipmap-hdpi/ic_launcher_round.png diff --git a/AndroidLearnProject/app/src/main/res/mipmap-mdpi/ic_launcher.png b/app/src/main/res/mipmap-mdpi/ic_launcher.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/mipmap-mdpi/ic_launcher.png rename to app/src/main/res/mipmap-mdpi/ic_launcher.png diff --git a/AndroidLearnProject/app/src/main/res/mipmap-mdpi/ic_launcher_round.png b/app/src/main/res/mipmap-mdpi/ic_launcher_round.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/mipmap-mdpi/ic_launcher_round.png rename to app/src/main/res/mipmap-mdpi/ic_launcher_round.png diff --git a/app/src/main/res/mipmap-xhdpi/app_icon.png b/app/src/main/res/mipmap-xhdpi/app_icon.png new file mode 100644 index 0000000..477e1de Binary files /dev/null and b/app/src/main/res/mipmap-xhdpi/app_icon.png differ diff --git a/AndroidLearnProject/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/app/src/main/res/mipmap-xhdpi/ic_launcher.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/mipmap-xhdpi/ic_launcher.png rename to app/src/main/res/mipmap-xhdpi/ic_launcher.png diff --git a/AndroidLearnProject/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png b/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png rename to app/src/main/res/mipmap-xhdpi/ic_launcher_round.png diff --git a/AndroidLearnProject/app/src/main/res/mipmap-xhdpi/icon_back_arrow_clicked.png b/app/src/main/res/mipmap-xhdpi/icon_back_arrow_clicked.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/mipmap-xhdpi/icon_back_arrow_clicked.png rename to app/src/main/res/mipmap-xhdpi/icon_back_arrow_clicked.png diff --git a/AndroidLearnProject/app/src/main/res/mipmap-xhdpi/icon_comn_back.png b/app/src/main/res/mipmap-xhdpi/icon_comn_back.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/mipmap-xhdpi/icon_comn_back.png rename to app/src/main/res/mipmap-xhdpi/icon_comn_back.png diff --git a/AndroidLearnProject/app/src/main/res/mipmap-xhdpi/pic_android.png b/app/src/main/res/mipmap-xhdpi/pic_android.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/mipmap-xhdpi/pic_android.png rename to app/src/main/res/mipmap-xhdpi/pic_android.png diff --git a/AndroidLearnProject/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/app/src/main/res/mipmap-xxhdpi/ic_launcher.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/mipmap-xxhdpi/ic_launcher.png rename to app/src/main/res/mipmap-xxhdpi/ic_launcher.png diff --git a/AndroidLearnProject/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png b/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png rename to app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png diff --git a/AndroidLearnProject/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png rename to app/src/main/res/mipmap-xxxhdpi/ic_launcher.png diff --git a/AndroidLearnProject/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png b/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png rename to app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png diff --git a/AndroidLearnProject/app/src/main/res/values-en/values.xml b/app/src/main/res/values-en/strings.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/values-en/values.xml rename to app/src/main/res/values-en/strings.xml diff --git a/AndroidLearnProject/app/src/main/res/values-zh/values-zh.xml b/app/src/main/res/values-zh/strings.xml similarity index 57% rename from AndroidLearnProject/app/src/main/res/values-zh/values-zh.xml rename to app/src/main/res/values-zh/strings.xml index 8e2c7b1..d83863d 100644 --- a/AndroidLearnProject/app/src/main/res/values-zh/values-zh.xml +++ b/app/src/main/res/values-zh/strings.xml @@ -1,5 +1,5 @@ - 学Android + 学安卓 \ No newline at end of file diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml new file mode 100644 index 0000000..7e7c3a7 --- /dev/null +++ b/app/src/main/res/values/dimens.xml @@ -0,0 +1,5 @@ + + + 10dp + + \ No newline at end of file diff --git a/AndroidLearnProject/app/src/main/res/values/values.xml b/app/src/main/res/values/strings.xml similarity index 57% rename from AndroidLearnProject/app/src/main/res/values/values.xml rename to app/src/main/res/values/strings.xml index 6d4408c..5b26d8b 100644 --- a/AndroidLearnProject/app/src/main/res/values/values.xml +++ b/app/src/main/res/values/strings.xml @@ -1,5 +1,5 @@ - 学Android + 学安卓 diff --git a/AndroidLearnProject/app/src/main/res/xml/iat_setting.xml b/app/src/main/res/xml/iat_setting.xml similarity index 100% rename from AndroidLearnProject/app/src/main/res/xml/iat_setting.xml rename to app/src/main/res/xml/iat_setting.xml diff --git a/app/src/main/res/xml/network_security_config.xml b/app/src/main/res/xml/network_security_config.xml new file mode 100644 index 0000000..176d19a --- /dev/null +++ b/app/src/main/res/xml/network_security_config.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/AndroidLearnProject/app/src/test/java/com/gaolei/mvpmodel/ExampleUnitTest.java b/app/src/test/java/com/gaolei/mvpmodel/ExampleUnitTest.java similarity index 100% rename from AndroidLearnProject/app/src/test/java/com/gaolei/mvpmodel/ExampleUnitTest.java rename to app/src/test/java/com/gaolei/mvpmodel/ExampleUnitTest.java diff --git a/AndroidLearnProject/basemodule/.gitignore b/basemodule/.gitignore similarity index 77% rename from AndroidLearnProject/basemodule/.gitignore rename to basemodule/.gitignore index d33685b..91b5667 100644 --- a/AndroidLearnProject/basemodule/.gitignore +++ b/basemodule/.gitignore @@ -1,7 +1,7 @@ .gradle/ .DS_Store local.properties - +/com.android.base.greendao.gen # build files build/ bin/ diff --git a/basemodule/build.gradle b/basemodule/build.gradle new file mode 100644 index 0000000..c007077 --- /dev/null +++ b/basemodule/build.gradle @@ -0,0 +1,102 @@ +apply plugin: 'com.android.library' +//使用greendao +apply plugin: 'org.greenrobot.greendao' +apply plugin: 'com.jakewharton.butterknife' +apply plugin: 'kotlin-android' +apply plugin: 'kotlin-android-extensions' +apply plugin: 'kotlin-kapt' +android { + compileSdkVersion rootProject.ext.compileSdkVersion + defaultConfig { + minSdkVersion rootProject.ext.minSdkVersion + targetSdkVersion rootProject.ext.targetSdkVersion + + testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner' + javaCompileOptions { + annotationProcessorOptions { + arguments = [eventBusIndex: 'com.android.learn.MyEventBusIndex'] + } + } + } + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' + } + } + + greendao { + schemaVersion 1 //数据库版本号,如果数据库需要升级,直接在此修改版本号即可 + daoPackage 'com.android.base.greendao.gen' //dao包名,默认是entity所在的包 + targetGenDir 'src/main/java' //数据库文件的目录 + } + + //执行lint检查,有任何的错误或者警告提示,都会终止构建 + lintOptions { + abortOnError false + } + compileOptions { + sourceCompatibility 1.8 + targetCompatibility 1.8 + } +} +dependencies { + api fileTree(include: ['*.jar'], dir: 'libs') + testImplementation 'junit:junit:4.12' + api "androidx.appcompat:appcompat:$rootProject.androidx" + api "com.google.android.material:material:$rootProject.design" + api "androidx.constraintlayout:constraintlayout:$rootProject.constraint_layout" + api "androidx.cardview:cardview:$rootProject.cardview" + kapt 'androidx.annotation:annotation:1.3.0' + api 'androidx.multidex:multidex:2.0.0' + //okhttp retrofit + api "com.squareup.okhttp3:okhttp:$rootProject.okhttp3" + api "com.squareup.retrofit2:retrofit:$rootProject.retrofit" + api "com.squareup.retrofit2:converter-gson:$rootProject.retrofit_converter_gson" + //okhttp保存cookie + api "com.github.franmontiel:PersistentCookieJar:$rootProject.PersistentCookieJar" + //butterknife + api "com.jakewharton:butterknife:$rootProject.butterknife" + kapt "com.jakewharton:butterknife-compiler:$rootProject.butterknife_compiler" + // glide + api "com.github.bumptech.glide:glide:$rootProject.glide" + kapt "com.github.bumptech.glide:compiler:$rootProject.glide_compiler" + implementation "com.github.bumptech.glide:okhttp3-integration:$rootProject.glide" + // banner + api "com.youth.banner:banner:$rootProject.banner" + // rxjava + api "io.reactivex.rxjava2:rxjava:$rootProject.rxjava" + api "io.reactivex.rxjava2:rxandroid:$rootProject.rxandroid" + api "com.squareup.retrofit2:adapter-rxjava2:$rootProject.adapter_rxjava2" + // eventbus + api "org.greenrobot:eventbus:$rootProject.event_bus" + kapt "org.greenrobot:eventbus-annotation-processor:$rootProject.eventbus_annotation_processor" + //下拉刷新框架 + api "com.scwang.smartrefresh:SmartRefreshLayout:$rootProject.SmartRefreshLayout" + api "com.scwang.smartrefresh:SmartRefreshHeader:$rootProject.SmartRefreshLayout" + //RecyclerView万能适配器 + api "com.github.CymChad:BaseRecyclerViewAdapterHelper:$rootProject.BaseRecyclerViewAdapterHelper" + //友盟统计 + api "com.umeng.sdk:common:$rootProject.umeng_common" + api "com.umeng.sdk:analytics:$rootProject.umeng_analytics" + + //崩溃自定义跳转界面 + api "cat.ereza:customactivityoncrash:$rootProject.customactivityoncrash" + //知识点模块的旋转效果 + api "com.github.devlight:infinitecycleviewpager:$rootProject.infinitecycleviewpager" + // 首页欢迎的SVGA动效 + api "com.github.yyued:SVGAPlayer-Android:$rootProject.SVGAPlayer_Android" + // 搜索页的flow标签 + api "cn.lankton:flowlayout:$rootProject.flowlayout" + // 搜索历史使用的数据库框架 + api "org.greenrobot:greendao:$rootProject.greendao" + // activity滑动消失框架 + api "cn.bingoogolapple:bga-swipebacklayout:$rootProject.bga_swipebacklayout" + // StatusUtil 沉浸式状态栏 + api('com.jaeger.statusbarutil:library:1.4.0') { + exclude group: 'com.android.support', module: 'recyclerview-v7' + } + // 换肤框架,不必重启应用 + api 'com.windysha.xskinloader:xskinloader:0.1.0' + api "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" +} diff --git a/AndroidLearnProject/basemodule/libs/Msc.jar b/basemodule/libs/Msc.jar similarity index 100% rename from AndroidLearnProject/basemodule/libs/Msc.jar rename to basemodule/libs/Msc.jar diff --git a/AndroidLearnProject/basemodule/libs/Sunflower.jar b/basemodule/libs/Sunflower.jar similarity index 100% rename from AndroidLearnProject/basemodule/libs/Sunflower.jar rename to basemodule/libs/Sunflower.jar diff --git a/AndroidLearnProject/basemodule/libs/activation.jar b/basemodule/libs/activation.jar similarity index 100% rename from AndroidLearnProject/basemodule/libs/activation.jar rename to basemodule/libs/activation.jar diff --git a/AndroidLearnProject/basemodule/libs/additionnal.jar b/basemodule/libs/additionnal.jar similarity index 100% rename from AndroidLearnProject/basemodule/libs/additionnal.jar rename to basemodule/libs/additionnal.jar diff --git a/AndroidLearnProject/basemodule/libs/mail.jar b/basemodule/libs/mail.jar similarity index 100% rename from AndroidLearnProject/basemodule/libs/mail.jar rename to basemodule/libs/mail.jar diff --git a/AndroidLearnProject/basemodule/proguard-rules.pro b/basemodule/proguard-rules.pro similarity index 100% rename from AndroidLearnProject/basemodule/proguard-rules.pro rename to basemodule/proguard-rules.pro diff --git a/AndroidLearnProject/basemodule/src/androidTest/java/com/gaolei/basemodule/ExampleInstrumentedTest.java b/basemodule/src/androidTest/java/com/gaolei/basemodule/ExampleInstrumentedTest.java similarity index 100% rename from AndroidLearnProject/basemodule/src/androidTest/java/com/gaolei/basemodule/ExampleInstrumentedTest.java rename to basemodule/src/androidTest/java/com/gaolei/basemodule/ExampleInstrumentedTest.java diff --git a/AndroidLearnProject/xskinloader-lib/src/main/AndroidManifest.xml b/basemodule/src/main/AndroidManifest.xml similarity index 59% rename from AndroidLearnProject/xskinloader-lib/src/main/AndroidManifest.xml rename to basemodule/src/main/AndroidManifest.xml index 6bf71a3..3d5fcfa 100644 --- a/AndroidLearnProject/xskinloader-lib/src/main/AndroidManifest.xml +++ b/basemodule/src/main/AndroidManifest.xml @@ -1,2 +1,5 @@ + package="com.android.base" > + + + diff --git a/AndroidLearnProject/basemodule/src/main/assets/iflytek/recognize.xml b/basemodule/src/main/assets/iflytek/recognize.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/assets/iflytek/recognize.xml rename to basemodule/src/main/assets/iflytek/recognize.xml diff --git a/AndroidLearnProject/basemodule/src/main/assets/iflytek/voice_bg.9.png b/basemodule/src/main/assets/iflytek/voice_bg.9.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/assets/iflytek/voice_bg.9.png rename to basemodule/src/main/assets/iflytek/voice_bg.9.png diff --git a/AndroidLearnProject/basemodule/src/main/assets/iflytek/voice_empty.png b/basemodule/src/main/assets/iflytek/voice_empty.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/assets/iflytek/voice_empty.png rename to basemodule/src/main/assets/iflytek/voice_empty.png diff --git a/AndroidLearnProject/basemodule/src/main/assets/iflytek/voice_full.png b/basemodule/src/main/assets/iflytek/voice_full.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/assets/iflytek/voice_full.png rename to basemodule/src/main/assets/iflytek/voice_full.png diff --git a/AndroidLearnProject/basemodule/src/main/assets/iflytek/waiting.png b/basemodule/src/main/assets/iflytek/waiting.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/assets/iflytek/waiting.png rename to basemodule/src/main/assets/iflytek/waiting.png diff --git a/AndroidLearnProject/basemodule/src/main/assets/iflytek/warning.png b/basemodule/src/main/assets/iflytek/warning.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/assets/iflytek/warning.png rename to basemodule/src/main/assets/iflytek/warning.png diff --git a/basemodule/src/main/java/com/android/base/activity/BaseActivity.kt b/basemodule/src/main/java/com/android/base/activity/BaseActivity.kt new file mode 100644 index 0000000..3228aa8 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/activity/BaseActivity.kt @@ -0,0 +1,207 @@ +package com.android.base.activity + +import android.content.Context +import android.content.res.Resources +import android.os.Build +import android.os.Bundle +import android.view.View +import butterknife.ButterKnife +import cn.bingoogolapple.swipebacklayout.BGASwipeBackHelper +import com.android.base.R +import com.android.base.application.CustomApplication +import com.android.base.utils.LogUtil +import com.android.base.utils.SPUtils +import com.jaeger.library.StatusBarUtil +import com.umeng.analytics.MobclickAgent +import com.wind.me.xskinloader.SkinInflaterFactory +import com.wind.me.xskinloader.SkinManager +import com.wind.me.xskinloader.util.AssetFileUtils +import java.io.File + + +/** + * Created by gaolei on 2018/4/26. + */ + +abstract class BaseActivity : BasePermisssionActivity(), View.OnClickListener, BGASwipeBackHelper.Delegate { + + internal var isNightMode: Boolean? = null + + internal var TAG = "BaseActivity" + lateinit var mSwipeBackHelper: BGASwipeBackHelper + + + open val layoutId = 0 + + override fun onCreate(savedInstanceState: Bundle?) { + + // 「必须在 Application 的 onCreate 方法中执行 BGASwipeBackHelper.init 来初始化滑动返回」 + // 在 super.onCreate(savedInstanceState) 之前调用该方法 + initSwipeBackFinish() + super.onCreate(savedInstanceState) + + SkinInflaterFactory.setFactory(this) + setContentView(layoutId) + ButterKnife.bind(this) + setStatusBar() + + val bundle = intent.extras + + initData(bundle) + + } + + open fun initData(bundle: Bundle?) {} + + override fun onClick(v: View) { + if (v.id == R.id.iv_back) { + finish() + } + } + + + override fun onResume() { + super.onResume() + MobclickAgent.onResume(this) + // context = this; + LogUtil.d(TAG, "BaseActivity ----onResume:" + javaClass.name.toString()) + } + + + override fun onPause() { + super.onPause() + MobclickAgent.onPause(this) + } + + + override fun onDestroy() { + super.onDestroy() + LogUtil.d(TAG, "BaseActivity ----onDestroy:" + javaClass.name.toString()) + } + + fun useNightMode(isNight: Boolean) { + + if (isNight) { + changeSkin() + + } else { + + restoreDefaultSkin() + } + } + + //重写字体缩放比例 api>25 + override fun attachBaseContext(newBase: Context) { + + if (Build.VERSION.SDK_INT > Build.VERSION_CODES.N) { + val res = newBase.resources + val config = res.configuration + config.fontScale = CustomApplication.instance.fontScale//1 设置正常字体大小的倍数 + val newContext = newBase.createConfigurationContext(config) + super.attachBaseContext(newContext) + } else { + super.attachBaseContext(newBase) + } + } + + //重写字体缩放比例 api<25 + override fun getResources(): Resources { + val res = super.getResources() + if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.N) { + val config = res.configuration + config.fontScale = CustomApplication.instance.fontScale//1 设置正常字体大小的倍数 + res.updateConfiguration(config, res.displayMetrics) + } + return res + } + + private fun changeSkin() { + //将assets目录下的皮肤文件拷贝到data/data/.../cache目录下 + val saveDir = cacheDir.absolutePath + "/skins" + val savefileName = "/skin1.skin" + val asset_dir = "skins/xskinloader-skin-apk-debug.apk" + val file = File(saveDir + File.separator + savefileName) + // if (!file.exists()) { + AssetFileUtils.copyAssetFile(this, asset_dir, saveDir, savefileName) + // } + SkinManager.get().loadSkin(file.absolutePath) + } + + private fun restoreDefaultSkin() { + SkinManager.get().restoreToDefaultSkin() + } + + + /** + * 初始化滑动返回。在 super.onCreate(savedInstanceState) 之前调用该方法 + */ + private fun initSwipeBackFinish() { + mSwipeBackHelper = BGASwipeBackHelper(this, this) + + // 「必须在 Application 的 onCreate 方法中执行 BGASwipeBackHelper.init 来初始化滑动返回」 + // 下面几项可以不配置,这里只是为了讲述接口用法。 + + // 设置滑动返回是否可用。默认值为 true + mSwipeBackHelper.setSwipeBackEnable(true) + // 设置是否仅仅跟踪左侧边缘的滑动返回。默认值为 true + mSwipeBackHelper.setIsOnlyTrackingLeftEdge(false) + // 设置是否是微信滑动返回样式。默认值为 true + mSwipeBackHelper.setIsWeChatStyle(true) + // 设置阴影资源 id。默认值为 R.drawable.bga_sbl_shadow + mSwipeBackHelper.setShadowResId(R.drawable.bga_sbl_shadow) + // 设置是否显示滑动返回的阴影效果。默认值为 true + mSwipeBackHelper.setIsNeedShowShadow(true) + // 设置阴影区域的透明度是否根据滑动的距离渐变。默认值为 true + mSwipeBackHelper.setIsShadowAlphaGradient(true) + // 设置触发释放后自动滑动返回的阈值,默认值为 0.3f + mSwipeBackHelper.setSwipeBackThreshold(0.3f) + // 设置底部导航条是否悬浮在内容上,默认值为 false + mSwipeBackHelper.setIsNavigationBarOverlap(false) + } + + /** + * 是否支持滑动返回。这里在父类中默认返回 true 来支持滑动返回,如果某个界面不想支持滑动返回则重写该方法返回 false 即可 + * + * @return + */ + override fun isSupportSwipeBack(): Boolean { + return true + } + + /** + * 正在滑动返回 + * + * @param slideOffset 从 0 到 1 + */ + override fun onSwipeBackLayoutSlide(slideOffset: Float) {} + + /** + * 没达到滑动返回的阈值,取消滑动返回动作,回到默认状态 + */ + override fun onSwipeBackLayoutCancel() {} + + /** + * 滑动返回执行完毕,销毁当前 Activity + */ + override fun onSwipeBackLayoutExecuted() { + mSwipeBackHelper.swipeBackward() + } + + override fun onBackPressed() { + // 正在滑动返回的时候取消返回按钮事件 + if (mSwipeBackHelper.isSliding) { + return + } + mSwipeBackHelper.backward() + } + + protected open fun setStatusBar() { + + val isNightMode = SPUtils.getParam(this, "nightMode", false) as Boolean + if (isNightMode) { + StatusBarUtil.setColorForSwipeBack(this, resources.getColor(R.color.app_color_night), 0) + } else { + StatusBarUtil.setColorForSwipeBack(this, resources.getColor(R.color.app_color), 0) + } + } +} \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/activity/BaseMvpActivity.kt b/basemodule/src/main/java/com/android/base/activity/BaseMvpActivity.kt new file mode 100644 index 0000000..b76b93b --- /dev/null +++ b/basemodule/src/main/java/com/android/base/activity/BaseMvpActivity.kt @@ -0,0 +1,39 @@ +package com.android.base.activity + +import android.content.Context +import android.os.Bundle + +import com.android.base.mpresenter.BasePresenter +import com.android.base.mview.BaseView +import com.android.base.utils.LanguageUtil + + +abstract class BaseMvpActivity

, V : BaseView> : BaseActivity() { + + var mPresenter: P? = null + + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + mPresenter = initPresenter() + if (mPresenter != null) + mPresenter!!.attach(this as? V) + loadData() + } + + override fun onDestroy() { + if (mPresenter != null) + mPresenter!!.dettach() + super.onDestroy() + } + + override fun attachBaseContext(newBase: Context) { + //语言切换 + super.attachBaseContext(LanguageUtil.setLocal(newBase)) + } + + //实例presenter + abstract fun initPresenter(): P + + //加载数据 + protected abstract fun loadData() +} diff --git a/basemodule/src/main/java/com/android/base/activity/BasePermisssionActivity.kt b/basemodule/src/main/java/com/android/base/activity/BasePermisssionActivity.kt new file mode 100644 index 0000000..b801f97 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/activity/BasePermisssionActivity.kt @@ -0,0 +1,85 @@ +package com.android.base.activity + +import android.app.Activity +import android.content.Context +import android.content.pm.PackageManager +import androidx.core.app.ActivityCompat +import androidx.core.content.ContextCompat +import androidx.fragment.app.FragmentActivity + +import com.android.base.utils.PermissionUtil + +import com.android.base.utils.PermissionUtil.PERMISSION_CODE + + +/** + * Created by gaolei on 2018/4/26. + */ + +open class BasePermisssionActivity : FragmentActivity() { + private var mRequestPermissionCallBack: PermissionUtil.RequestPermissionCallBack? = null + + + /** + * 发起权限请求 + * + * @param context + * @param permissions + * @param callback + */ + + fun requestPermission(context: Context, + callback: PermissionUtil.RequestPermissionCallBack, permissions: Array) { + this.mRequestPermissionCallBack = callback + + //如果所有权限都已授权,则直接返回授权成功,只要有一项未授权,则发起权限请求 + var isAllGranted = true + for (permission in permissions) { + if (ContextCompat.checkSelfPermission(context, permission) == PackageManager.PERMISSION_DENIED) { + isAllGranted = false + ActivityCompat.requestPermissions(context as Activity, permissions, PERMISSION_CODE) + } + } + if (isAllGranted) { + mRequestPermissionCallBack!!.granted() + } + } + + /** + * 权限请求结果回调 + * + * @param requestCode + * @param permissions + * @param grantResults + */ + override fun onRequestPermissionsResult(requestCode: Int, permissions: Array, grantResults: IntArray) { + super.onRequestPermissionsResult(requestCode, permissions, grantResults) + var hasAllGranted = true + + when (requestCode) { + PERMISSION_CODE -> { + for (i in grantResults.indices) { + if (grantResults[i] == PackageManager.PERMISSION_DENIED) { + hasAllGranted = false + //在用户已经拒绝授权的情况下,如果shouldShowRequestPermissionRationale返回false则 + // 可以推断出用户选择了“不在提示”选项,在这种情况下需要引导用户至设置页手动授权 + if (!ActivityCompat.shouldShowRequestPermissionRationale(this, permissions[i])) { + PermissionUtil.requestForeverDenyDialog(this@BasePermisssionActivity, *permissions) + + } else { + PermissionUtil.requestDenyDialog(this@BasePermisssionActivity, *permissions) + + //用户拒绝权限请求,但未选中“不再提示”选项 + } + mRequestPermissionCallBack!!.denied() + } + } + if (grantResults.size > 0 && hasAllGranted) { + mRequestPermissionCallBack!!.granted() + } + } + } + } + + +} diff --git a/basemodule/src/main/java/com/android/base/application/CustomApplication.kt b/basemodule/src/main/java/com/android/base/application/CustomApplication.kt new file mode 100644 index 0000000..3266c9b --- /dev/null +++ b/basemodule/src/main/java/com/android/base/application/CustomApplication.kt @@ -0,0 +1,102 @@ +package com.android.base.application + +import android.app.Application +import android.content.Context +import android.net.ConnectivityManager +import android.view.LayoutInflater +import androidx.multidex.MultiDex + +import com.android.base.utils.SPUtils +import com.android.base.xskin.ExtraAttrRegister +import com.iflytek.cloud.SpeechUtility +import com.scwang.smartrefresh.layout.SmartRefreshLayout +import com.scwang.smartrefresh.layout.footer.ClassicsFooter +import com.scwang.smartrefresh.layout.header.ClassicsHeader +import com.umeng.commonsdk.UMConfigure +import com.wind.me.xskinloader.SkinInflaterFactory +import com.wind.me.xskinloader.SkinManager + +import cn.bingoogolapple.swipebacklayout.BGASwipeBackHelper + + +class CustomApplication : Application() { + + /** + * @return 获取字体缩放比例 + */ + val fontScale: Float + get() { + val currentIndex = SPUtils.getParam(this, "currentIndex", 1) as Int + return 1 + currentIndex * 0.1f + } + + override fun onCreate() { + super.onCreate() + connectivityManager = applicationContext + .getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager + context = this + instance = this + // LeakCanary.install(this); + // BlockCanary.install(this, new AppContext()).start(); + + //初始化友盟 + UMConfigure.init(this, UMConfigure.DEVICE_TYPE_PHONE, "") + //初始化换肤 + SkinInflaterFactory.setFactory(LayoutInflater.from(this)) // for skin change + SkinManager.get().init(this) + //扩展换肤属性和style中的换肤属性 + ExtraAttrRegister.init() + //初始化讯飞语言识别 + SpeechUtility.createUtility(this, "appid=" + "5c22ed2f") + /** + * 必须在 Application 的 onCreate 方法中执行 BGASwipeBackHelper.init 来初始化滑动返回 + * 第一个参数:应用程序上下文 + * 第二个参数:如果发现滑动返回后立即触摸界面时应用崩溃,请把该界面里比较特殊的 View 的 class 添加到该集合中,目前在库中已经添加了 WebView 和 SurfaceView + */ + // + BGASwipeBackHelper.init(this, null) + MultiDex.install(this) + +// CaocConfig.Builder.create() +// .backgroundMode(CaocConfig.BACKGROUND_MODE_SILENT) //default: CaocConfig.BACKGROUND_MODE_SHOW_CUSTOM +// .enabled(false) //default: true +// .showErrorDetails(true) //default: true +// .showRestartButton(true) //default: true +// .logErrorOnRestart(true) //default: true +// .trackActivities(true) //default: false +// .minTimeBetweenCrashesMs(2000) //default: 3000 +// .errorDrawable(R.drawable.customactivityoncrash_error_image) //default: bug image +// .restartActivity(YourCustomActivity.class) //default: null (your app's launch activity) +// .errorActivity(YourCustomErrorActivity.class) //default: null (default error activity) +// .eventListener(new YourCustomEventListener()) //default: null +// .apply() + + } + + + companion object { + lateinit var connectivityManager: ConnectivityManager + lateinit var context: Context + lateinit var instance: CustomApplication + + //static 代码段可以防止内存泄露 + init { + //设置全局的Header构建器 + SmartRefreshLayout.setDefaultRefreshHeaderCreator { context, layout -> + // layout.setPrimaryColorsId(R.color.colorPrimary, android.R.color.white);//全局设置主题颜色 + val header = ClassicsHeader(context)//指定为经典Header,默认是 贝塞尔雷达Header + header.setTextSizeTitle(14f)//设置标题文字大小(sp单位) + header//.setTimeFormat(new DynamicTimeFormat("更新于 %s")); + } + //设置全局的Footer构建器 + SmartRefreshLayout.setDefaultRefreshFooterCreator { context, layout -> + val footer = ClassicsFooter(context) //指定为经典Footer,默认是 BallPulseFooter + footer.setTextSizeTitle(14f)//设置标题文字大小(sp单位) + + footer + } + } + } + + +} diff --git a/basemodule/src/main/java/com/android/base/db/DBManager.kt b/basemodule/src/main/java/com/android/base/db/DBManager.kt new file mode 100644 index 0000000..cacc308 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/db/DBManager.kt @@ -0,0 +1,129 @@ +package com.android.base.db + +import android.database.sqlite.SQLiteDatabase +import com.android.base.application.CustomApplication.Companion.context +import com.android.base.greendao.gen.DaoMaster + +class DBManager private constructor(){ + private var openHelper: DaoMaster.DevOpenHelper? = null + /** + * 获取可写数据库 + */ + private val writableDatabase: SQLiteDatabase + get() { + if (openHelper == null) { + openHelper = DaoMaster.DevOpenHelper(context, dbName, null) + } + return openHelper!!.writableDatabase + } + /** + * 获取可读数据库 + */ + private val readableDatabase: SQLiteDatabase + get() { + if (openHelper == null) { + openHelper = DaoMaster.DevOpenHelper(context, dbName, null) + } + return openHelper!!.readableDatabase + } + + init { + openHelper = DaoMaster.DevOpenHelper(context, dbName, null) + } + + /** + * 插入一条记录 + * + * @param searchRecord + */ + fun insertUser(searchRecord: SearchRecord) { + val daoMaster = DaoMaster(writableDatabase) + val daoSession = daoMaster.newSession() + val userDao = daoSession.searchRecordDao + userDao.insert(searchRecord) + } + + /** + * 插入用户集合 + * + * @param users + */ + fun insertUserList(users: List?) { + if (users == null || users.isEmpty()) { + return + } + val daoMaster = DaoMaster(writableDatabase) + val daoSession = daoMaster.newSession() + val userDao = daoSession.searchRecordDao + userDao.insertInTx(users) + } + + /** + * 删除一条记录 + * + * @param searchRecord + */ + fun deleteUser(searchRecord: SearchRecord) { + val daoMaster = DaoMaster(writableDatabase) + val daoSession = daoMaster.newSession() + val userDao = daoSession.searchRecordDao + userDao.delete(searchRecord) + } + + fun deleteAll() { + val daoMaster = DaoMaster(writableDatabase) + val daoSession = daoMaster.newSession() + val userDao = daoSession.searchRecordDao + userDao.deleteAll() + } + + /** + * 更新一条记录 + * + * @param searchRecord + */ + fun updateUser(searchRecord: SearchRecord) { + val daoMaster = DaoMaster(writableDatabase) + val daoSession = daoMaster.newSession() + val userDao = daoSession.searchRecordDao + userDao.update(searchRecord) + } + + /** + * 查询用户列表 + */ + fun queryUserList(): List { + val daoMaster = DaoMaster(readableDatabase) + val daoSession = daoMaster.newSession() + val userDao = daoSession.searchRecordDao + val qb = userDao.queryBuilder() + return qb.list() + } + + companion object { + private val dbName = "search_record" + private var mInstance: DBManager? = null + fun getInstance() = Holder.INSTANCE + /** + * 获取单例引用 + * + * @param context + * @return + */ +// fun getInstance(context: Context): DBManager? { +// if (mInstance == null) { +// synchronized(DBManager::class.java) { +// if (mInstance == null) { +// mInstance = DBManager(context) +// } +// } +// } +// return mInstance +// } + } + + + private object Holder { + val INSTANCE = DBManager() + } +} \ No newline at end of file diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/db/SearchRecord.java b/basemodule/src/main/java/com/android/base/db/SearchRecord.java similarity index 95% rename from AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/db/SearchRecord.java rename to basemodule/src/main/java/com/android/base/db/SearchRecord.java index 3ef04b1..ce80061 100644 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/db/SearchRecord.java +++ b/basemodule/src/main/java/com/android/base/db/SearchRecord.java @@ -1,4 +1,4 @@ -package com.android.learn.base.db; +package com.android.base.db; import org.greenrobot.greendao.annotation.Entity; import org.greenrobot.greendao.annotation.Id; diff --git a/basemodule/src/main/java/com/android/base/email/JSSEProvider.kt b/basemodule/src/main/java/com/android/base/email/JSSEProvider.kt new file mode 100644 index 0000000..04336f3 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/email/JSSEProvider.kt @@ -0,0 +1,20 @@ +package com.android.base.email + +import java.security.AccessController +import java.security.Provider + +class JSSEProvider : Provider("HarmonyJSSE", 1.0, "Harmony JSSE Provider") { + init { + AccessController.doPrivileged(java.security.PrivilegedAction { + put("SSLContext.TLS", + "org.apache.harmony.xnet.provider.jsse.SSLContextImpl") + put("Alg.Alias.SSLContext.TLSv1", "TLS") + put("KeyManagerFactory.X509", + "org.apache.harmony.xnet.provider.jsse.KeyManagerFactoryImpl") + put("TrustManagerFactory.X509", + "org.apache.harmony.xnet.provider.jsse.TrustManagerFactoryImpl") + null + }) + } + +} diff --git a/basemodule/src/main/java/com/android/base/email/MailSender.kt b/basemodule/src/main/java/com/android/base/email/MailSender.kt new file mode 100644 index 0000000..98d42a2 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/email/MailSender.kt @@ -0,0 +1,175 @@ +package com.android.base.email + +import java.io.ByteArrayInputStream +import java.io.IOException +import java.io.InputStream +import java.io.OutputStream +import java.io.PrintWriter +import java.security.Security +import java.sql.Connection +import java.sql.SQLException +import java.util.Properties + +import javax.activation.DataHandler +import javax.activation.DataSource +import javax.activation.FileDataSource +import javax.mail.Authenticator +import javax.mail.Message +import javax.mail.Multipart +import javax.mail.PasswordAuthentication +import javax.mail.Session +import javax.mail.Transport +import javax.mail.internet.InternetAddress +import javax.mail.internet.MimeBodyPart +import javax.mail.internet.MimeMessage +import javax.mail.internet.MimeMultipart + +class MailSender(private val user: String, private val password: String) : Authenticator() { + private val session: Session + var mailhost = "smtp.qq.com" + set(mailhost) { + field = mailhost + properties.setProperty("mail.host", this.mailhost) + }//在这里配置你送邮件的主机地址,如qq邮箱、163邮箱等是不一样的 + private val port = "465"//在这里配置你送邮件的主机端口,如qq邮箱、163邮箱等是不一样的 + private val messageMultipart: Multipart + private val properties: Properties + + init { + + properties = Properties() + properties.setProperty("mail.transport.protocol", "smtp") + properties.setProperty("mail.host", this.mailhost) + properties["mail.smtp.auth"] = "true" + properties["mail.smtp.port"] = port + properties["mail.smtp.socketFactory.port"] = port + properties["mail.smtp.socketFactory.class"] = "javax.net.ssl.SSLSocketFactory" + properties["mail.smtp.socketFactory.fallback"] = "false" + properties.setProperty("mail.smtp.quitwait", "false") + + session = Session.getDefaultInstance(properties, this) + messageMultipart = MimeMultipart() + } + + override fun getPasswordAuthentication(): PasswordAuthentication { + return PasswordAuthentication(user, password) + } + + @Synchronized + @Throws(Exception::class) + fun sendMail(subject: String?, body: String?, + sender: String?, recipients: String, attachment: String?) { + val message = MimeMessage(session) + message.sender = InternetAddress(sender)//閭欢鍙戜欢浜� + message.subject = subject//閭欢涓婚 + //璁剧疆閭欢鍐呭 + val bodyPart = MimeBodyPart() + bodyPart.setText(body) + messageMultipart.addBodyPart(bodyPart) + // message.setDataHandler(handler); + + //璁剧疆閭欢闄勪欢 + if (attachment != null) { + val dataSource = FileDataSource(attachment) + val dataHandler = DataHandler(dataSource) + bodyPart.dataHandler = dataHandler + bodyPart.fileName = attachment.substring(attachment.lastIndexOf("/") + 1) + } + message.setContent(messageMultipart) + if (recipients.indexOf(',') > 0) + //澶氫釜鑱旂郴浜� + message.setRecipients(Message.RecipientType.TO, + InternetAddress.parse(recipients)) + else + //鍗曚釜鑱旂郴浜� + message.setRecipient(Message.RecipientType.TO, InternetAddress( + recipients)) + Transport.send(message) + } + + //缁ф壙DataSource璁剧疆瀛楃缂栫爜 + inner class ByteArrayDataSource : DataSource { + private var data: ByteArray? = null + private var type: String? = null + + // TODO Auto-generated method stub + // TODO Auto-generated method stub + var logWriter: PrintWriter? + @Throws(SQLException::class) + get() = null + @Throws(SQLException::class) + set(out) { + + } + + // TODO Auto-generated method stub + // TODO Auto-generated method stub + var loginTimeout: Int + @Throws(SQLException::class) + get() = 0 + @Throws(SQLException::class) + set(seconds) { + + } + + // TODO Auto-generated method stub + val connection: Connection? + @Throws(SQLException::class) + get() = null + + constructor(data: ByteArray, type: String) : super() { + this.data = data + this.type = type + } + + constructor(data: ByteArray) : super() { + this.data = data + } + + fun setType(type: String) { + this.type = type + } + + override fun getContentType(): String { + return "application/octet-stream" + } + + @Throws(IOException::class) + override fun getInputStream(): InputStream { + return ByteArrayInputStream(data) + } + + override fun getName(): String { + return "ByteArrayDataSource" + } + + @Throws(IOException::class) + override fun getOutputStream(): OutputStream { + throw IOException("Not Supported") + } + + @Throws(SQLException::class) + fun isWrapperFor(arg0: Class<*>): Boolean { + // TODO Auto-generated method stub + return false + } + + @Throws(SQLException::class) + fun unwrap(arg0: Class): T? { + // TODO Auto-generated method stub + return null + } + + @Throws(SQLException::class) + fun getConnection(theUsername: String, thePassword: String): Connection? { + // TODO Auto-generated method stub + return null + } + } + + companion object { + init { + Security.addProvider(JSSEProvider()) + } + } +} diff --git a/basemodule/src/main/java/com/android/base/email/ToastUtils.kt b/basemodule/src/main/java/com/android/base/email/ToastUtils.kt new file mode 100644 index 0000000..eaff86f --- /dev/null +++ b/basemodule/src/main/java/com/android/base/email/ToastUtils.kt @@ -0,0 +1,25 @@ +package com.android.base.email + +import android.content.Context +import android.os.Looper +import android.widget.Toast + +object ToastUtils { + internal var toast: Toast? = null + fun show(context: Context, text: String) { + try { + if (toast != null) { + toast!!.setText(text) + } else { + toast = Toast.makeText(context, text, Toast.LENGTH_SHORT) + } + toast!!.show() + } catch (e: Exception) { + //解决在子线程中调用Toast的异常情况处理 + Looper.prepare() + Toast.makeText(context, text, Toast.LENGTH_SHORT).show() + Looper.loop() + } + + } +} diff --git a/basemodule/src/main/java/com/android/base/event/CancelCollectEvent.kt b/basemodule/src/main/java/com/android/base/event/CancelCollectEvent.kt new file mode 100644 index 0000000..bd3dc33 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/event/CancelCollectEvent.kt @@ -0,0 +1,3 @@ +package com.android.base.event + +class CancelCollectEvent(var id: Int) \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/event/ChangeNightEvent.kt b/basemodule/src/main/java/com/android/base/event/ChangeNightEvent.kt new file mode 100644 index 0000000..77d30ec --- /dev/null +++ b/basemodule/src/main/java/com/android/base/event/ChangeNightEvent.kt @@ -0,0 +1,3 @@ +package com.android.base.event + +class ChangeNightEvent \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/event/LoginEvent.kt b/basemodule/src/main/java/com/android/base/event/LoginEvent.kt new file mode 100644 index 0000000..072b3dd --- /dev/null +++ b/basemodule/src/main/java/com/android/base/event/LoginEvent.kt @@ -0,0 +1,3 @@ +package com.android.base.event + +class LoginEvent \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/event/LogoutEvent.kt b/basemodule/src/main/java/com/android/base/event/LogoutEvent.kt new file mode 100644 index 0000000..be8d829 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/event/LogoutEvent.kt @@ -0,0 +1,3 @@ +package com.android.base.event + +class LogoutEvent \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/event/RestartMainEvent.kt b/basemodule/src/main/java/com/android/base/event/RestartMainEvent.kt new file mode 100644 index 0000000..234c12d --- /dev/null +++ b/basemodule/src/main/java/com/android/base/event/RestartMainEvent.kt @@ -0,0 +1,5 @@ +package com.android.base.event + +import android.app.Activity + +class RestartMainEvent(var activity: Activity) \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/event/UpdateDoneEvent.kt b/basemodule/src/main/java/com/android/base/event/UpdateDoneEvent.kt new file mode 100644 index 0000000..5a7ea5e --- /dev/null +++ b/basemodule/src/main/java/com/android/base/event/UpdateDoneEvent.kt @@ -0,0 +1,3 @@ +package com.android.base.event + +class UpdateDoneEvent \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/event/UpdateTodoEvent.kt b/basemodule/src/main/java/com/android/base/event/UpdateTodoEvent.kt new file mode 100644 index 0000000..d5561d8 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/event/UpdateTodoEvent.kt @@ -0,0 +1,3 @@ +package com.android.base.event + +class UpdateTodoEvent \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/fragment/BaseFragment.kt b/basemodule/src/main/java/com/android/base/fragment/BaseFragment.kt new file mode 100644 index 0000000..6875451 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/fragment/BaseFragment.kt @@ -0,0 +1,99 @@ +package com.android.base.fragment + +import android.os.Bundle +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import android.widget.Button +import android.widget.FrameLayout +import android.widget.LinearLayout +import androidx.fragment.app.Fragment + +import com.android.base.utils.NetUtils + +import butterknife.ButterKnife +import butterknife.Unbinder +import com.android.base.R + + +abstract class BaseFragment : Fragment(), View.OnClickListener { + private var mLlContent: FrameLayout? = null + lateinit var subFragmentView: View + private var bt_error_refresh: Button? = null + lateinit var mErrorPageView: LinearLayout + private var mBinder: Unbinder? = null + + override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? { + val mParentView = inflater.inflate(R.layout.fragment_base, container, false) + initBaseView(mParentView) + addContentView(inflater) + var bundle = arguments + if (bundle == null) { + bundle = savedInstanceState + } + initData(bundle) + initView(mParentView) + return mParentView + } + + /** + * 用于布局加载完毕,子Fragment可以开始初始化数据 + * + * @param bundle + */ + abstract fun initData(bundle: Bundle?) + + abstract fun initView(view: View) + + private fun initBaseView(view: View) { + mLlContent = view.findViewById(R.id.base_fragment_content) + mErrorPageView = view.findViewById(R.id.ll_base_error_content) + bt_error_refresh = view.findViewById(R.id.bt_error_refresh) + // if (!NetworkUtil.isNetworkAvailable(getActivity())) + // showErrorPage(true); + bt_error_refresh!!.setOnClickListener(this) + } + + /** + * 设置子布局layout + */ + abstract fun setContentLayout(): Int + + abstract fun reload() + + /** + * 设置内容 + */ + fun addContentView(inflater: LayoutInflater) { + subFragmentView = inflater.inflate(setContentLayout(), null) + mLlContent!!.addView(subFragmentView) + mBinder = ButterKnife.bind(this, subFragmentView) + + } + + + /** + * 显示/隐藏 错误页面 + * + * @param isShow + */ + fun showErrorPage(isShow: Boolean) { + mErrorPageView.visibility = if (isShow) View.VISIBLE else View.GONE + } + + override fun onClick(v: View) { + if (v.id == R.id.bt_error_refresh) { + if (NetUtils.isConnected) + mErrorPageView.visibility = View.GONE + reload() + } + } + + + override fun onDestroyView() { + super.onDestroyView() + if (mBinder != null) { + mBinder!!.unbind() + } + } +} diff --git a/basemodule/src/main/java/com/android/base/fragment/BaseLazyFragment.kt b/basemodule/src/main/java/com/android/base/fragment/BaseLazyFragment.kt new file mode 100644 index 0000000..54dcf7d --- /dev/null +++ b/basemodule/src/main/java/com/android/base/fragment/BaseLazyFragment.kt @@ -0,0 +1,61 @@ +package com.android.base.fragment + +import android.os.Bundle +import android.view.View + + +abstract class BaseLazyFragment : BaseFragment() { + + //Fragment的View加载完毕的标记 + private var isViewCreated: Boolean = false + //Fragment对用户可见的标记 + private var isUIVisible: Boolean = false + + + override fun onViewCreated(view: View, savedInstanceState: Bundle?) { + super.onViewCreated(view, savedInstanceState) + isViewCreated = true + lazyLoad() + } + + override fun setUserVisibleHint(isVisibleToUser: Boolean) { + + super.setUserVisibleHint(isVisibleToUser) + //isVisibleToUser这个boolean值表示:该Fragment的UI 用户是否可见 + if (isVisibleToUser) { + isUIVisible = true + lazyLoad() + } else { + isUIVisible = false + } + } + + private fun lazyLoad() { + + //这里进行双重标记判断,是因为setUserVisibleHint会多次回调,并且会在onCreateView执行前回调,必须确保onCreateView加载完毕且页面可见,才加载数据 + if (isViewCreated && isUIVisible) { + + loadData() + //数据加载完毕,恢复标记,防止重复加载 + isViewCreated = false + isUIVisible = false + + } + } + + + protected abstract fun loadData() + + + override fun onDestroyView() { + super.onDestroyView() + //页面销毁,恢复标记 + isViewCreated = false + isUIVisible = false + + } + + + /**Fragment中TextView显示的内容 */ + // protected abstract String getFragmentTextviewContent(); +} diff --git a/basemodule/src/main/java/com/android/base/fragment/BaseMvpFragment.kt b/basemodule/src/main/java/com/android/base/fragment/BaseMvpFragment.kt new file mode 100644 index 0000000..b2d82fa --- /dev/null +++ b/basemodule/src/main/java/com/android/base/fragment/BaseMvpFragment.kt @@ -0,0 +1,78 @@ +package com.android.base.fragment + +import android.os.Bundle + +import com.android.base.mpresenter.BasePresenter +import com.android.base.mview.BaseView + + +/** + * Created by gaolei on 2018/4/26. + */ + + +abstract class BaseMvpFragment

,V: BaseView> : BaseFragment() { + + var mPresenter: P? = null + //Fragment的View加载完毕的标记 + private var isViewCreated: Boolean = false + //Fragment对用户可见的标记 + private var isUIVisible: Boolean = false + + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + isViewCreated = true + + mPresenter = initPresenter() + if (mPresenter != null) + mPresenter!!.attach(this as? V) + lazyLoad() + } + + override fun onDestroy() { + if (mPresenter != null) + mPresenter!!.dettach() + super.onDestroy() + } + + //实例presenter + abstract fun initPresenter(): P + + + override fun setUserVisibleHint(isVisibleToUser: Boolean) { + + super.setUserVisibleHint(isVisibleToUser) + //isVisibleToUser这个boolean值表示:该Fragment的UI 用户是否可见 + if (isVisibleToUser) { + isUIVisible = true + lazyLoad() + } else { + isUIVisible = false + } + } + + private fun lazyLoad() { + + //这里进行双重标记判断,是因为setUserVisibleHint会多次回调,并且会在onCreateView执行前回调,必须确保onCreateView加载完毕且页面可见,才加载数据 + if (isViewCreated && isUIVisible) { + + loadData() + //数据加载完毕,恢复标记,防止重复加载 + isViewCreated = false + isUIVisible = false + + } + } + + + protected abstract fun loadData() + + + override fun onDestroyView() { + super.onDestroyView() + //页面销毁,恢复标记 + isViewCreated = false + isUIVisible = false + + } +} diff --git a/basemodule/src/main/java/com/android/base/mmodel/BannerListData.kt b/basemodule/src/main/java/com/android/base/mmodel/BannerListData.kt new file mode 100644 index 0000000..9fbd57e --- /dev/null +++ b/basemodule/src/main/java/com/android/base/mmodel/BannerListData.kt @@ -0,0 +1,29 @@ +package com.android.base.mmodel + + +class BannerListData : BaseData() { + + // { + // "desc":"最新项目上线啦~", "id":13, "imagePath": + // "http://www.wanandroid.com/blogimgs/5ae04af4-72b9-4696-81cb-1644cdcd2d29.jpg", "isVisible": + // 1, "order":0, "title":"最新项目上线啦~", "type":0, "url":"http://www.wanandroid.com/pindex" + // } + + + lateinit var data: List + + inner class BannerData { + + var id: Int = 0 + lateinit var url: String + lateinit var imagePath: String + lateinit var title: String + lateinit var desc: String + var isVisible: Int = 0 + var order: Int = 0 + var type: Int = 0 + + } + + +} \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/mmodel/BaseData.kt b/basemodule/src/main/java/com/android/base/mmodel/BaseData.kt new file mode 100644 index 0000000..245ac9f --- /dev/null +++ b/basemodule/src/main/java/com/android/base/mmodel/BaseData.kt @@ -0,0 +1,21 @@ +package com.android.base.mmodel + +/** + * @author quchao + * @date 2018/2/12 + */ + +open class BaseData { + + var errorCode: Int = 0 + + lateinit var errorMsg: String + + companion object { + + val SUCCESS = 0 + val FAIL = -1 + } + + +} diff --git a/basemodule/src/main/java/com/android/base/mmodel/BaseListResponse.kt b/basemodule/src/main/java/com/android/base/mmodel/BaseListResponse.kt new file mode 100644 index 0000000..9bae739 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/mmodel/BaseListResponse.kt @@ -0,0 +1,20 @@ +package com.android.base.mmodel + +class BaseListResponse> { + + /** + * 0:成功,1:失败 + */ + var errorCode: Int = 0 + + lateinit var errorMsg: String + + lateinit var data: T + + companion object { + + val SUCCESS = 0 + val FAIL = 1 + } + +} \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/mmodel/BaseResponse.kt b/basemodule/src/main/java/com/android/base/mmodel/BaseResponse.kt new file mode 100644 index 0000000..2a28f90 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/mmodel/BaseResponse.kt @@ -0,0 +1,20 @@ +package com.android.base.mmodel + +class BaseResponse { + + /** + * 0:成功,1:失败 + */ + var errorCode: Int = 0 + + lateinit var errorMsg: String + + lateinit var data: T + + companion object { + + val SUCCESS = 0 + val FAIL = 1 + } + +} \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/mmodel/FeedArticleListData.kt b/basemodule/src/main/java/com/android/base/mmodel/FeedArticleListData.kt new file mode 100644 index 0000000..405abc8 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/mmodel/FeedArticleListData.kt @@ -0,0 +1,39 @@ +package com.android.base.mmodel + +import java.io.Serializable + +class FeedArticleListData: BaseData() { + + var curPage: Int = 0 + lateinit var datas: List + var offset: Int = 0 + var isOver: Boolean = false + var pageCount: Int = 0 + var size: Int = 0 + var total: Int = 0 + + inner class FeedArticleData : Serializable { + + lateinit var apkLink: String + lateinit var author: String + var chapterId: Int = 0 + lateinit var chapterName: String + var isCollect = true + var courseId: Int = 0 + lateinit var desc: String + lateinit var envelopePic: String + var id: Int = 0 + lateinit var link: String + lateinit var niceDate: String + lateinit var origin: String + lateinit var projectLink: String + var superChapterId: Int = 0 + lateinit var superChapterName: String + var publishTime: Long = 0 + lateinit var title: String + var visible: Int = 0 + var zan: Int = 0 + var originId: Int = 0 + } + +} \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/mmodel/HotKeyData.kt b/basemodule/src/main/java/com/android/base/mmodel/HotKeyData.kt new file mode 100644 index 0000000..e4d9b11 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/mmodel/HotKeyData.kt @@ -0,0 +1,19 @@ +package com.android.base.mmodel + +class HotKeyData: BaseData() { + + + /** + * id : 6 + * link : + * name : 面试 + * order : 1 + * visible : 1 + */ + + var id: Int = 0 + lateinit var link: String + lateinit var name: String + var order: Int = 0 + var visible: Int = 0 +} diff --git a/basemodule/src/main/java/com/android/base/mmodel/ProjectListData.kt b/basemodule/src/main/java/com/android/base/mmodel/ProjectListData.kt new file mode 100644 index 0000000..2a973f1 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/mmodel/ProjectListData.kt @@ -0,0 +1,231 @@ +package com.android.base.mmodel + +import java.io.Serializable + + +/** + * @author quchao + * @date 2018/2/24 + */ + +class ProjectListData : BaseData() { + + /** + * "curPage": 1, + * "datas": [], + * "offset": 0, + * "over": true, + * "pageCount": 1, + * "size": 15, + * "total": 8 + */ + lateinit var data: ListData + + inner class ListData { + var curPage: Int = 0 + lateinit var datas: List + var offset: Int = 0 + var over: Boolean = false + var pageCount: Int = 0 + var size: Int = 0 + var total: Int = 0 + // public int getCurPage() { + // return curPage; + // } + // + // public void setCurPage(int curPage) { + // this.curPage = curPage; + // } + // + // public int getOffset() { + // return offset; + // } + // + // public void setOffset(int offset) { + // this.offset = offset; + // } + // + // public boolean isOver() { + // return over; + // } + // + // public void setOver(boolean over) { + // this.over = over; + // } + // + // public int getPageCount() { + // return pageCount; + // } + // + // public void setPageCount(int pageCount) { + // this.pageCount = pageCount; + // } + // + // public int getSize() { + // return size; + // } + // + // public void setSize(int size) { + // this.size = size; + // } + // + // public int getTotal() { + // return total; + // } + // + // public void setTotal(int total) { + // this.total = total; + // } + } + + inner class ProjectData : Serializable { + + // { + // "apkLink": "", + // "author": "LiangLuDev", + // "chapterId": 294, + // "chapterName": "完整项目", + // "collect": false, + // "courseId": 13, + // "desc": "注册登录、用户信息、用户密码、用户图像修改、书籍分类、本地书籍扫描、书架、书籍搜索(作者名或书籍名)、书籍阅读(仅txt格式,暂不支持PDF等其他格式)、阅读字体、背景颜色、翻页效果等设置、意见反馈(反馈信息发送到我的邮箱)、应用版本更新", + // "envelopePic": "http://www.wanandroid.com/blogimgs/fab6fb8b-c3aa-495f-b6a9-c007d78751c0.gif", + // "fresh": false, + // "id": 2836, + // "link": "http://www.wanandroid.com/blog/show/2116", + // "niceDate": "2018-04-22", + // "origin": "", + // "projectLink": "https://github.com/LiangLuDev/WeYueReader", + // "publishTime": 1524376619000, + // "superChapterId": 0, + // "superChapterName": "", + // "tags": [ ], + // "title": "微Yue电子书阅读 WeYueReader", + // "type": 0, + // "visible": 1, + // "zan": 0 + //} + lateinit var apkLink: String + // public String getApkLink() { + // return apkLink; + // } + // + // public void setApkLink(String apkLink) { + // this.apkLink = apkLink; + // } + // + lateinit var author: String + var chapterId: Int = 0 + lateinit var chapterName: String + var collect: Boolean = false + var courseId: Int = 0 + // + // public void setChapterId(int chapterId) { + // this.chapterId = chapterId; + // } + // + // public String getChapterName() { + // return chapterName; + // } + // + // public void setChapterName(String chapterName) { + // this.chapterName = chapterName; + // } + // + // public boolean isCollect() { + // return collect; + // } + // + // public void setCollect(boolean collect) { + // this.collect = collect; + // } + // + // public int getCourseId() { + // return courseId; + // } + // + // public void setCourseId(int courseId) { + // this.courseId = courseId; + // } + // + lateinit var desc: String + lateinit var envelopePic: String + var id: Int = 0 + // + // public int getId() { + // return id; + // } + // + // public void setId(int id) { + // this.id = id; + // } + + lateinit var link: String + lateinit var niceDate: String + lateinit var origin: String + lateinit var projectLink: String + var superChapterId: Int = 0 + lateinit var superChapterName: String + var publishTime: Long = 0 + // + // public String getOrigin() { + // return origin; + // } + // + // public void setOrigin(String origin) { + // this.origin = origin; + // } + // + // public String getProjectLink() { + // return projectLink; + // } + // + // public void setProjectLink(String projectLink) { + // this.projectLink = projectLink; + // } + // + // public int getSuperChapterId() { + // return superChapterId; + // } + // + // public void setSuperChapterId(int superChapterId) { + // this.superChapterId = superChapterId; + // } + // + // public String getSuperChapterName() { + // return superChapterName; + // } + // + // public void setSuperChapterName(String superChapterName) { + // this.superChapterName = superChapterName; + // } + // + // public long getPublishTime() { + // return publishTime; + // } + // + // public void setPublishTime(long publishTime) { + // this.publishTime = publishTime; + // } + // + lateinit var title: String + var visible: Int = 0 + var zan: Int = 0 + // + // public int getVisible() { + // return visible; + // } + // + // public void setVisible(int visible) { + // this.visible = visible; + // } + // + // public int getZan() { + // return zan; + // } + // + // public void setZan(int zan) { + // this.zan = zan; + // } + + } +} \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/mmodel/RegisterLoginData.kt b/basemodule/src/main/java/com/android/base/mmodel/RegisterLoginData.kt new file mode 100644 index 0000000..0d378e1 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/mmodel/RegisterLoginData.kt @@ -0,0 +1,36 @@ +package com.android.base.mmodel + +/** + * @author quchao + * @date 2018/2/26 + */ + +class RegisterLoginData : BaseData() { + + var data: Data? = null + + inner class Data { + lateinit var username: String + lateinit var password: String + lateinit var email: String + lateinit var icon: String + lateinit var token: String + var id: Int = 0 + var type: Int = 0 + // private List chapterTops; + lateinit var collectIds: List + + override fun toString(): String { + return "RegisterLoginData{" + + "username='" + username + '\''.toString() + + ", password='" + password + '\''.toString() + + ", email='" + email + '\''.toString() + + ", icon='" + icon + '\''.toString() + + ", token='" + token + '\''.toString() + + ", id=" + id + + ", type=" + type + + ", collectIds=" + collectIds + + '}'.toString() + } + } +} diff --git a/basemodule/src/main/java/com/android/base/mmodel/TodoData.kt b/basemodule/src/main/java/com/android/base/mmodel/TodoData.kt new file mode 100644 index 0000000..6988b40 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/mmodel/TodoData.kt @@ -0,0 +1,53 @@ +package com.android.base.mmodel + +import java.io.Serializable + +class TodoData: BaseData() { + + + /** + * curPage : 1 + * datas : [{"completeDate":null,"completeDateStr":"","content":"圣诞节快乐","date":1545667200000,"dateStr":"2018-12-25","id":5566,"priority":0,"status":0,"title":"圣诞节","type":0,"userId":13479},{"completeDate":null,"completeDateStr":"","content":"圣诞夜快乐","date":1545580800000,"dateStr":"2018-12-24","id":5564,"priority":0,"status":0,"title":"圣诞夜","type":0,"userId":13479}] + * offset : 0 + * over : true + * pageCount : 1 + * size : 20 + * total : 2 + */ + + var curPage: Int = 0 + var offset: Int = 0 + var isOver: Boolean = false + var pageCount: Int = 0 + var size: Int = 0 + var total: Int = 0 + lateinit var datas: List + + class DatasBean : Serializable { + /** + * completeDate : null + * completeDateStr : + * content : 圣诞节快乐 + * date : 1545667200000 + * dateStr : 2018-12-25 + * id : 5566 + * priority : 0 + * status : 0 + * title : 圣诞节 + * type : 0 + * userId : 13479 + */ + + lateinit var completeDate: Any + lateinit var completeDateStr: String + lateinit var content: String + var date: Long = 0 + lateinit var dateStr: String + var id: Int = 0 + var priority: Int = 0 + var status: Int = 0 + lateinit var title: String + var type: Int = 0 + var userId: Int = 0 + } +} diff --git a/basemodule/src/main/java/com/android/base/mmodel/TreeBean.kt b/basemodule/src/main/java/com/android/base/mmodel/TreeBean.kt new file mode 100644 index 0000000..5c7e7e9 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/mmodel/TreeBean.kt @@ -0,0 +1,45 @@ +package com.android.base.mmodel + +import java.io.Serializable + + +class TreeBean : BaseData(), Serializable { + + /** + * children : [{"children":[],"courseId":13,"id":60,"name":"Android Studio相关","order":1000,"parentChapterId":150,"visible":1},"..."] + * courseId : 13 + * id : 150 + * name : 开发环境 + * order : 1 + * parentChapterId : 0 + * visible : 1 + */ + + var courseId: Int = 0 + var id: Int = 0 + lateinit var name: String + var order: Int = 0 + var parentChapterId: Int = 0 + var visible: Int = 0 + lateinit var children: List + + class ChildrenBean { + /** + * children : [] + * courseId : 13 + * id : 60 + * name : Android Studio相关 + * order : 1000 + * parentChapterId : 150 + * visible : 1 + */ + + var courseId: Int = 0 + var id: Int = 0 + lateinit var name: String + var order: Int = 0 + var parentChapterId: Int = 0 + var visible: Int = 0 + lateinit var children: List<*> + } +} diff --git a/basemodule/src/main/java/com/android/base/mmodel/WxArticle.kt b/basemodule/src/main/java/com/android/base/mmodel/WxArticle.kt new file mode 100644 index 0000000..8d3099e --- /dev/null +++ b/basemodule/src/main/java/com/android/base/mmodel/WxArticle.kt @@ -0,0 +1,35 @@ +package com.android.base.mmodel + +import com.google.gson.Gson + +class WxArticle: BaseData() { + + + /** + * children : [] + * courseId : 13 + * id : 408 + * name : 鸿洋 + * order : 190000 + * parentChapterId : 407 + * userControlSetTop : false + * visible : 1 + */ + + var courseId: Int = 0 + var id: Int = 0 + lateinit var name: String + var order: Int = 0 + var parentChapterId: Int = 0 + var isUserControlSetTop: Boolean = false + var visible: Int = 0 + lateinit var children: List<*> + + companion object { + + fun objectFromData(str: String): WxArticle { + + return Gson().fromJson(str, WxArticle::class.java) + } + } +} diff --git a/basemodule/src/main/java/com/android/base/mpresenter/BasePresenter.kt b/basemodule/src/main/java/com/android/base/mpresenter/BasePresenter.kt new file mode 100644 index 0000000..cabc7e7 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/mpresenter/BasePresenter.kt @@ -0,0 +1,47 @@ +package com.android.base.mpresenter + +import com.android.base.mview.BaseView +import com.android.base.thirdframe.retrofit.RetrofitProvider +import com.android.base.thirdframe.rxjava.BaseObserver +import io.reactivex.Observable +import io.reactivex.android.schedulers.AndroidSchedulers +import io.reactivex.disposables.CompositeDisposable +import io.reactivex.schedulers.Schedulers + +abstract class BasePresenter { + + var mView: V? = null + // public Observable observable; + var mRestService = RetrofitProvider.instance.builder()!!.apiService!! + internal var mCompositeDisposable: CompositeDisposable? = null + + /** + * 绑定View + * + * @param view + */ + fun attach(view: V?) { + this.mView = view + if (mCompositeDisposable == null) { + mCompositeDisposable = CompositeDisposable() + } + } + + /** + * 释放View + */ + fun dettach() { + this.mView = null + if (mCompositeDisposable != null) { + mCompositeDisposable!!.clear() + } + } + + fun addSubscribe(observable: Observable, observer: BaseObserver) { + mCompositeDisposable!!.add(observer) + observable.subscribeOn(Schedulers.io()) + .unsubscribeOn(Schedulers.io()) + .observeOn(AndroidSchedulers.mainThread()) + .subscribe(observer) + } +} \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/mview/BaseView.kt b/basemodule/src/main/java/com/android/base/mview/BaseView.kt new file mode 100644 index 0000000..a270d90 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/mview/BaseView.kt @@ -0,0 +1,5 @@ +package com.android.base.mview + +interface BaseView// void showLoading(); +// void hideLoading(); +// void showErrorMsg(String errorMsg); \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/thirdframe/glide/ImageLoader.kt b/basemodule/src/main/java/com/android/base/thirdframe/glide/ImageLoader.kt new file mode 100644 index 0000000..dd94570 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/thirdframe/glide/ImageLoader.kt @@ -0,0 +1,51 @@ +package com.android.base.thirdframe.glide + +import android.content.Context +import android.widget.ImageView + +import com.bumptech.glide.Glide +import com.bumptech.glide.load.engine.DiskCacheStrategy +import com.bumptech.glide.load.resource.drawable.DrawableTransitionOptions +import com.bumptech.glide.request.RequestOptions + + +class ImageLoader private constructor() { + + /** + * 使用Glide加载圆形ImageView(如头像)时,不要使用占位图 + * + * @param context context + * @param url image url + * @param iv imageView + */ + fun load(context: Context, url: String, iv: ImageView) { + + Glide.with(context).load(url).apply(options).transition(DrawableTransitionOptions().crossFade(500)) + .into(iv) + } + + companion object { + /*单例*/ + @Volatile + private + var INSTANCE: ImageLoader? = null + lateinit var options: RequestOptions + /*获取单例*/ + val instance: ImageLoader + get() { + if (INSTANCE == null) { + synchronized(ImageLoader::class.java) { + if (INSTANCE == null) { + INSTANCE = ImageLoader() + options = RequestOptions() + // .placeholder(R.drawable.ic_launcher)// 正在加载中的图片 + // .error(R.drawable.video_error) // 加载失败的图片 + .diskCacheStrategy(DiskCacheStrategy.ALL) // 磁盘缓存策略 + } + } + } + return INSTANCE!! + } + + } +} \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/thirdframe/glide/MyAppGlideModule.kt b/basemodule/src/main/java/com/android/base/thirdframe/glide/MyAppGlideModule.kt new file mode 100644 index 0000000..cf6c764 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/thirdframe/glide/MyAppGlideModule.kt @@ -0,0 +1,51 @@ +package com.android.base.thirdframe.glide + +import android.content.Context +import android.os.Environment + +import com.bumptech.glide.Glide +import com.bumptech.glide.GlideBuilder +import com.bumptech.glide.Registry +import com.bumptech.glide.annotation.GlideModule +import com.bumptech.glide.load.engine.bitmap_recycle.LruBitmapPool +import com.bumptech.glide.load.engine.cache.DiskLruCacheFactory +import com.bumptech.glide.load.engine.cache.LruResourceCache +import com.bumptech.glide.module.AppGlideModule +import com.android.base.application.CustomApplication + +@GlideModule +class MyAppGlideModule : AppGlideModule() { + override fun isManifestParsingEnabled(): Boolean { + // return super.isManifestParsingEnabled(); + return false + } + + override fun applyOptions(context: Context, builder: GlideBuilder) { + val diskCacheSizeBytes = 1024 * 1024 * 100 // 50 MB + glideCachePath = CustomApplication.context.getExternalFilesDir("glide_cache")!!.absolutePath + builder.setDiskCache( + DiskLruCacheFactory(glideCachePath, diskCacheSizeBytes.toLong()) + ) + val maxMemory = Runtime.getRuntime().maxMemory().toInt()//获取系统分配给应用的总内存大小 + val memoryCacheSize = maxMemory / 8//设置图片内存缓存占用八分之一 + //设置内存缓存大小 + builder.setMemoryCache(LruResourceCache(memoryCacheSize.toLong())) + //设置BitmapPool缓存内存大小 + builder.setBitmapPool(LruBitmapPool(memoryCacheSize.toLong())) + + } + + private fun getStorageDirectory(context: Context): String { + return Environment.getExternalStorageDirectory().path + "/" + context.packageName + } + + override fun registerComponents(context: Context, glide: Glide, registry: Registry) { + super.registerComponents(context, glide, registry) + } + + companion object { + + lateinit var glideCachePath: String + } +} + diff --git a/basemodule/src/main/java/com/android/base/thirdframe/retrofit/ApiService.kt b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/ApiService.kt new file mode 100644 index 0000000..cfea5e8 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/ApiService.kt @@ -0,0 +1,110 @@ +package com.android.base.thirdframe.retrofit + + +import com.android.base.mmodel.* +import io.reactivex.Observable +import retrofit2.http.* + + +interface ApiService { + + @get:GET("banner/json") + val bannerListData: Observable + + @get:GET("tree/json") + val knowledgeTree: Observable>> + + @get:GET("hotkey/json") + val hotKey: Observable>> + + @get:GET("wxarticle/chapters/json") + val wxArticle: Observable>> + + + @GET("project/list/{page}/json") + fun getProjectListData( + @Path("page") page: Int, + @Query("cid") cid: Int + ): Observable + + @GET("article/list/{num}/json") + fun getFeedArticleList(@Path("num") num: Int): Observable> + + @GET("article/list/{num}/json") + fun getKnowledgeArticleList( + @Path("num") num: Int, + @Query("cid") cid: Int + ): Observable> + + @POST("user/login") + @FormUrlEncoded + fun login( + @Field("username") username: String, + @Field("password") password: String + ): Observable + + @GET("user/logout/json") + fun logout(): Observable + + @POST("user/register") + @FormUrlEncoded + fun register( + @Field("username") username: String, + @Field("password") password: String, + @Field("repassword") repassword: String + ): Observable + + @POST("lg/collect/{id}/json") + fun addCollectArticle(@Path("id") id: Int): Observable + + @GET("lg/collect/list/{page}/json") + fun getCollectList(@Path("page") page: Int): Observable> + + @POST("lg/uncollect_originId/{id}/json") + @FormUrlEncoded + fun cancelCollectArticle( + @Path("id") id: Int, + @Field("originId") originId: Int + ): Observable + + @GET("wxarticle/list/{id}/{num}/json") + fun getWxArtileById( + @Path("id") id: Int, + @Path("num") num: Int + ): Observable> + + @POST("article/query/{num}/json") + @FormUrlEncoded + fun search( + @Path("num") num: Int, + @Field("k") key: String + ): Observable> + + @GET("lg/todo/list/{type}/json") + fun getTodoList(@Path("type") type: Int): Observable> + + @POST("lg/todo/listnotdo/{type}/json/{page}") + fun getListNotDone( + @Path("type") type: Int, + @Path("page") page: Int + ): Observable> + + @POST("lg/todo/listdone/{type}/json/{page}") + fun getListDone( + @Path("type") type: Int, + @Path("page") page: Int + ): Observable> + + @POST("lg/todo/add/json") + fun addTodo(@QueryMap map: Map): Observable + + @POST("lg/todo/update/{id}/json") + fun updateTodo(@Path("id") id: Int, @QueryMap map: Map): Observable + + @POST("lg/todo/delete/{id}/json") + fun deleteTodo(@Path("id") id: Int): Observable + + //status: 0或1,传1代表未完成到已完成,反之则反之。 + @POST("lg/todo/done/{id}/json") + fun updateTodoStatus(@Path("id") id: Int, @Query("status") status: Int): Observable +} diff --git a/basemodule/src/main/java/com/android/base/thirdframe/retrofit/CustomizeGsonConverterFactory.kt b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/CustomizeGsonConverterFactory.kt new file mode 100644 index 0000000..533e5d7 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/CustomizeGsonConverterFactory.kt @@ -0,0 +1,43 @@ +package com.android.base.thirdframe.retrofit + +import com.google.gson.Gson +import com.google.gson.reflect.TypeToken +import java.lang.reflect.Type + +import okhttp3.RequestBody +import okhttp3.ResponseBody +import retrofit2.Converter +import retrofit2.Retrofit + +/** + * @author lqx + * 自定义GsonConverterFactory + */ +class CustomizeGsonConverterFactory private constructor(private val gson: Gson?) : Converter.Factory() { + + init { + if (gson == null) { + throw NullPointerException("gson == null") + } + } + + override fun responseBodyConverter(type: Type?, annotations: Array?, + retrofit: Retrofit?): Converter? { + val adapter = gson!!.getAdapter(TypeToken.get(type!!)) + return CustomizeGsonResponseBodyConverter(gson, adapter) + } + + override fun requestBodyConverter(type: Type?, parameterAnnotations: Array?, methodAnnotations: Array?, retrofit: Retrofit?): Converter<*, RequestBody>? { + val adapter = gson!!.getAdapter(TypeToken.get(type!!)) + return CustomizeGsonRequestBodyConverter(gson, adapter) + } + + companion object { + + @JvmOverloads + fun create(gson: Gson = Gson()): CustomizeGsonConverterFactory { + return CustomizeGsonConverterFactory(gson) + } + } + +} diff --git a/basemodule/src/main/java/com/android/base/thirdframe/retrofit/CustomizeGsonRequestBodyConverter.kt b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/CustomizeGsonRequestBodyConverter.kt new file mode 100644 index 0000000..0d78265 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/CustomizeGsonRequestBodyConverter.kt @@ -0,0 +1,36 @@ +package com.android.base.thirdframe.retrofit + +import com.google.gson.Gson +import com.google.gson.TypeAdapter + +import java.io.IOException +import java.io.OutputStreamWriter +import java.nio.charset.Charset + +import okhttp3.MediaType +import okhttp3.RequestBody +import okio.Buffer +import retrofit2.Converter + +/** + * @param + * @author lqx + */ +class CustomizeGsonRequestBodyConverter internal constructor(private val gson: Gson, private val adapter: TypeAdapter) : Converter { + + @Throws(IOException::class) + override fun convert(value: T): RequestBody { + val buffer = Buffer() + val writer = OutputStreamWriter(buffer.outputStream(), UTF_8) + val jsonWriter = gson.newJsonWriter(writer) + adapter.write(jsonWriter, value) + jsonWriter.close() + return RequestBody.create(MEDIA_TYPE, buffer.readByteString()) + } + + companion object { + + private val MEDIA_TYPE = MediaType.parse("application/json; charset=UTF-8") + private val UTF_8 = Charset.forName("UTF-8") + } +} diff --git a/basemodule/src/main/java/com/android/base/thirdframe/retrofit/CustomizeGsonResponseBodyConverter.kt b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/CustomizeGsonResponseBodyConverter.kt new file mode 100644 index 0000000..547c8ed --- /dev/null +++ b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/CustomizeGsonResponseBodyConverter.kt @@ -0,0 +1,28 @@ +package com.android.base.thirdframe.retrofit + +import com.android.base.utils.LogUtil +import com.google.gson.Gson +import com.google.gson.TypeAdapter + +import java.io.IOException + +import okhttp3.ResponseBody +import retrofit2.Converter + +/** + * @param + * @author lqx + */ +class CustomizeGsonResponseBodyConverter internal constructor(private val gson: Gson, private val adapter: TypeAdapter) : Converter { + internal var TAG = "CustomizeGsonResponseBodyConverter" + + @Throws(IOException::class) + override fun convert(value: ResponseBody): T { + + val responseBodyStr = value.string() + LogUtil.d(TAG, "responseBodyStr---------------$responseBodyStr") + + + return adapter.fromJson(responseBodyStr) + } +} diff --git a/basemodule/src/main/java/com/android/base/thirdframe/retrofit/RetrofitDynamicProvider.kt b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/RetrofitDynamicProvider.kt new file mode 100644 index 0000000..1d979d6 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/RetrofitDynamicProvider.kt @@ -0,0 +1,88 @@ +package com.android.base.thirdframe.retrofit + + +import com.android.base.application.CustomApplication +import com.android.base.thirdframe.retrofit.interceptor.DefaultHeaderInterceptor +import com.android.base.thirdframe.retrofit.interceptor.HttpLoggingInterceptor +import com.franmontiel.persistentcookiejar.PersistentCookieJar +import com.franmontiel.persistentcookiejar.cache.SetCookieCache +import com.franmontiel.persistentcookiejar.persistence.SharedPrefsCookiePersistor + +import java.nio.charset.Charset +import java.util.concurrent.TimeUnit + +import okhttp3.OkHttpClient +import retrofit2.Retrofit +import retrofit2.adapter.rxjava2.RxJava2CallAdapterFactory + + +class RetrofitDynamicProvider +// public final String BASE_URL = "http://www.xuetangx.com/"; + +private constructor() { + private val UTF8 = Charset.forName("UTF-8") + private var mRetrofit: Retrofit? = null + private var mOkHttpClient: OkHttpClient? = null + private val restService: ApiService? = null + + + fun builder(BASE_URL: String): RetrofitDynamicProvider? { + netCachePath = CustomApplication.context.getExternalFilesDir("net_cache")!!.absolutePath + if (mOkHttpClient == null) { + mOkHttpClient = OkHttpClient.Builder() + .addNetworkInterceptor(HttpLoggingInterceptor()) + // .addNetworkInterceptor(new HandleGzipInterceptor()) + .addInterceptor(DefaultHeaderInterceptor())//请求连接中添加头信息 + // .addNetworkInterceptor(new OnlineCacheInterceptor())//有网缓存拦截器 + // .addInterceptor(new OfflineCacheInterceptor())//无网缓存拦截器 + // .cache(new Cache(new File(netCachePath), 50 * 10240 * 1024))//缓存路径和空间设置 + // .addInterceptor(new RetryIntercepter(4))//重试 + // .addInterceptor(new GzipRequestInterceptor())//开启Gzip压缩 + + // .addInterceptor(new ProgressInterceptor())//请求url的进度 + // .addInterceptor(new TokenInterceptor())//token过期,自动刷新Token + // .addInterceptor(new SignInterceptor())//所有的接口,默认需要带上sign,timestamp2个参数 + // .addNetworkInterceptor(new ParamsEncryptInterceptor())//参数加密,一般针对表单中的字段和值进行加密,防止中途第三方进行窥探和篡改 + .cookieJar(PersistentCookieJar(SetCookieCache(), SharedPrefsCookiePersistor( + CustomApplication.context))) + .connectTimeout(30, TimeUnit.SECONDS) + .readTimeout(30, TimeUnit.SECONDS) + .writeTimeout(30, TimeUnit.SECONDS) + .build() + + } + // if (mRetrofit == null) { + mRetrofit = Retrofit.Builder() + .client(mOkHttpClient!!) + .baseUrl(BASE_URL) + .addConverterFactory(CustomizeGsonConverterFactory.create()) + .addCallAdapterFactory(RxJava2CallAdapterFactory.create()) + .build() + // } + return sInstance + } + + fun createService(tClass: Class): T { + return mRetrofit!!.create(tClass) + } + + companion object { + @Volatile + private var sInstance: RetrofitDynamicProvider? = null + lateinit var netCachePath: String + + val instance: RetrofitDynamicProvider? + get() { + if (sInstance == null) { + synchronized(RetrofitDynamicProvider::class.java) { + if (sInstance == null) { + sInstance = RetrofitDynamicProvider() + } + } + } + return sInstance + } + } + + +} \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/thirdframe/retrofit/RetrofitProvider.kt b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/RetrofitProvider.kt new file mode 100644 index 0000000..d0aadae --- /dev/null +++ b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/RetrofitProvider.kt @@ -0,0 +1,95 @@ +package com.android.base.thirdframe.retrofit + + +import com.android.base.application.CustomApplication +import com.android.base.thirdframe.retrofit.interceptor.HttpLoggingInterceptor +import com.android.base.thirdframe.retrofit.interceptor.OfflineCacheInterceptor +import com.android.base.thirdframe.retrofit.interceptor.OnlineCacheInterceptor +import com.android.base.thirdframe.retrofit.interceptor.RetryIntercepter +import com.franmontiel.persistentcookiejar.PersistentCookieJar +import com.franmontiel.persistentcookiejar.cache.SetCookieCache +import com.franmontiel.persistentcookiejar.persistence.SharedPrefsCookiePersistor + +import java.io.File +import java.util.concurrent.TimeUnit + +import okhttp3.Cache +import okhttp3.OkHttpClient +import retrofit2.Retrofit +import retrofit2.adapter.rxjava2.RxJava2CallAdapterFactory + + +class RetrofitProvider private constructor() { + + private var mRetrofit: Retrofit? = null + private var mOkHttpClient: OkHttpClient? = null + private var restService: ApiService? = null + val BASE_URL = "https://www.wanandroid.com/" + lateinit var persistentCookieJar: PersistentCookieJar + lateinit var sharedPrefsCookiePersistor: SharedPrefsCookiePersistor + + val apiService: ApiService? + get() { + if (restService == null) + restService = mRetrofit!!.create(ApiService::class.java) + return restService + } + + + fun builder(): RetrofitProvider? { + netCachePath = CustomApplication.context.getExternalFilesDir("net_cache")!!.absolutePath + if (mOkHttpClient == null) { + sharedPrefsCookiePersistor = SharedPrefsCookiePersistor(CustomApplication.context) + persistentCookieJar = PersistentCookieJar(SetCookieCache(), sharedPrefsCookiePersistor) + mOkHttpClient = OkHttpClient.Builder() + .addNetworkInterceptor(HttpLoggingInterceptor()) + .addNetworkInterceptor(OnlineCacheInterceptor())//有网缓存拦截器 + .addInterceptor(OfflineCacheInterceptor())//无网缓存拦截器 + .cache(Cache(File(netCachePath), (50 * 10240 * 1024).toLong()))//缓存路径和空间设置 + .addInterceptor(RetryIntercepter(4))//重试 + // .addInterceptor(new GzipRequestInterceptor())//开启Gzip压缩 + // .addInterceptor(new DefaultHeaderInterceptor())//请求连接中添加头信息 + // .addInterceptor(new ProgressInterceptor())//请求url的进度 + // .addInterceptor(new TokenInterceptor())//token过期,自动刷新Token + // .addInterceptor(new SignInterceptor())//所有的接口,默认需要带上sign,timestamp2个参数 + // .addNetworkInterceptor(new ParamsEncryptInterceptor())//参数加密,一般针对表单中的字段和值进行加密,防止中途第三方进行窥探和篡改 + .cookieJar(persistentCookieJar) + .connectTimeout(5, TimeUnit.SECONDS) + .readTimeout(5, TimeUnit.SECONDS) + .writeTimeout(5, TimeUnit.SECONDS) + .build() + + } + if (mRetrofit == null) { + mRetrofit = Retrofit.Builder() + .client(mOkHttpClient!!) + .baseUrl(BASE_URL) + .addConverterFactory(CustomizeGsonConverterFactory.create()) + .addCallAdapterFactory(RxJava2CallAdapterFactory.create()) + .build() + } + return sInstance + } + + fun createService(tClass: Class): T { + return mRetrofit!!.create(tClass) + } + + companion object { + @Volatile + private var sInstance: RetrofitProvider? = null + lateinit var netCachePath: String + + val instance: RetrofitProvider + get() { + if (sInstance == null) { + synchronized(RetrofitProvider::class.java) { + if (sInstance == null) { + sInstance = RetrofitProvider() + } + } + } + return sInstance!! + } + } +} \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/DefaultHeaderInterceptor.kt b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/DefaultHeaderInterceptor.kt new file mode 100644 index 0000000..82e4a01 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/DefaultHeaderInterceptor.kt @@ -0,0 +1,23 @@ +package com.android.base.thirdframe.retrofit.interceptor + +import java.io.IOException + +import okhttp3.Headers +import okhttp3.Interceptor +import okhttp3.Request +import okhttp3.Response + +class DefaultHeaderInterceptor : Interceptor { + + @Throws(IOException::class) + override fun intercept(chain: Interceptor.Chain): Response { + val originalrequest = chain.request()//原始request + val headers = Headers.Builder() + .add("name", "jason") + .add("age", "27") + .add("token", "dfedsdfsdfffdd12dsef123sdfef1s2dfe") + .build()//构造一个Headers + val request = originalrequest.newBuilder().headers(headers).build()//注意这行代码别写错了 + return chain.proceed(request) + } +} \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/GzipRequestInterceptor.kt b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/GzipRequestInterceptor.kt new file mode 100644 index 0000000..a014c04 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/GzipRequestInterceptor.kt @@ -0,0 +1,52 @@ +package com.android.base.thirdframe.retrofit.interceptor + +/** This interceptor compresses the HTTP request body. Many webservers can't handle this! */ + +import java.io.IOException + +import okhttp3.Interceptor +import okhttp3.MediaType +import okhttp3.Request +import okhttp3.RequestBody +import okhttp3.Response +import okio.BufferedSink +import okio.GzipSink +import okio.Okio + +/** + * 我们在向服务器提交大量数据的时候,希望对post的数据进行gzip压缩 + * 这个拦截器压缩了请求实体. 很多网络服务器无法处理它 */ +class GzipRequestInterceptor : Interceptor { + @Throws(IOException::class) + override fun intercept(chain: Interceptor.Chain): Response { + val originalRequest = chain.request() + if (originalRequest.body() == null || originalRequest.header("Content-Encoding") != null) { + return chain.proceed(originalRequest) + } + + val compressedRequest = originalRequest.newBuilder() + .header("Content-Encoding", "gzip") + .method(originalRequest.method(), gzip(originalRequest.body())) + .build() + return chain.proceed(compressedRequest) + } + + private fun gzip(body: RequestBody?): RequestBody { + return object : RequestBody() { + override fun contentType(): MediaType? { + return body!!.contentType() + } + + override fun contentLength(): Long { + return -1 // We don't know the compressed length in advance! + } + + @Throws(IOException::class) + override fun writeTo(sink: BufferedSink) { + val gzipSink = Okio.buffer(GzipSink(sink)) + body!!.writeTo(gzipSink) + gzipSink.close() + } + } + } +} diff --git a/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/HttpLoggingInterceptor.kt b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/HttpLoggingInterceptor.kt new file mode 100644 index 0000000..cd1a7cd --- /dev/null +++ b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/HttpLoggingInterceptor.kt @@ -0,0 +1,41 @@ +package com.android.base.thirdframe.retrofit.interceptor + + +import com.android.base.utils.LogUtil + +import java.io.IOException + +import okhttp3.Interceptor +import okhttp3.Response + + +class HttpLoggingInterceptor : Interceptor { + @Throws(IOException::class) + override fun intercept(chain: Interceptor.Chain): Response { + //这个chain里面包含了request和response,所以你要什么都可以从这里拿 + val request = chain.request() + + val t1 = System.nanoTime()//请求发起的时间 + LogUtil.d("HttpLoggingInterceptor", String.format("发送请求 %s on %s%n%s", + request.url(), chain.connection(), request.headers())) + + val response = chain.proceed(request) + + val t2 = System.nanoTime()//收到响应的时间 + + //这里不能直接使用response.body().string()的方式输出日志 + //因为response.body().string()之后,response中的流会被关闭,程序会报错,我们需要创建出一 + //个新的response给应用层处理 + val responseBody = response.peekBody((1024 * 1024).toLong()) + + LogUtil.d("HttpLoggingInterceptor", String.format("接收响应: [%s] %n返回json:【%s】 %.1fms%n%s", + response.request().url(), + responseBody.string(), + (t2 - t1) / 1e6, + response.headers())) + + return response + } +} + + diff --git a/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/OfflineCacheInterceptor.kt b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/OfflineCacheInterceptor.kt new file mode 100644 index 0000000..e7e4d98 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/OfflineCacheInterceptor.kt @@ -0,0 +1,36 @@ +package com.android.base.thirdframe.retrofit.interceptor + +import android.util.Log + +import com.android.base.utils.NetUtils + +import java.io.IOException + +import okhttp3.Interceptor +import okhttp3.Response + +class OfflineCacheInterceptor : Interceptor { + @Throws(IOException::class) + override fun intercept(chain: Interceptor.Chain): Response { + var request = chain.request() + if (!NetUtils.isConnected) { + val offlineCacheTime = Integer.MAX_VALUE//离线的时候的缓存的过期时间 + request = request.newBuilder() + // .cacheControl(new CacheControl + // .Builder() + // .maxStale(60, TimeUnit.SECONDS) + // .onlyIfCached() + // .build() + // ) + // 两种方式结果是一样的,写法不同 + .header("Cache-Control", "public, only-if-cached, max-stale=$offlineCacheTime") + .build() + } + val response = chain.proceed(request) + Log.d("gaolei", "OfflineCacheInterceptor------------response.code():" + response.code()) + if (response.code() == 504) { + // 缓存已经不可使用 + } + return response + } +} \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/OnlineCacheInterceptor.kt b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/OnlineCacheInterceptor.kt new file mode 100644 index 0000000..8b3337b --- /dev/null +++ b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/OnlineCacheInterceptor.kt @@ -0,0 +1,25 @@ +package com.android.base.thirdframe.retrofit.interceptor + +import android.util.Log + +import java.io.IOException + +import okhttp3.Interceptor +import okhttp3.Request +import okhttp3.Response + +class OnlineCacheInterceptor : Interceptor { + @Throws(IOException::class) + override fun intercept(chain: Interceptor.Chain): Response { + val request = chain.request() + val response = chain.proceed(request) + val onlineCacheTime = 10//在线的时候的缓存过期时间,如果想要不缓存,直接时间设置为0 + val newResponse = response.newBuilder() + .header("Cache-Control", "public, max-age=$onlineCacheTime") + .removeHeader("Pragma") + .build() + Log.d("gaolei", "OnlineCacheInterceptor------------newResponse.code():" + newResponse.code()) + + return newResponse + } +} \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/ParamsEncryptInterceptor.kt b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/ParamsEncryptInterceptor.kt new file mode 100644 index 0000000..28ed4d0 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/ParamsEncryptInterceptor.kt @@ -0,0 +1,105 @@ +package com.android.base.thirdframe.retrofit.interceptor + +import android.util.Base64 +import android.util.Log + +import java.io.IOException +import java.security.NoSuchAlgorithmException +import java.security.SecureRandom +import java.security.spec.InvalidKeySpecException + +import javax.crypto.Cipher +import javax.crypto.KeyGenerator +import javax.crypto.spec.SecretKeySpec + +import okhttp3.Interceptor +import okhttp3.MediaType +import okhttp3.RequestBody +import okhttp3.Response +import okio.Buffer + +class ParamsEncryptInterceptor : Interceptor { + + @Throws(IOException::class) + override fun intercept(chain: Interceptor.Chain): Response { + + + var request = chain.request() + try { + val oldBody = request.body() + val buffer = Buffer() + oldBody!!.writeTo(buffer) + val strOldBody = buffer.readUtf8() + val mediaType = MediaType.parse("text/plain; charset=utf-8") + //在发动报文前,用Base64和AES对参数进行加密转码 + val strNewBody = encryptDataWithSymmetricKey(generateSymmetric(), strOldBody) + val body = RequestBody.create(mediaType, strNewBody!!) + request = request.newBuilder().header("Content-Type", body.contentType()!!.toString()) + .header("Content-Length", body.contentLength().toString()).method(request.method(), body).build() + } catch (e: NoSuchAlgorithmException) { + e.printStackTrace() + } catch (e: InvalidKeySpecException) { + e.printStackTrace() + } + + return chain.proceed(request) + } + + companion object { + + private val TAG = ParamsEncryptInterceptor::class.java.simpleName + + private val DEBUG = true + + //加密算法自己和服务端约定即可 + private fun encrypt(str: String): String { + //your code + return "" + } + + //生成了对称密钥 + fun generateSymmetric(): SecretKeySpec? { + // Set up secret key spec for 128-bit AES encryption and decryption + var sks: SecretKeySpec? = null + try { + val sr = SecureRandom.getInstance("SHA1PRNG") + sr.setSeed("any data used as random seed".toByteArray()) + val kg = KeyGenerator.getInstance("AES") + kg.init(128, sr) + val secretKey = kg.generateKey() + //在这里可以用从服务端获取到的RSA公钥对刚才随机产生的加密密钥secretKey进行加密 + sks = SecretKeySpec(secretKey.encoded, "AES") + + println("AES KEY: $sks") + } catch (e: Exception) { + Log.e(TAG, "AES secret key spec error") + } + + return sks + } + + //用SecretKeySpec加密数据 + @Throws(IOException::class, NoSuchAlgorithmException::class, InvalidKeySpecException::class) + private fun encryptDataWithSymmetricKey(symmKey: SecretKeySpec?, data: String): String? { + + // encryption + val toBeCiphred = data.toByteArray(charset("UTF-8")) + var encryptedData: String? = null + + try { + val c = Cipher.getInstance("AES") + c.init(Cipher.ENCRYPT_MODE, symmKey) + val encodedBytes = c.doFinal(toBeCiphred) + println("BYTE STRING (ASYMM): $encodedBytes") + //将SecretKeySpec转换为Base64字符串格式 + encryptedData = Base64.encodeToString(encodedBytes, Base64.DEFAULT) + + } catch (e: Exception) { + Log.e(TAG, "AES encryption error") + throw RuntimeException(e) + } + + return encryptedData + } + } +} \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/ProgressInterceptor.kt b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/ProgressInterceptor.kt new file mode 100644 index 0000000..e6891fb --- /dev/null +++ b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/ProgressInterceptor.kt @@ -0,0 +1,40 @@ +package com.android.base.thirdframe.retrofit.interceptor + +import com.android.base.thirdframe.retrofit.interceptor.util.ProgressListener +import com.android.base.thirdframe.retrofit.interceptor.util.ProgressResponseBody + +import java.io.IOException +import java.util.HashMap + +import okhttp3.Interceptor +import okhttp3.Response + +/** + * @author guolin + * @since 2017/11/5 + */ +class ProgressInterceptor : Interceptor { + + @Throws(IOException::class) + override fun intercept(chain: Interceptor.Chain): Response { + val request = chain.request() + val response = chain.proceed(request) + val url = request.url().toString() + val body = response.body() + return response.newBuilder().body(ProgressResponseBody(url, body!!)).build() + } + + companion object { + + val LISTENER_MAP: MutableMap = HashMap() + + fun addListener(url: String, listener: ProgressListener) { + LISTENER_MAP[url] = listener + } + + fun removeListener(url: String) { + LISTENER_MAP.remove(url) + } + } + +} diff --git a/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/RetryIntercepter.kt b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/RetryIntercepter.kt new file mode 100644 index 0000000..9164497 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/RetryIntercepter.kt @@ -0,0 +1,25 @@ +package com.android.base.thirdframe.retrofit.interceptor + +import java.io.IOException + +import okhttp3.Interceptor +import okhttp3.Request +import okhttp3.Response + +class RetryIntercepter(var maxRetry: Int//最大重试次数 +) : Interceptor { + private var retryNum = 0//假如设置为3次重试的话,则最大可能请求4次(默认1次+3次重试) + + @Throws(IOException::class) + override fun intercept(chain: Interceptor.Chain): Response { + val request = chain.request() + println("retryNum=$retryNum") + var response = chain.proceed(request) + while (!response.isSuccessful && retryNum < maxRetry) { + retryNum++ + println("retryNum=$retryNum") + response = chain.proceed(request) + } + return response + } +} \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/SignInterceptor.kt b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/SignInterceptor.kt new file mode 100644 index 0000000..e07e324 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/SignInterceptor.kt @@ -0,0 +1,143 @@ +package com.android.base.thirdframe.retrofit.interceptor + +import android.content.Context +import android.util.ArrayMap +import android.util.Log +import android.util.Pair +import androidx.multidex.BuildConfig +import com.android.base.utils.LogUtil +import com.android.base.utils.Utils +import okhttp3.* +import okio.Buffer +import org.json.JSONException +import org.json.JSONObject +import java.io.IOException +import java.nio.charset.Charset +import java.util.* + + +class SignInterceptor : Interceptor { + private val mContext: Context? = null + + @Throws(IOException::class) + override fun intercept(chain: Interceptor.Chain): Response { + + var request = chain.request() + + //header add version + val requestBuilder = request.newBuilder() + requestBuilder.addHeader("version", BuildConfig.VERSION_NAME) + requestBuilder.addHeader("platform", "ANDROID") + + if (request.method() != "POST") { + return chain.proceed(request) + } + + var bodyJson: JSONObject? = null + val params = ArrayList>() + val arrayMap = ArrayMap() + + var body: FormBody? = null + try { + body = request.body() as FormBody? + } catch (c: ClassCastException) { + } + + if (body != null) { + + val size = body.size() + if (size > 0) { + for (i in 0 until size) { + params.add(Pair(body.name(i), body.value(i))) + } + } + } else { + val requestBody = request.body() + + if (requestBody != null) { + val buffer = Buffer() + requestBody.writeTo(buffer) + var charset: Charset? = Charset.forName("UTF-8") + val contentType = requestBody.contentType() + if (contentType != null) { + charset = contentType.charset(charset) + } + val paramsStr = buffer.readString(charset!!) + if (BuildConfig.DEBUG) { + Log.i("HTTP", "request = $paramsStr") + } + + try { + bodyJson = JSONObject(paramsStr) + } catch (e: JSONException) { + LogUtil.e("JSON", "JsonObject err") + } + + if (bodyJson != null) { + val it = bodyJson.keys() + while (it.hasNext()) { + val key = it.next() + var value: Any? = null + try { + value = bodyJson.get(key) + } catch (e: JSONException) { + LogUtil.e("JSON", "JsonObject get err") + } + + if (key == "token") { + arrayMap["token"] = value.toString() + arrayMap["timestamp"] = (System.currentTimeMillis() / 1000).toString() + + for (strKey in arrayMap.keys) { + params.add(Pair(strKey, arrayMap[strKey])) + } + } else { + params.add(Pair(key, value.toString())) + } + + } + } + + } + } + + params.add(Pair("MD5Key", MD5KEY)) + Collections.sort(params) { lhs, rhs -> lhs.second.compareTo(rhs.second) } + + val sb = StringBuilder() + for (i in params.indices) { + sb.append(params[i].second) + if (i < params.size - 1) { + sb.append("") + } + } + + val sign = Utils.md5Encode(sb.toString()) + params.add(Pair("sign", sign)) + + for (pair in params) { + if ((arrayMap.containsKey(pair.first) || pair.first == "sign") && bodyJson != null) { + try { + bodyJson.put(pair.first, pair.second) + } catch (e: JSONException) { + LogUtil.e("JSON", "JsonObject put err") + } + + } + } + + val postBodyString = bodyJson!!.toString() + request = requestBuilder + .post(RequestBody.create(MediaType.parse("application/json;charset=UTF-8"), + postBodyString)) + .build() + + return chain.proceed(request) + } + + companion object { + + private val MD5KEY = "base64:FgBvWS7+m3BPRnKemuoOwXEf7kvldmM+VOmJS5Iccxs=" + } + +} diff --git a/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/TokenInterceptor.kt b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/TokenInterceptor.kt new file mode 100644 index 0000000..f7c1a6b --- /dev/null +++ b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/TokenInterceptor.kt @@ -0,0 +1,69 @@ +package com.android.base.thirdframe.retrofit.interceptor + +import com.android.base.utils.LogUtil + +import java.io.IOException + +import okhttp3.Interceptor +import okhttp3.Response + +class TokenInterceptor : Interceptor { + + internal var TAG = javaClass.toString() + "" + + /** + * 同步请求方式,获取最新的Token + * + * @return + */ + private// 通过一个特定的接口获取新的token,此处要用到同步的retrofit请求 + // Response_Login loginInfo = CacheManager.restoreLoginInfo(BaseApplication.getContext()); + // String username = loginInfo.getUserName(); + // String password = loginInfo.getPassword(); + // + // LogUtil.print("loginInfo=" + loginInfo.toString()); + // Call call = WebHelper.getSyncInterface().synclogin(new Request_Login(username, password)); + // loginInfo = call.execute().body(); + // LogUtil.print("loginInfo=" + loginInfo.toString()); + // + // loginInfo.setPassword(password); + // CacheManager.saveLoginInfo(loginInfo); + // return loginInfo.getSession(); + // } + val newToken: String + @Throws(IOException::class) + get() = "" + + @Throws(IOException::class) + override fun intercept(chain: Interceptor.Chain): Response { + val request = chain.request() + val response = chain.proceed(request) + LogUtil.d(TAG, response.code().toString() + "") + + if (isTokenExpired(response)) {//根据和服务端的约定判断token过期 + LogUtil.d(TAG, "静默自动刷新Token,然后重新请求数据") + //同步请求方式,获取最新的Token + val newSession = newToken + //使用新的Token,创建新的请求 + val newRequest = chain.request() + .newBuilder() + .header("Cookie", "JSESSIONID=$newSession") + .build() + //重新请求 + return chain.proceed(newRequest) + } + return response + } + + /** + * 根据Response,判断Token是否失效 + * + * @param response + * @return + */ + private fun isTokenExpired(response: Response): Boolean { + return if (response.code() == 404) { + true + } else false + } +} \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/UrlResetInterceptor.kt b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/UrlResetInterceptor.kt new file mode 100644 index 0000000..f664eb9 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/UrlResetInterceptor.kt @@ -0,0 +1,47 @@ +package com.android.base.thirdframe.retrofit.interceptor + +import java.io.IOException + +import okhttp3.HttpUrl +import okhttp3.Interceptor +import okhttp3.Request +import okhttp3.Response + +/* +实际的开发过程中,我们在网络请求中会添加一些公共参数,对于一些可变的公共参数,在缓存数据和访问缓存数据的 +过程中需要删除,比如网络类型,有网络时其值为Wifi或4G等,无网络时可能为none, 这时访问缓存时就会因url不一致导致访问缓存失败 +*/ + +class UrlResetInterceptor : Interceptor { + @Throws(IOException::class) + override fun intercept(chain: Interceptor.Chain): Response { + + + val response = chain.proceed(chain.request()) + val newUrl = chain.request().url().newBuilder() + .removeAllQueryParameters("network") + .build() // 缓存数据前删除可变的公共参数 + val newRequest = chain.request().newBuilder() + .url(newUrl) + .build() + return response.newBuilder() + .request(newRequest) + .removeHeader("Pragma") + .header("Cache-Control", "public, max-age=" + 1) + .build() + + + // Request request = chain.request(); + // HttpUrl url = request.url(); + // String s = url.url().toString(); + // //———请求之前—– + // Response response = null; + // //如果Url中没有包含androidxx关键字,则修改请求链接为http://www.androidxx.cn + // if (s.contains("androidxx")) { + // request = request.newBuilder().url("http://www.androidxx.cn").build(); + // } + // response = chain.proceed(request); + // //———请求之后———— + // return response; + } +} \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/util/ProgressListener.kt b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/util/ProgressListener.kt new file mode 100644 index 0000000..3d3762b --- /dev/null +++ b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/util/ProgressListener.kt @@ -0,0 +1,16 @@ +package com.android.base.thirdframe.retrofit.interceptor.util + +/** + * @author guolin + * @since 2017/11/5 + */ +interface ProgressListener { + + /** + * 当下载进度发生变化时,会回调此方法。 + * @param progress + * 当前的下载进度,参数值的范围是0-100。 + */ + fun onProgress(progress: Int) + +} \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/util/ProgressResponseBody.kt b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/util/ProgressResponseBody.kt new file mode 100644 index 0000000..82618d6 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/thirdframe/retrofit/interceptor/util/ProgressResponseBody.kt @@ -0,0 +1,79 @@ +package com.android.base.thirdframe.retrofit.interceptor.util + +import android.util.Log + +import com.android.base.thirdframe.retrofit.interceptor.ProgressInterceptor + +import java.io.IOException + +import okhttp3.MediaType +import okhttp3.ResponseBody +import okio.Buffer +import okio.BufferedSource +import okio.ForwardingSource +import okio.Okio +import okio.Source + +/** + * @author guolin + * @since 2017/11/5 + */ +class ProgressResponseBody(url: String, private val responseBody: ResponseBody) : ResponseBody() { + + private var bufferedSource: BufferedSource? = null + + private var listener: ProgressListener? = null + + init { + listener = ProgressInterceptor.LISTENER_MAP[url] + } + + override fun contentType(): MediaType? { + return responseBody.contentType() + } + + override fun contentLength(): Long { + return responseBody.contentLength() + } + + override fun source(): BufferedSource? { + if (bufferedSource == null) { + bufferedSource = Okio.buffer(ProgressSource(responseBody.source())) + } + return bufferedSource + } + + private inner class ProgressSource internal constructor(source: Source) : ForwardingSource(source) { + + internal var totalBytesRead: Long = 0 + + internal var currentProgress: Int = 0 + + @Throws(IOException::class) + override fun read(sink: Buffer, byteCount: Long): Long { + val bytesRead = super.read(sink, byteCount) + val fullLength = responseBody.contentLength() + if (bytesRead == -1.toLong()) { + totalBytesRead = fullLength + } else { + totalBytesRead += bytesRead + } + val progress = (100f * totalBytesRead / fullLength).toInt() + Log.d(TAG, "download progress is $progress") + if (listener != null && progress != currentProgress) { + listener!!.onProgress(progress) + } + if (listener != null && totalBytesRead == fullLength) { + listener = null + } + currentProgress = progress + return bytesRead + } + } + + companion object { + + private val TAG = "ProgressResponseBody" + } + +} diff --git a/basemodule/src/main/java/com/android/base/thirdframe/rxjava/BaseObserver.kt b/basemodule/src/main/java/com/android/base/thirdframe/rxjava/BaseObserver.kt new file mode 100644 index 0000000..7caeba9 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/thirdframe/rxjava/BaseObserver.kt @@ -0,0 +1,63 @@ +package com.android.base.thirdframe.rxjava + +import android.content.Context + +import com.android.base.mview.BaseView +import com.android.base.utils.NetUtils +import com.android.base.utils.Utils +import com.android.base.view.CustomProgressDialog + +import java.io.IOException + +import io.reactivex.observers.ResourceObserver +import retrofit2.HttpException + +abstract class BaseObserver : ResourceObserver { + + protected var errMsg = "" + private var isCancelDialog = true + private val context: Context? = null + // public static Dialog prgressDialog; + + protected constructor(isShowDialog: Boolean) { + // context在CustomProgressDialog中用到 + // this.context = context; + // if (isShowDialog) { + // Activity activity=BaseActivity.context; + // CustomProgressDialog.show(activity); + // } + } + + protected constructor(view: BaseView, isShowError: Boolean) {} + + + fun setCancelDialog(cancelDialog: Boolean) { + isCancelDialog = cancelDialog + } + + override fun onNext(t: T) { + + } + + override fun onError(e: Throwable) { + if (isCancelDialog) + CustomProgressDialog.cancel() + if (!NetUtils.isConnected) { + errMsg = "网络连接出错,请检查网络" + + } else if (e is HttpException) { + errMsg = "服务器访问异常(HttpException)" + } else if (e is IOException) { + errMsg = "服务器访问异常(IOException)" + } + if ("" != errMsg) + Utils.showToast(errMsg, true) + + } + + override fun onComplete() { + if (isCancelDialog) + CustomProgressDialog.cancel() + } + +} diff --git a/basemodule/src/main/java/com/android/base/utils/JsonUtil.kt b/basemodule/src/main/java/com/android/base/utils/JsonUtil.kt new file mode 100644 index 0000000..568ccff --- /dev/null +++ b/basemodule/src/main/java/com/android/base/utils/JsonUtil.kt @@ -0,0 +1,249 @@ +package com.android.base.utils + +import com.google.gson.Gson +import com.google.gson.JsonArray +import com.google.gson.JsonElement +import com.google.gson.JsonObject +import com.google.gson.JsonParseException +import com.google.gson.JsonParser +import com.google.gson.reflect.TypeToken + +import java.lang.reflect.Type +import java.util.ArrayList +import java.util.HashMap + +/** + * JSON字符换和对象间转换的工具类 + */ +object JsonUtil { + + private val GSON = Gson() + + /** + * 将json字符串转换成相应的对象 + * + * @param jsonString json字符串 + * @param classOfT 对象类型的class + * @param 对象的类型 + * @return 转换后的对象 + * @throws JsonParseException if json is not a valid representation for an object of type classOfT + */ + @Throws(RuntimeException::class) + fun decode(jsonString: String, classOfT: Class): T { + return GSON.fromJson(jsonString, classOfT) + } + + /** + * 将json字符串转换成相应的对象 + * + * @param jsonString json字符串 + * @param typeOfT 对象类型的type + * @param 对象的类型 + * @return 转换后的对象 + * @throws JsonParseException if json is not a valid representation for an object of type typeOfT + */ + @Throws(RuntimeException::class) + fun decode(jsonString: String, typeOfT: Type): T { + return GSON.fromJson(jsonString, typeOfT) + } + + /** + * 将已经从json转换后的对象(通常是一个Map)转换成对应Bean的对象实例 + * + * @param object 一个转json换中的过程对象,通常是一个Map,若传值为null,则返回null + * @param typeOfT 要转换的对象类型的type + * @param 要转换的对象类型 + * @return 转换后的对象 + * @throws JsonParseException if object is not a valid representation for an object of type typeOfT + */ + @Throws(RuntimeException::class) + fun decode(`object`: Any, typeOfT: Type): T? { + val jsonString = GSON.toJson(`object`) + return GSON.fromJson(jsonString, typeOfT) + } + + /** + * 将一个JavaBean转换成json字符串 + * + * @param object 待转换的对象 + * @return json字符串 + * @throws JsonParseException if there was a problem while parsing object. + */ + @Throws(RuntimeException::class) + fun encode(`object`: Any): String { + return GSON.toJson(`object`) + } + + + /** + * 获取JsonObject + * + * @param json + * @return + */ + fun parseJson(json: String): JsonObject { + val parser = JsonParser() + return parser.parse(json).asJsonObject + } + + /** + * 根据javaBean转json字符串再将字符串转Map对象 + * + * @param object + * @return + */ + fun javaBeanToMap(`object`: Any): Map { + val strJson = encode(`object`) + return toMap(parseJson(strJson)) + } + + /** + * 将JSONObjec对象转换成Map-List集合 + * + * @param json + * @return + */ + fun toMap(json: JsonObject): Map { + val map = HashMap() + val entrySet = json.entrySet() + val iter = entrySet.iterator() + while (iter.hasNext()) { + val entry = iter.next() + val key = entry.key + val value = entry.value + if (value is JsonArray) + map[key as String] = toList(value) + else if (value is JsonObject) + map[key as String] = toMap(value) + else + map[key as String] = value + } + return map + } + + /** + * 将JSONArray对象转换成List集合 + * + * @param json + * @return + */ + fun toList(json: JsonArray): List { + val list = ArrayList() + for (i in 0 until json.size()) { + val value = json.get(i) + if (value is JsonArray) { + list.add(toList(value)) + } else if (value is JsonObject) { + list.add(toMap(value)) + } else { + list.add(value) + } + } + return list + } + + /** + * Json解析公用方法 数组 + * + * @param json 解析参数 + * @param token 解析的类型 new TypeToken(){} + * ArrayList temp = ParserJson.fromJson(data, new TypeToken>(){}); + * @return + */ + fun fromJson(json: JsonElement, token: TypeToken): T? { + try { + val gson = Gson() + return gson.fromJson(json, token.type) + } catch (ex: Exception) { + ex.printStackTrace() + } + + return null + } + + /** + * Json解析公用方法 数组 + * + * @param json 解析参数 + * @param type 解析的类型 new TypeToken(){}.getType() + * ArrayList temp = ParserJson.fromJson(data, new TypeToken>(){}); + * @return + */ + fun fromJson(json: JsonElement, type: Type): T? { + try { + val gson = Gson() + return gson.fromJson(json, type) + } catch (ex: Exception) { + ex.printStackTrace() + } + + return null + } + + /** + * Json解析公用方法 单个类 + * + * @param json 解析参数 + * @param t 解析的类。 class + * @return + */ + fun fromJson(json: JsonElement, t: Class): T? { + try { + val gson = Gson() + return gson.fromJson(json, t) + } catch (ex: Exception) { + ex.printStackTrace() + } + + return null + } + + /** + * Json解析公用方法 数组 + * + * @param json 解析参数 + * @param token 解析的类型 new TypeToken(){} + * ArrayList temp = ParserJson.fromJson(data, new TypeToken>(){}); + * @return + */ + fun fromJson(json: String, token: TypeToken): T? { + try { + val gson = Gson() + return gson.fromJson(json, token.type) + } catch (ex: Exception) { + ex.printStackTrace() + } + + return null + } + + /** + * Json解析公用方法 单个类 + * + * @param json 解析参数 + * @param t 解析的类。 class + * @return + */ + fun fromJson(json: String, t: Class): T? { + try { + val gson = Gson() + return gson.fromJson(json, t) + } catch (ex: Exception) { + ex.printStackTrace() + } + + return null + } + + /** + * 把数据转换成Json结构 + * + * @param mType Object的数据,支持所有类型 + * @return + */ + fun toJson(mType: Any): String { + val mGson = Gson() + return mGson.toJson(mType) + } +} + diff --git a/basemodule/src/main/java/com/android/base/utils/KeyboardUtils.kt b/basemodule/src/main/java/com/android/base/utils/KeyboardUtils.kt new file mode 100644 index 0000000..15e5045 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/utils/KeyboardUtils.kt @@ -0,0 +1,24 @@ +package com.android.base.utils + +import android.content.Context +import android.view.View +import android.view.inputmethod.InputMethodManager + +object KeyboardUtils { + + fun showKeyboard(view: View) { + val imm = view.context.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager + view.requestFocus() + imm.showSoftInput(view, 0) + } + + fun hideKeyboard(view: View) { + val imm = view.context.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager + imm.hideSoftInputFromWindow(view.windowToken, 0) + } + + fun toggleSoftInput(view: View) { + val imm = view.context.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager + imm.toggleSoftInput(0, 0) + } +} \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/utils/LanguageUtil.kt b/basemodule/src/main/java/com/android/base/utils/LanguageUtil.kt new file mode 100644 index 0000000..9734dbf --- /dev/null +++ b/basemodule/src/main/java/com/android/base/utils/LanguageUtil.kt @@ -0,0 +1,108 @@ +package com.android.base.utils + +import android.content.Context +import android.content.res.Configuration +import android.os.Build +import android.os.LocaleList + + +import java.util.Locale + +object LanguageUtil { + + private val TAG = "LanguageUtil" + + + /** + * 获取选择的语言设置 + * + * @param context + * @return + */ + fun getSetLanguageLocale(context: Context): Locale { + val language = SPUtils.getParam(context, "language", 0) as Int + LogUtil.d(TAG, "language---------------$language") + // LogUtil.d(TAG, "getSystemLocale(context)---------------" + getSystemLocale(context)); + when (language) { + 0 -> return getSystemLocale(context) + 1 -> return Locale.CHINA + 2 -> return Locale.ENGLISH + else -> return Locale.CHINA + } + } + + fun saveSelectLanguage(context: Context, select: Int) { + SPUtils.setParam(context, "language", select) + + setApplicationLanguage(context) + } + + fun setLocal(context: Context): Context { + LogUtil.d(TAG, "getSetLanguageLocale---------------" + getSetLanguageLocale(context)) + return updateResources(context, getSetLanguageLocale(context)) + } + + private fun updateResources(context: Context, locale: Locale): Context { + var context = context + Locale.setDefault(locale) + + val res = context.resources + val config = Configuration(res.configuration) + if (Build.VERSION.SDK_INT >= 17) { + config.setLocale(locale) + context = context.createConfigurationContext(config) + } else { + config.locale = locale + res.updateConfiguration(config, res.displayMetrics) + } + return context + } + + /** + * 我们都会在代码中调用context.getResource().getString()这句代码看起来没什么问题,但是你这个context要是用的是applicationContext那么问题就来了。 + * 你会发现当你切换语言后用这样方式设置的string没有改变,所以我们需要改动我们的代码。 + * 解决方法就是,在切换语言后把application的updateConfiguration也要更新了 + */ + fun setApplicationLanguage(context: Context) { + val resources = context.applicationContext.resources + val dm = resources.displayMetrics + val config = resources.configuration + val locale = getSetLanguageLocale(context) + config.locale = locale + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { + val localeList = LocaleList(locale) + LocaleList.setDefault(localeList) + config.locales = localeList + context.applicationContext.createConfigurationContext(config) + Locale.setDefault(locale) + } + resources.updateConfiguration(config, dm) + } + + fun getSystemLocale(context: Context): Locale { + val locale: Locale + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { + locale = LocaleList.getDefault().get(0) + } else { + locale = Locale.getDefault() + } + return locale + } + + // public static void saveSystemCurrentLanguage(Context context) { + // Locale locale; + // if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { + // locale = LocaleList.getDefault().get(0); + // } else { + // locale = Locale.getDefault(); + // } + // Log.d(TAG, locale.getLanguage()); + // SPUtil.getInstance(context).setSystemCurrentLocal(locale); + // } + + // public static void onConfigurationChanged(Context context){ + //// saveSystemCurrentLanguage(context); + // setLocal(context); + // setApplicationLanguage(context); + // } +} diff --git a/basemodule/src/main/java/com/android/base/utils/LogUtil.kt b/basemodule/src/main/java/com/android/base/utils/LogUtil.kt new file mode 100644 index 0000000..8098344 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/utils/LogUtil.kt @@ -0,0 +1,66 @@ +/** + * Copyright (C) 2006-2014 Tuniu All rights reserved + */ +package com.android.base.utils + +import android.util.Log +import androidx.multidex.BuildConfig + + +object LogUtil { + + private var isDebug = BuildConfig.DEBUG + private val TAG = "zmy" + + fun init(isPrintable: Boolean) { + isDebug = isPrintable + } + + fun d(msg: String) { + if (!isDebug) { + return + } + Log.e(TAG, msg) + } + + fun v(tag: String, msg: String) { + if (!isDebug) { + return + } + Log.v(tag, msg) + } + + + fun d(tag: String, msg: String) { + if (!isDebug) { + return + } + Log.d(tag, msg) + } + + + fun i(tag: String, msg: String) { + if (!isDebug) { + return + } + Log.i(tag, msg) + } + + + fun w(tag: String, msg: String) { + if (!isDebug) { + return + } + Log.w(tag, msg) + } + + + fun e(tag: String, msg: String) { + if (!isDebug) { + return + } + Log.e(tag, msg) + } + + +} diff --git a/basemodule/src/main/java/com/android/base/utils/NetUtils.kt b/basemodule/src/main/java/com/android/base/utils/NetUtils.kt new file mode 100644 index 0000000..7d004fb --- /dev/null +++ b/basemodule/src/main/java/com/android/base/utils/NetUtils.kt @@ -0,0 +1,72 @@ +package com.android.base.utils + + +import android.app.Activity +import android.content.ComponentName +import android.content.Context +import android.content.Intent +import android.net.ConnectivityManager +import android.net.NetworkInfo + +import com.android.base.application.CustomApplication + +/** + * 跟网络相关的工具类 + * + * + * + */ +class NetUtils private constructor() { + init { + /* cannot be instantiated */ + throw UnsupportedOperationException("cannot be instantiated") + } + + companion object { + + + val isConnected: Boolean + get() { + + val connectivity = CustomApplication.context + .getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager + + if (null != connectivity) { + + val info = connectivity.activeNetworkInfo + if (null != info && info.isConnected) { + if (info.state == NetworkInfo.State.CONNECTED) { + return true + } + } + } + return false + } + + /** + * 判断是否是wifi连接 + */ + val isWifi: Boolean + get() { + val cm = CustomApplication.context + .getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager + ?: return false + + return cm.activeNetworkInfo.type == ConnectivityManager.TYPE_WIFI + + } + + /** + * 打开网络设置界面 + */ + fun openSetting(activity: Activity) { + val intent = Intent("/") + val cm = ComponentName("com.android.settings", + "com.android.settings.WirelessSettings") + intent.component = cm + intent.action = "android.intent.action.VIEW" + activity.startActivityForResult(intent, 0) + } + } + +} diff --git a/basemodule/src/main/java/com/android/base/utils/PermissionUtil.kt b/basemodule/src/main/java/com/android/base/utils/PermissionUtil.kt new file mode 100644 index 0000000..b4ecee6 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/utils/PermissionUtil.kt @@ -0,0 +1,117 @@ +package com.android.base.utils + + +import android.Manifest +import android.app.Activity +import android.app.AlertDialog +import android.content.Intent +import android.net.Uri +import android.os.Build +import androidx.core.app.ActivityCompat + +object PermissionUtil { + + private val denyRequestContent = "%s权限 为必要权限,开通才可以正常使用相应功能" + private val foreverDenyRequestContent = "%s权限 为必要权限,开通才可以正常使用相应功能。\n \n 请点击 \"设置\"-\"权限\"-打开所需权限。" + val PERMISSION_CODE = 10001 + + fun gotoDetailSettingIntent(context: Activity) { + val intent = Intent() + intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) + if (Build.VERSION.SDK_INT >= 9) { + intent.action = "android.settings.APPLICATION_DETAILS_SETTINGS" + intent.data = Uri.fromParts("package", context.packageName, null) + } else if (Build.VERSION.SDK_INT <= 8) { + intent.action = Intent.ACTION_VIEW + intent.setClassName("com.android.settings", "com.android.settings.InstalledAppDetails") + intent.putExtra("com.android.settings.ApplicationPkgName", context.packageName) + } + context.startActivity(intent) + + // Intent intent = new Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS); + // Uri uri = Uri.fromParts("package", context.getPackageName(), null); + // intent.setData(uri); + } + + fun requestDenyDialog(activity: Activity, vararg permissions: String) { + + val content = getContent(denyRequestContent, *permissions) + + val builder = AlertDialog.Builder(activity) + + builder.setTitle("权限申请") + .setMessage(content) + .setPositiveButton("申请") { dialog, id -> + ActivityCompat.requestPermissions(activity, permissions, PERMISSION_CODE) + dialog.dismiss() + } + .setNegativeButton("取消") { dialog, id -> + if (Utils.getTopActivity(activity) == "MainActivity") { + activity.finish() + } + dialog.dismiss() + } + builder.show() + } + + fun requestForeverDenyDialog(activity: Activity, vararg permissions: String) { + + val content = getContent(foreverDenyRequestContent, *permissions) + + val builder = AlertDialog.Builder(activity) + + builder.setTitle("权限设置") + .setMessage(content) + .setPositiveButton("设置") { dialog, id -> + gotoDetailSettingIntent(activity) + dialog.dismiss() + } + .setNegativeButton("取消") { dialog, id -> dialog.dismiss() } + builder.show() + } + + fun getContent(ifForeverDeny: String, vararg permissions: String): String { + var content = "" + + if (permissions.size == 1) { + if (permissions[0] == Manifest.permission.CAMERA) + content = String.format(ifForeverDeny, "相机") + if (permissions[0] == Manifest.permission.WRITE_EXTERNAL_STORAGE) + content = String.format(ifForeverDeny, "存储") + } + if (permissions.size > 1) { + var stringBuilder = StringBuilder() + val length = permissions.size + for (i in 0 until length) { + if (permissions[i] == Manifest.permission.CAMERA) + stringBuilder = stringBuilder.append("相机") + if (permissions[i] == Manifest.permission.WRITE_EXTERNAL_STORAGE) + stringBuilder = stringBuilder.append("存储") + if (permissions[i] == Manifest.permission.ACCESS_FINE_LOCATION) + stringBuilder = stringBuilder.append("位置") + if (permissions[i] == Manifest.permission.WRITE_CONTACTS) + stringBuilder = stringBuilder.append("联系人") + if (i < length - 1) + stringBuilder = stringBuilder.append("、") + } + content = String.format(ifForeverDeny, stringBuilder.toString()) + } + return content + + } + + /** + * 权限请求结果回调接口 + */ + interface RequestPermissionCallBack { + /** + * 同意授权 + */ + fun granted() + + /** + * 取消授权 + */ + fun denied() + } +} diff --git a/basemodule/src/main/java/com/android/base/utils/ResponseStatusUtil.kt b/basemodule/src/main/java/com/android/base/utils/ResponseStatusUtil.kt new file mode 100644 index 0000000..e254456 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/utils/ResponseStatusUtil.kt @@ -0,0 +1,24 @@ +package com.android.base.utils + +import com.android.base.mmodel.BaseData +import com.android.base.mmodel.BaseListResponse +import com.android.base.mmodel.BaseResponse + +object ResponseStatusUtil { + + + fun handleResponseStatus(baseData: BaseResponse<*>?) { + if (baseData == null) return + Utils.showToast(baseData.errorMsg, true) + } + + fun handleListResponseStatus( baseData: BaseListResponse>) { + if (baseData == null) return + Utils.showToast(baseData.errorMsg, true) + } + + fun handleResponseStatus(baseData: BaseData?) { + if (baseData == null) return + Utils.showToast(baseData.errorMsg, true) + } +} \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/utils/SPUtils.kt b/basemodule/src/main/java/com/android/base/utils/SPUtils.kt new file mode 100644 index 0000000..a70b566 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/utils/SPUtils.kt @@ -0,0 +1,93 @@ +package com.android.base.utils + +import android.content.Context + + +object SPUtils { + + /** + * 保存在手机里面的文件名 + */ + private val FILE_NAME = "SP_FILE" + + + /** + * 保存数据的方法,我们需要拿到保存数据的具体类型,然后根据类型调用不同的保存方法 + * @param context + * @param key + * @param object + */ + fun setParam(context: Context, key: String, `object`: Any) { + + val type = `object`.javaClass.simpleName + val sp = context.getSharedPreferences(FILE_NAME, Context.MODE_PRIVATE) + val editor = sp.edit() + + if ("String" == type) { + editor.putString(key, `object` as String) + } else if ("Integer" == type) { + editor.putInt(key, `object` as Int) + } else if ("Boolean" == type) { + editor.putBoolean(key, `object` as Boolean) + } else if ("Float" == type) { + editor.putFloat(key, `object` as Float) + } else if ("Long" == type) { + editor.putLong(key, `object` as Long) + } + + editor.commit() + } + + + /** + * 得到保存数据的方法,我们根据默认值得到保存的数据的具体类型,然后调用相对于的方法获取值 + * @param context + * @param key + * @param defaultObject + * @return + */ + fun getParam(context: Context, key: String, defaultObject: Any): Any? { + val type = defaultObject.javaClass.simpleName + val sp = context.getSharedPreferences(FILE_NAME, Context.MODE_PRIVATE) + + if ("String" == type) { + return sp.getString(key, defaultObject as String) + } else if ("Integer" == type) { + return sp.getInt(key, defaultObject as Int) + } else if ("Boolean" == type) { + return sp.getBoolean(key, defaultObject as Boolean) + } else if ("Float" == type) { + return sp.getFloat(key, defaultObject as Float) + } else if ("Long" == type) { + return sp.getLong(key, defaultObject as Long) + } + + return null + } + + /** + * 清除所有数据 + * @param context + */ + fun clearAll(context: Context) { + val sp = context.getSharedPreferences( + FILE_NAME, + Context.MODE_PRIVATE) + val editor = sp.edit() + editor.clear().commit() + } + + /** + * 清除指定数据 + * @param context + */ + fun clear(context: Context, key: String) { + val sp = context.getSharedPreferences( + FILE_NAME, + Context.MODE_PRIVATE) + val editor = sp.edit() + editor.remove(key) + editor.commit() + } + +} diff --git a/basemodule/src/main/java/com/android/base/utils/ScreenUtils.kt b/basemodule/src/main/java/com/android/base/utils/ScreenUtils.kt new file mode 100644 index 0000000..9c626e5 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/utils/ScreenUtils.kt @@ -0,0 +1,141 @@ +package com.android.base.utils + +import android.app.Activity +import android.content.Context +import android.graphics.Bitmap +import android.graphics.Rect +import android.util.DisplayMetrics +import android.view.WindowManager + +/** + * 获得屏幕相关的辅助类 + * + * + * + */ +class ScreenUtils private constructor() { + init { + /* cannot be instantiated */ + throw UnsupportedOperationException("cannot be instantiated") + } + + companion object { + + /** + * 获得屏幕高度 + * + * @param context + * @return + */ + fun getScreenWidth(context: Context): Int { + val wm = context + .getSystemService(Context.WINDOW_SERVICE) as WindowManager + val outMetrics = DisplayMetrics() + wm.defaultDisplay.getMetrics(outMetrics) + return outMetrics.widthPixels + } + + /** + * 获得屏幕宽度 + * + * @param context + * @return + */ + fun getScreenHeight(context: Context): Int { + val wm = context + .getSystemService(Context.WINDOW_SERVICE) as WindowManager + val outMetrics = DisplayMetrics() + wm.defaultDisplay.getMetrics(outMetrics) + return outMetrics.heightPixels + } + + /** + * 获得状态栏的高度 + * + * @param context + * @return + */ + fun getStatusHeight(context: Context): Int { + + var statusHeight = -1 + try { + val clazz = Class.forName("com.android.internal.R\$dimen") + val `object` = clazz.newInstance() + val height = Integer.parseInt(clazz.getField("status_bar_height") + .get(`object`).toString()) + statusHeight = context.resources.getDimensionPixelSize(height) + } catch (e: Exception) { + e.printStackTrace() + } + + return statusHeight + } + + /** + * 获取当前屏幕截图,包含状态栏 + * + * @param activity + * @return + */ + fun snapShotWithStatusBar(activity: Activity): Bitmap? { + val view = activity.window.decorView + view.isDrawingCacheEnabled = true + view.buildDrawingCache() + val bmp = view.drawingCache + val width = getScreenWidth(activity) + val height = getScreenHeight(activity) + var bp: Bitmap? = null + bp = Bitmap.createBitmap(bmp, 0, 0, width, height) + view.destroyDrawingCache() + return bp + + } + + /** + * 获取当前屏幕截图,不包含状态栏 + * + * @param activity + * @return + */ + fun snapShotWithoutStatusBar(activity: Activity): Bitmap? { + val view = activity.window.decorView + view.isDrawingCacheEnabled = true + view.buildDrawingCache() + val bmp = view.drawingCache + val frame = Rect() + activity.window.decorView.getWindowVisibleDisplayFrame(frame) + val statusBarHeight = frame.top + + val width = getScreenWidth(activity) + val height = getScreenHeight(activity) + var bp: Bitmap? = null + bp = Bitmap.createBitmap(bmp, 0, statusBarHeight, width, height - statusBarHeight) + view.destroyDrawingCache() + return bp + + } + + /** + * dp转换成px + * + * @param context Context + * @param dp dp + * @return px值 + */ + fun dp2px(context: Context, dp: Float): Int { + val scale = context.resources.displayMetrics.density + return (dp * scale + 0.5f).toInt() + } + + fun px2sp(context: Context, pxValue: Float): Int { + val fontScale = context.resources.displayMetrics.scaledDensity + return (pxValue / fontScale + 0.5f).toInt() + } + + //转换dip为px + fun dp2px(context: Context, dip: Int): Int { + val scale = context.resources.displayMetrics.density + return (dip * scale + 0.5f * if (dip >= 0) 1 else -1).toInt() + } + } +} diff --git a/basemodule/src/main/java/com/android/base/utils/SystemUtil.kt b/basemodule/src/main/java/com/android/base/utils/SystemUtil.kt new file mode 100644 index 0000000..0ed63ab --- /dev/null +++ b/basemodule/src/main/java/com/android/base/utils/SystemUtil.kt @@ -0,0 +1,61 @@ +package com.android.base.utils + +import android.app.Activity +import android.content.Context +import android.telephony.TelephonyManager + +import java.util.Locale + + +object SystemUtil { + + /** + * 获取当前手机系统语言。 + * + * @return 返回当前系统语言。例如:当前设置的是“中文-中国”,则返回“zh-CN” + */ + val systemLanguage: String + get() = Locale.getDefault().language + + /** + * 获取当前系统上的语言列表(Locale列表) + * + * @return 语言列表 + */ + val systemLanguageList: Array + get() = Locale.getAvailableLocales() + + /** + * 获取当前手机系统版本号 + * + * @return 系统版本号 + */ + val systemVersion: String + get() = android.os.Build.VERSION.RELEASE + + /** + * 获取手机型号 + * + * @return 手机型号 + */ + val systemModel: String + get() = android.os.Build.MODEL + + /** + * 获取手机厂商 + * + * @return 手机厂商 + */ + val deviceBrand: String + get() = android.os.Build.BRAND + + /** + * 获取手机IMEI(需要“android.permission.READ_PHONE_STATE”权限) + * + * @return 手机IMEI + */ + fun getIMEI(ctx: Context): String? { + val tm = ctx.getSystemService(Activity.TELEPHONY_SERVICE) as TelephonyManager + return tm?.deviceId + } +} diff --git a/basemodule/src/main/java/com/android/base/utils/Utils.kt b/basemodule/src/main/java/com/android/base/utils/Utils.kt new file mode 100644 index 0000000..1f42d52 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/utils/Utils.kt @@ -0,0 +1,260 @@ +package com.android.base.utils + +import android.app.ActivityManager +import android.content.ClipboardManager +import android.content.Context +import android.os.Looper +import android.text.TextUtils +import android.view.Gravity +import android.widget.Toast + + +import com.android.base.application.CustomApplication + +import java.security.MessageDigest +import java.security.NoSuchAlgorithmException +import java.text.NumberFormat +import java.text.SimpleDateFormat +import java.util.Date +import java.util.Locale +import java.util.regex.Pattern + +/** + * Created by gaolei on 2018/6/15. + */ + +object Utils { + + var intPattern = Pattern.compile("^[-+]?[0-9]") + var decimalPattern = Pattern.compile("^[-+]?[0-9]+(\\.[0-9]+)?$") + + /** + * md5 加密 + * + * @param str 要加密的字符串 + * @return + */ + fun md5Encode(text: String): String { + try { + //获取md5加密对象 + val instance: MessageDigest = MessageDigest.getInstance("MD5") + //对字符串加密,返回字节数组 + val digest:ByteArray = instance.digest(text.toByteArray()) + var sb : StringBuffer = StringBuffer() + for (b in digest) { + //获取低八位有效值 + var i :Int = b.toInt() and 0xff + //将整数转化为16进制 + var hexString = Integer.toHexString(i) + if (hexString.length < 2) { + //如果是一位的话,补0 + hexString = "0" + hexString + } + sb.append(hexString) + } + return sb.toString() + + } catch (e: NoSuchAlgorithmException) { + e.printStackTrace() + } + + return "" + } + + + fun getTopActivity(context: Context): String { + val manager = context.getSystemService(Context.ACTIVITY_SERVICE) as ActivityManager + val taskInfo = manager.getRunningTasks(1)[0] + val componentInfo = taskInfo.topActivity + var shortClassName = componentInfo.shortClassName //类名 + // String className = info.topActivity.getClassName(); //完整类名 + // String packageName = info.topActivity.getPackageName(); + val index = shortClassName.lastIndexOf(".") + shortClassName = shortClassName.substring(index + 1) + return shortClassName + } + + //判断手机号是否正确 + fun isMobileNO(mobile: String): Boolean { + + val telRegex = "[1][23456789]\\d{9}"//"[1]"代表第1位为数字1,"[35678]"代表第二位可以为23456789中的一个,"\\d{9}"代表后面是可以是0~9的数字,有9位。 + + if (TextUtils.isEmpty(mobile)) { + showToast("请输入正确的手机号", true) + return false + } else if (!mobile.matches(telRegex.toRegex())) { + showToast("请输入正确的手机号", true) + return false + } + return true + + } + + /** + * 判断是否是银行卡号 + * + * @param cardId + * @return + */ + fun checkBankCard(cardId: String): Boolean { + val bit = getBankCardCheckCode(cardId + .substring(0, cardId.length - 1)) + return if (bit == 'N') { + false + } else cardId[cardId.length - 1] == bit + } + + private fun getBankCardCheckCode(nonCheckCodeCardId: String?): Char { + if (nonCheckCodeCardId == null + || nonCheckCodeCardId.trim { it <= ' ' }.length == 0 + || !nonCheckCodeCardId.matches("//d+".toRegex())) { + // 如果传的不是数据返回N + return 'N' + } + val chs = nonCheckCodeCardId.trim { it <= ' ' }.toCharArray() + var luhmSum = 0 + var i = chs.size - 1 + var j = 0 + while (i >= 0) { + var k = chs[i] - '0' + if (j % 2 == 0) { + k *= 2 + k = k / 10 + k % 10 + } + luhmSum += k + i-- + j++ + } + return if (luhmSum % 10 == 0) '0' else (10 - luhmSum % 10 + '0'.toInt()).toChar() + } + + fun showToast(content: String, isShort: Boolean) { + try { + val toast = Toast.makeText(CustomApplication.context, content, if (isShort) Toast.LENGTH_SHORT else Toast.LENGTH_LONG) + toast.setGravity(Gravity.CENTER, 0, 0) + toast.show() + } catch (e: Exception) { + //解决在子线程中调用Toast的异常情况处理 + Looper.prepare() + Toast.makeText(CustomApplication.context, content, if (isShort) Toast.LENGTH_SHORT else Toast.LENGTH_LONG).show() + Looper.loop() + } + + } + + fun showToast(content: String, isShort: Boolean, gravity: Int) { + try { + val toast = Toast.makeText(CustomApplication.context, content, if (isShort) Toast.LENGTH_SHORT else Toast.LENGTH_LONG) + toast.setGravity(gravity, 0, 0) + toast.show() + } catch (e: Exception) { + //解决在子线程中调用Toast的异常情况处理 + Looper.prepare() + Toast.makeText(CustomApplication.context, content, if (isShort) Toast.LENGTH_SHORT else Toast.LENGTH_LONG).show() + Looper.loop() + } + + } + + fun ms2Date(_ms: Long): String { + val date = Date(_ms) + val format = SimpleDateFormat("yyyy-MM-dd HH:mm", Locale.getDefault()) + return format.format(date) + } + + fun keepDecimal2(value: Float): String { + val ddf1 = NumberFormat.getNumberInstance() + ddf1.maximumFractionDigits = 2 + return ddf1.format(value.toDouble()) + } + + fun copyTxt(context: Context, content: String) { + val cm = context.getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager + // 将文本内容放到系统剪贴板里。 + cm.text = content + Toast.makeText(context, "复制成功,可以分享给朋友们了", Toast.LENGTH_LONG).show() + } + + fun stringToInt(value: String): Int { + return Integer.parseInt(value.trim { it <= ' ' }) + } + + fun stringToDouble(value: String): Double { + return java.lang.Double.parseDouble(value.trim { it <= ' ' }) + } + + fun stringToFloat(value: String): Float { + return java.lang.Float.parseFloat(value.trim { it <= ' ' }) + } + + fun stringToDigit(value: String): Float { + + + if (intPattern.matcher(value).matches()) { + //数字 + return Integer.parseInt(value.trim { it <= ' ' }).toFloat() + } else if (decimalPattern.matcher(value).matches()) { + //小数 + return java.lang.Float.parseFloat(value.trim { it <= ' ' }) + } else { + //非数字 + showToast("数据格式转化出错", true) + } + return java.lang.Float.parseFloat(value.trim { it <= ' ' }) + } + + fun getVersionCode(context: Context): Int { + try { + val packageManager = context.packageManager + val packageInfo = packageManager.getPackageInfo( + context.packageName, 0) + return packageInfo.versionCode + } catch (e: Exception) { + e.printStackTrace() + } + + return 0 + } + + fun getVersionName(context: Context): String { + try { + val packageManager = context.packageManager + val packageInfo = packageManager.getPackageInfo( + context.packageName, 0) + return packageInfo.versionName + } catch (e: Exception) { + e.printStackTrace() + } + + return "" + } + + //假设传入的日期格式是yyyy-MM-dd HH:mm:ss, 也可以传入yyyy-MM-dd,如2018-1-1或者2018-01-01格式 + + fun isValidDate(strDate: String): Boolean { + val format = SimpleDateFormat("yyyy-MM-dd HH:mm:ss") + try { + // 设置lenient为false. 否则SimpleDateFormat会比较宽松地验证日期,比如2018-02-29会被接受,并转换成2018-03-01 + + format.isLenient = false + val date = format.parse(strDate) + + //判断传入的yyyy年-MM月-dd日 字符串是否为数字 + val sArray = strDate.split("-".toRegex()).dropLastWhile { it.isEmpty() }.toTypedArray() + for (s in sArray) { + val isNum = s.matches("[0-9]+".toRegex()) + //+表示1个或多个(如"3"或"225"),*表示0个或多个([0-9]*)(如""或"1"或"22"),?表示0个或1个([0-9]?)(如""或"7") + if (!isNum) { + return false + } + } + } catch (e: Exception) { + // e.printStackTrace(); + // 如果throw java.text.ParseException或者NullPointerException,就说明格式不对 + return false + } + + return true + } + +} diff --git a/basemodule/src/main/java/com/android/base/utils/account/UserUtil.kt b/basemodule/src/main/java/com/android/base/utils/account/UserUtil.kt new file mode 100644 index 0000000..3e08590 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/utils/account/UserUtil.kt @@ -0,0 +1,27 @@ +package com.android.base.utils.account + +import com.android.base.event.LoginEvent +import com.android.base.mmodel.RegisterLoginData + +import org.greenrobot.eventbus.EventBus + +object UserUtil { + + var isLogined = false + var userInfo: RegisterLoginData? = null + + fun gainUserInfo(): RegisterLoginData? { + return userInfo + } + + fun assignUserInfo(userInfo: RegisterLoginData?) { + UserUtil.userInfo = userInfo + if (userInfo != null) { + isLogined = true + } else + isLogined = false + val accountEvent = LoginEvent() + EventBus.getDefault().post(accountEvent) + + } +} diff --git a/basemodule/src/main/java/com/android/base/view/CircleImageView.kt b/basemodule/src/main/java/com/android/base/view/CircleImageView.kt new file mode 100644 index 0000000..2879897 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/view/CircleImageView.kt @@ -0,0 +1,61 @@ +package com.android.base.view + +import android.content.Context +import android.graphics.Bitmap +import android.graphics.BitmapShader +import android.graphics.Canvas +import android.graphics.Matrix +import android.graphics.Paint +import android.graphics.Shader +import android.graphics.drawable.BitmapDrawable +import android.util.AttributeSet +import androidx.appcompat.widget.AppCompatImageView + +/** + * 功能描述:一个简洁而高效的圆形ImageView + * + * @author (作者) edward(冯丰枫) + * @link http://www.jianshu.com/u/f7176d6d53d2 + * 创建时间: 2018/4/17 0017 + */ +class CircleImageView @JvmOverloads constructor(context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0) : AppCompatImageView(context, attrs, defStyleAttr) { + private var width: Float = 0.toFloat() + private var height: Float = 0.toFloat() + private var radius: Float = 0.toFloat() + private val paint: Paint + private val mmatrix: Matrix + + init { + paint = Paint() + paint.isAntiAlias = true //设置抗锯齿 + mmatrix = Matrix() //初始化缩放矩阵 + } + + /** + * 测量控件的宽高,并获取其内切圆的半径 + */ + override fun onMeasure(widthMeasureSpec: Int, heightMeasureSpec: Int) { + super.onMeasure(widthMeasureSpec, heightMeasureSpec) + width = measuredWidth.toFloat() + height = measuredHeight.toFloat() + radius = Math.min(width, height) / 2 + } + + override fun onDraw(canvas: Canvas) { + paint.shader = initBitmapShader()//将着色器设置给画笔 + canvas.drawCircle(width / 2, height / 2, radius, paint)//使用画笔在画布上画圆 + } + + /** + * 获取ImageView中资源图片的Bitmap,利用Bitmap初始化图片着色器,通过缩放矩阵将原资源图片缩放到铺满整个绘制区域,避免边界填充 + */ + private fun initBitmapShader(): BitmapShader? { + if (drawable == null) return null + val bitmap = (drawable as BitmapDrawable).bitmap + val bitmapShader = BitmapShader(bitmap, Shader.TileMode.CLAMP, Shader.TileMode.CLAMP) + val scale = Math.max(width / bitmap.width, height / bitmap.height) + mmatrix.setScale(scale, scale)//将图片宽高等比例缩放,避免拉伸 + bitmapShader.setLocalMatrix(mmatrix) + return bitmapShader + } +} diff --git a/basemodule/src/main/java/com/android/base/view/CustomProgressDialog.kt b/basemodule/src/main/java/com/android/base/view/CustomProgressDialog.kt new file mode 100644 index 0000000..7fb515e --- /dev/null +++ b/basemodule/src/main/java/com/android/base/view/CustomProgressDialog.kt @@ -0,0 +1,56 @@ +package com.android.base.view + +import android.app.Activity +import android.app.Dialog +import android.content.Context +import android.view.LayoutInflater +import android.view.View +import android.view.animation.AnimationUtils +import android.widget.ImageView +import android.widget.LinearLayout +import android.widget.TextView +import com.android.base.R + + +object CustomProgressDialog { + var loadingDialog: Dialog? = null + + fun createLoadingDialog(context: Context?): Dialog? { + if (context == null) return null + val inflater = LayoutInflater.from(context) + val v = inflater.inflate(R.layout.dialog_loading, null)// 得到加载view + val layout = v.findViewById(R.id.dialog_view) as LinearLayout// 加载布局 + // main.xml中的ImageView + val spaceshipImage = v.findViewById(R.id.img) as ImageView + val tipTextView = v.findViewById(R.id.tipTextView) as TextView// 提示文字 + // 加载动画 + val hyperspaceJumpAnimation = AnimationUtils.loadAnimation( + context, R.anim.anim_dialog_load) + // 使用ImageView显示动画 + spaceshipImage.startAnimation(hyperspaceJumpAnimation) + + loadingDialog = Dialog(context, R.style.loading_dialog)// 创建自定义样式dialog + + loadingDialog!!.setCancelable(true)// 不可以用“返回键”取消 + loadingDialog!!.setContentView(layout, LinearLayout.LayoutParams( + LinearLayout.LayoutParams.MATCH_PARENT, + LinearLayout.LayoutParams.MATCH_PARENT))// 设置布局 + return loadingDialog + + } + + fun show(activity: Activity?) { + if (loadingDialog != null) return + if (loadingDialog != null && loadingDialog!!.isShowing) return + loadingDialog = createLoadingDialog(activity) + loadingDialog!!.show()//显示 + } + + fun cancel() { + if (loadingDialog != null) { + loadingDialog!!.cancel() + loadingDialog = null + } + } +} + diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/Html5Webview.java b/basemodule/src/main/java/com/android/base/view/Html5Webview.java similarity index 50% rename from AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/Html5Webview.java rename to basemodule/src/main/java/com/android/base/view/Html5Webview.java index 4681b8c..88adbc6 100644 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/view/Html5Webview.java +++ b/basemodule/src/main/java/com/android/base/view/Html5Webview.java @@ -1,25 +1,15 @@ -package com.android.learn.base.view; +package com.android.base.view; import android.content.Context; import android.content.Intent; -import android.graphics.Bitmap; +import android.graphics.Color; import android.net.Uri; -import android.os.Build; -import android.os.Message; -import android.support.annotation.RequiresApi; -import android.text.TextUtils; import android.util.AttributeSet; import android.util.Log; import android.view.View; import android.view.ViewGroup; -import android.webkit.ConsoleMessage; -import android.webkit.JsPromptResult; -import android.webkit.JsResult; -import android.webkit.ValueCallback; import android.webkit.WebChromeClient; -import android.webkit.WebResourceError; import android.webkit.WebResourceRequest; -import android.webkit.WebResourceResponse; import android.webkit.WebSettings; import android.webkit.WebView; import android.webkit.WebViewClient; @@ -46,8 +36,8 @@ private void init() { //初始化进度条 progressView = new ProgressView(context); progressView.setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, dp2px(context, 3))); -// progressView.setColor(Color.BLUE); -// progressView.setProgress(10); + progressView.setColor(Color.parseColor("#79be37")); + progressView.setProgress(10); //把进度条加到Webview中 addView(progressView); //初始化设置 @@ -55,7 +45,6 @@ private void init() { setWebChromeClient(new MyWebCromeClient()); setWebViewClient(new MyWebviewClient()); } - private void initWebSettings() { WebSettings settings = getSettings(); //默认是false 设置true允许和js交互 @@ -78,8 +67,6 @@ private void initWebSettings() { final String dbPath = context.getApplicationContext().getDir("db", Context.MODE_PRIVATE).getPath(); settings.setDatabasePath(dbPath); } - - private class MyWebCromeClient extends WebChromeClient { @Override public void onProgressChanged(WebView view, int newProgress) { @@ -92,75 +79,21 @@ public void onProgressChanged(WebView view, int newProgress) { } super.onProgressChanged(view, newProgress); } - - @Override - public void onReceivedTitle(WebView view, String title) { - Log.e("TTT", "title is " + title); - super.onReceivedTitle(view, title); - } - - @Override - public boolean onJsAlert(WebView view, String url, String message, JsResult result) { - return super.onJsAlert(view, url, message, result); - } - - @Override - public boolean onConsoleMessage(ConsoleMessage consoleMessage) { - return super.onConsoleMessage(consoleMessage); - } - - @Override - public boolean onCreateWindow(WebView view, boolean isDialog, boolean isUserGesture, Message resultMsg) { - return super.onCreateWindow(view, isDialog, isUserGesture, resultMsg); - } - - @Override - public boolean onJsBeforeUnload(WebView view, String url, String message, JsResult result) { - return super.onJsBeforeUnload(view, url, message, result); - } - - @Override - public boolean onJsConfirm(WebView view, String url, String message, JsResult result) { - return super.onJsConfirm(view, url, message, result); - } - - @Override - public boolean onJsPrompt(WebView view, String url, String message, String defaultValue, JsPromptResult result) { - return super.onJsPrompt(view, url, message, defaultValue, result); - } - - @Override - public void onCloseWindow(WebView window) { - super.onCloseWindow(window); - } - - @Override - public boolean onShowFileChooser(WebView webView, ValueCallback filePathCallback, FileChooserParams fileChooserParams) { - return super.onShowFileChooser(webView, filePathCallback, fileChooserParams); - } } - private class MyWebviewClient extends WebViewClient { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { - Log.e("TTT", "shouldOverrideUrlLoading 0"); Uri uri = Uri.parse(url); String scheme = uri.getScheme(); - if (TextUtils.isEmpty(scheme)) return true; - if (scheme.equals("nativeapi")) { - //如定义nativeapi://showImg是用来查看大图,这里添加查看大图逻辑 - return true; - } else if (scheme.equals("http") || scheme.equals("https")) { - //处理http协议 - if (Uri.parse(url).getHost().equals("www.example.com")) { - // 内部网址,不拦截,用自己的webview加载 - return false; - } else { - //跳转外部浏览器 - Intent intent = new Intent(Intent.ACTION_VIEW, uri); + if (scheme.equals("http") || scheme.equals("https")) { + + } else { + //跳转外部浏览器 + Intent intent = new Intent(Intent.ACTION_VIEW, uri); + if (getContext().getPackageManager().queryIntentActivities(intent, 0).size() > 0) { context.startActivity(intent); - return true; } + return true; } return super.shouldOverrideUrlLoading(view, url); } @@ -170,41 +103,7 @@ public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request Log.e("TTT", "shouldOverrideUrlLoading 1"); return super.shouldOverrideUrlLoading(view, request); } - - - @Override - public WebResourceResponse shouldInterceptRequest(WebView view, String url) { - Log.e("TTT", "shouldInterceptRequest 0 url is " + url); - //回调发生在子线程中,不能直接进行UI操作 - return super.shouldInterceptRequest(view, url); - } - - @RequiresApi(api = Build.VERSION_CODES.LOLLIPOP) - @Override - public WebResourceResponse shouldInterceptRequest(WebView view, WebResourceRequest request) { - Log.e("TTT", "shouldInterceptRequest 1 request url is " + request.getUrl().toString()); - return super.shouldInterceptRequest(view, request); - } - - @Override - public void onPageStarted(WebView view, String url, Bitmap favicon) { - Log.e("TTT", "onPageStarted"); - super.onPageStarted(view, url, favicon); - } - - @Override - public void onPageFinished(WebView view, String url) { - Log.e("TTT", "onPageFinished"); - super.onPageFinished(view, url); - } - - @Override - public void onReceivedError(WebView view, WebResourceRequest request, WebResourceError error) { - Log.e("TTT", "onPageFinished"); - super.onReceivedError(view, request, error); - } } - /** * dp转换成px * @@ -216,4 +115,5 @@ private int dp2px(Context context, float dp) { final float scale = context.getResources().getDisplayMetrics().density; return (int) (dp * scale + 0.5f); } + } \ No newline at end of file diff --git a/basemodule/src/main/java/com/android/base/view/ProgressView.kt b/basemodule/src/main/java/com/android/base/view/ProgressView.kt new file mode 100644 index 0000000..299efbf --- /dev/null +++ b/basemodule/src/main/java/com/android/base/view/ProgressView.kt @@ -0,0 +1,59 @@ +package com.android.base.view + +import android.content.Context +import android.graphics.Canvas +import android.graphics.Color +import android.graphics.Paint +import android.util.AttributeSet +import android.view.View + +class ProgressView @JvmOverloads constructor(context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0) : View(context, attrs, defStyleAttr) { + private var mPaint: Paint? = null + private var mWidth: Int = 0 + private var mHeight: Int = 0 + private var progress: Int = 0//加载进度 + + init { + init() + } + + private fun init() { + //初始化画笔 + mPaint = Paint() + mPaint!!.isDither = true + mPaint!!.isAntiAlias = true + mPaint!!.strokeWidth = 5f + mPaint!!.color = Color.parseColor("#88b221") + } + + override fun onSizeChanged(w: Int, h: Int, ow: Int, oh: Int) { + mWidth = w + mHeight = h + super.onSizeChanged(w, h, ow, oh) + } + + + override fun onDraw(canvas: Canvas) { + canvas.drawRect(0f, 0f, (mWidth * progress / 100).toFloat(), mHeight.toFloat(), mPaint!!) + super.onDraw(canvas) + } + + /** + * 设置新进度 重新绘制 + * + * @param newProgress 新进度 + */ + fun setProgress(newProgress: Int) { + this.progress = newProgress + invalidate() + } + + /** + * 设置进度条颜色 + * + * @param color 色值 + */ + fun setColor(color: Int) { + mPaint!!.color = color + } +} diff --git a/basemodule/src/main/java/com/android/base/view/TitleView.kt b/basemodule/src/main/java/com/android/base/view/TitleView.kt new file mode 100644 index 0000000..cd8b243 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/view/TitleView.kt @@ -0,0 +1,29 @@ +package com.android.base.view + +import android.app.Activity +import android.content.Context +import android.util.AttributeSet +import android.view.LayoutInflater +import android.widget.FrameLayout +import android.widget.ImageView +import android.widget.TextView +import com.android.base.R + +class TitleView(context: Context, attrs: AttributeSet) : FrameLayout(context, attrs) { + + private val iv_back: ImageView + + private val title: TextView + + init { + LayoutInflater.from(context).inflate(R.layout.title_view, this) + iv_back = findViewById(R.id.iv_back) + title = findViewById(R.id.title) + iv_back.setOnClickListener { (getContext() as Activity).finish() } + } + + fun setTitleText(text: String) { + title.text = text + } + +} diff --git a/basemodule/src/main/java/com/android/base/view/colorfultab/ColorClipTabLayout.kt b/basemodule/src/main/java/com/android/base/view/colorfultab/ColorClipTabLayout.kt new file mode 100644 index 0000000..09d7a6f --- /dev/null +++ b/basemodule/src/main/java/com/android/base/view/colorfultab/ColorClipTabLayout.kt @@ -0,0 +1,216 @@ +package com.android.base.view.colorfultab + + +import android.content.Context +import android.graphics.Color +import android.util.AttributeSet +import android.util.Log +import android.view.ViewGroup +import android.widget.LinearLayout +import androidx.recyclerview.widget.RecyclerView.* +import androidx.viewpager.widget.ViewPager +import com.android.base.R +import com.google.android.material.tabs.TabLayout +import java.lang.ref.WeakReference + +/** + * Created by rookie on 2018/4/24. + */ + +class ColorClipTabLayout @JvmOverloads constructor( + context: Context, + attrs: AttributeSet? = null, + defStyleAttr: Int = 0 +) : TabLayout(context, attrs, defStyleAttr) { + + private var tabTextSize: Int = 0//每个tab字体大小 + private var tabSelectedTextColor: Int = 0//每个tab选中字体颜色 + private var tabTextColor: Int = 0//每个tab未选中颜色 + + //最后的选中位置 + private var lastSelectedTabPosition = INVALID_TAB_POS + + private var viewPager: ViewPager? = null//所绑定的viewpager + + private var colorClipTabLayoutOnPageChangeListener: ColorClipTabLayoutOnPageChangeListener? = + null + + init { + if (attrs != null) { + // Text colors/sizes come from the text appearance first + val ta = context.obtainStyledAttributes(attrs, R.styleable.ColorClipTabLayout) + //Tab字体大小 + tabTextSize = ta.getDimensionPixelSize(R.styleable.ColorClipTabLayout_text_size, 72) + //Tab文字颜色 + tabTextColor = ta.getColor( + R.styleable.ColorClipTabLayout_text_unselected_color, + Color.parseColor("#000000") + ) + tabSelectedTextColor = ta.getColor( + R.styleable.ColorClipTabLayout_text_selected_color, + Color.parseColor("#cc0000") + ) + ta.recycle() + } + } + + override fun addTab(tab: Tab, position: Int, setSelected: Boolean) { + //通过addTab的方式将colorClipView作为customView传入tab + val colorClipView = ColorClipView(context) + colorClipView.setProgress((if (setSelected) 1 else 0).toFloat()) + colorClipView.setText(tab.text!!.toString() + "") + colorClipView.setTextSize(tabTextSize) + colorClipView.tag = position + colorClipView.setTextSelectedColor(tabSelectedTextColor) + colorClipView.setTextUnselectColor(tabTextColor) + val layoutParams = LinearLayout.LayoutParams( + LinearLayout.LayoutParams.WRAP_CONTENT, + LinearLayout.LayoutParams.WRAP_CONTENT + ) + colorClipView.layoutParams = layoutParams + tab.customView = colorClipView + super.addTab(tab, position, setSelected) + val selectedTabPosition = selectedTabPosition + if (selectedTabPosition == INVALID_TAB_POS && position == 0 || selectedTabPosition == position) { + setSelectedView(position) + } + + setTabWidth(position, colorClipView) + } + + override fun setupWithViewPager(viewPager: ViewPager?, autoRefresh: Boolean) { + super.setupWithViewPager(viewPager, autoRefresh) + try { + if (viewPager != null) + this.viewPager = viewPager + //通过反射找到mPageChangeListener + // Field field = TabLayout.class.getDeclaredField("colorClipTabLayoutOnPageChangeListener"); + // field.setAccessible(true); + // TabLayoutOnPageChangeListener listener = (TabLayoutOnPageChangeListener) field.get(this); + // if (listener != null) { + // //删除自带监听 + // viewPager.removeOnPageChangeListener(listener); + colorClipTabLayoutOnPageChangeListener = ColorClipTabLayoutOnPageChangeListener(this) + colorClipTabLayoutOnPageChangeListener!!.reset() + viewPager!!.addOnPageChangeListener(colorClipTabLayoutOnPageChangeListener!!) + // } + } catch (e: Exception) { + e.printStackTrace() + } + + } + + override fun removeAllTabs() { + lastSelectedTabPosition = selectedTabPosition + super.removeAllTabs() + } + + override fun getSelectedTabPosition(): Int { + val selectedTabPositionAtParent = super.getSelectedTabPosition() + return if (selectedTabPositionAtParent == INVALID_TAB_POS) + lastSelectedTabPosition + else + selectedTabPositionAtParent + } + + fun setLastSelectedTabPosition(lastSelectedTabPosition: Int) { + var lastSelectedTabPosition = lastSelectedTabPosition + lastSelectedTabPosition = lastSelectedTabPosition + } + + fun setCurrentItem(position: Int) { + if (viewPager != null) + viewPager!!.currentItem = position + } + + private fun setTabWidth(position: Int, colorClipView: ColorClipView) { + val slidingTabStrip = getChildAt(0) as ViewGroup + val tabView = slidingTabStrip.getChildAt(position) as ViewGroup + val params = LinearLayout.LayoutParams( + ViewGroup.LayoutParams.WRAP_CONTENT, + ViewGroup.LayoutParams.MATCH_PARENT + ) + + val w = MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED) + val h = MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED) + //手动测量一下 + colorClipView.measure(w, h) + params.width = colorClipView.measuredWidth + tabView.paddingLeft + tabView.paddingRight + //设置tabView的宽度 + tabView.layoutParams = params + } + + private fun setSelectedView(position: Int) { + val tabCount = tabCount + if (position < tabCount) { + for (i in 0 until tabCount) { + getColorClipView(i)!!.setProgress((if (i == position) 1 else 0).toFloat()) + } + } + } + + fun tabScrolled(position: Int, positionOffset: Float) { + if (positionOffset == 0.0f) { + return + } + val currentTrackView = getColorClipView(position) + val nextTrackView = getColorClipView(position + 1) + currentTrackView!!.setDirection(1) + currentTrackView.setProgress(1.0f - positionOffset) + nextTrackView!!.setDirection(0) + nextTrackView.setProgress(positionOffset) + } + + private fun getColorClipView(position: Int): ColorClipView? { + return getTabAt(position)!!.customView as ColorClipView? + } + + class ColorClipTabLayoutOnPageChangeListener(tabLayout: TabLayout) : + TabLayout.TabLayoutOnPageChangeListener(tabLayout) { + + private val mTabLayoutRef: WeakReference + private var mPreviousScrollState: Int = 0 + private var mScrollState: Int = 0 + + init { + mTabLayoutRef = WeakReference(tabLayout as ColorClipTabLayout) + } + + override fun onPageScrollStateChanged(state: Int) { + mPreviousScrollState = mScrollState + mScrollState = state + } + + override fun onPageScrolled( + position: Int, + positionOffset: Float, + positionOffsetPixels: Int + ) { + super.onPageScrolled(position, positionOffset, positionOffsetPixels) + val tabLayout = mTabLayoutRef.get() ?: return + val updateText = + mScrollState != SCROLL_STATE_SETTLING || mPreviousScrollState == SCROLL_STATE_DRAGGING + if (updateText) { + Log.e("tag1", "positionOffset$positionOffset") + tabLayout.tabScrolled(position, positionOffset) + } + } + + override fun onPageSelected(position: Int) { + super.onPageSelected(position) + val tabLayout = mTabLayoutRef.get() + mPreviousScrollState = SCROLL_STATE_SETTLING + tabLayout!!.setSelectedView(position) + } + + internal fun reset() { + mScrollState = SCROLL_STATE_IDLE + mPreviousScrollState = mScrollState + } + + } + + companion object { + private val INVALID_TAB_POS = -1 + } +} diff --git a/basemodule/src/main/java/com/android/base/view/colorfultab/ColorClipTestView.kt b/basemodule/src/main/java/com/android/base/view/colorfultab/ColorClipTestView.kt new file mode 100644 index 0000000..5c05563 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/view/colorfultab/ColorClipTestView.kt @@ -0,0 +1,69 @@ +package com.android.base.view.colorfultab + +import android.content.Context +import android.graphics.Canvas +import android.graphics.Color +import android.graphics.Paint +import android.util.AttributeSet +import android.util.Log +import android.view.MotionEvent +import android.view.View + +class ColorClipTestView : View { + internal var per = 0f + internal var x = 0f + internal var y = 0f + + constructor(context: Context) : super(context) {} + + constructor(context: Context, attrs: AttributeSet?) : super(context, attrs) {} + + constructor(context: Context, attrs: AttributeSet?, defStyleAttr: Int) : super(context, attrs, defStyleAttr) {} + + override fun onDraw(canvas: Canvas) { + super.onDraw(canvas) + + val paint = Paint() + paint.isAntiAlias = true + paint.strokeWidth = 80f + paint.style = Paint.Style.FILL + + paint.textSize = 68f + canvas.save() + canvas.drawText("我是火车王", 200f, 200f, paint) + canvas.restore() + paint.color = Color.RED + canvas.clipRect(200f, 0f, 320 * per, 400f) + Log.e("per", "per:$per") + canvas.drawText("我是火车王", 200f, 200f, paint) + } + + override fun onTouchEvent(event: MotionEvent): Boolean { + when (event.action) { + MotionEvent.ACTION_DOWN -> { + Log.e("log", "ACTION_DOWN") + x = event.rawX + y = event.rawY + return true + } + MotionEvent.ACTION_MOVE -> { + Log.e("log", "ACTION_MOVE") + val currentX = event.rawX + val currentY = event.rawY + if (currentY > y) { + per = (currentY - y) / y * 10 + } + invalidate() + return true + } + } + return super.onTouchEvent(event) + } + + private fun move(canvas: Canvas, paint: Paint, per: Float) { + canvas.save() + val right = 300 * per + + canvas.restore() + } +} diff --git a/basemodule/src/main/java/com/android/base/view/colorfultab/ColorClipView.kt b/basemodule/src/main/java/com/android/base/view/colorfultab/ColorClipView.kt new file mode 100644 index 0000000..620bbaa --- /dev/null +++ b/basemodule/src/main/java/com/android/base/view/colorfultab/ColorClipView.kt @@ -0,0 +1,228 @@ +package com.android.base.view.colorfultab + +import android.content.Context +import android.graphics.Canvas +import android.graphics.Paint +import android.graphics.Rect +import android.graphics.Typeface +import android.util.AttributeSet +import android.util.Log +import android.util.TypedValue +import android.view.View +import com.android.base.R + + +/** + * Created by rookie on 2018/4/24. + */ + +class ColorClipView @JvmOverloads constructor(context: Context, attrs: AttributeSet? = null) : View(context, attrs) { + + private val paint: Paint//画笔 + private var text: String? = "我是不哦车网"//绘制的文本 + private var textSize = sp2px(18f)//文本字体大小 + + private var textWidth: Int = 0//文本的宽度 + private var textHeight: Int = 0//文本的高度 + + private var textUnselectColor = R.color.colorPrimary//文本未选中字体颜色 + private var textSelectedColor = R.color.colorAccent//文本选中颜色 + + private var mDirection = DIRECTION_LEFT + + private val textRect = Rect()//文本显示区域 + + private var startX: Int = 0//X轴开始绘制的坐标 + + private var startY: Int = 0//y轴开始绘制的坐标 + + private var baseLineY: Int = 0//基线的位置 + + private var progress: Float = 0.toFloat() + + init { + + //初始化各个属性包括画笔 + + paint = Paint(Paint.ANTI_ALIAS_FLAG) + val ta = context.obtainStyledAttributes(attrs, + R.styleable.ColorClipView) + text = ta.getString(R.styleable.ColorClipView_text) + textSize = ta.getDimensionPixelSize(R.styleable.ColorClipView_text_size, textSize) + // textUnselectColor = ta.getColor(R.styleable.ColorClipView_text_unselected_color, textUnselectColor); + // textSelectedColor = ta.getColor(R.styleable.ColorClipView_text_selected_color, textSelectedColor); + mDirection = ta.getInt(R.styleable.ColorClipView_direction, mDirection) + progress = ta.getFloat(R.styleable.ColorClipView_progress, 0f) + ta.recycle()//用完就得收! + paint.textSize = textSize.toFloat() + } + + private fun sp2px(dpVal: Float): Int { + return TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP, + dpVal, resources.displayMetrics).toInt() + } + + fun setProgress(progress: Float) { + this.progress = progress + if (progress.toInt() == 1) { + paint.setTypeface(Typeface.DEFAULT_BOLD); + }else { + paint.setTypeface(Typeface.DEFAULT); + } + invalidate() + } + + fun setTextSize(mTextSize: Int) { + this.textHeight = mTextSize + paint.textSize = mTextSize.toFloat() + requestLayout() + invalidate() + } + + fun setText(text: String) { + this.text = text + requestLayout() + invalidate() + } + + fun setDirection(direction: Int) { + this.mDirection = direction + invalidate() + } + + fun setTextUnselectColor(unselectColor: Int) { + this.textUnselectColor = unselectColor + invalidate() + } + + fun setTextSelectedColor(selectedColor: Int) { + this.textSelectedColor = selectedColor + invalidate() + } + + override fun onMeasure(widthMeasureSpec: Int, heightMeasureSpec: Int) { + measureText()//测量文本的长宽 + + val width = measureWidth(widthMeasureSpec)//通过模式的不同来测量出实际的宽度 + val height = measureHeight(heightMeasureSpec)//通过模式的不同来测量出实际的高度 + setMeasuredDimension(width, height) + Log.e("tag", "七点" + (measuredWidth - paddingRight - paddingLeft)) + startX = (measuredWidth - paddingRight - paddingLeft) / 2 - textWidth / 2 + startY = textHeight - paddingBottom - paddingTop + } + + private fun measureHeight(heightMeasureSpec: Int): Int { + val mode = View.MeasureSpec.getMode(heightMeasureSpec) + val size = View.MeasureSpec.getSize(heightMeasureSpec) + var realSize = 0 + when (mode) { + View.MeasureSpec.EXACTLY -> realSize = size + View.MeasureSpec.AT_MOST, View.MeasureSpec.UNSPECIFIED -> { + realSize = textHeight + realSize += paddingTop + paddingBottom + } + } + realSize = if (mode == View.MeasureSpec.AT_MOST) Math.min(realSize, size) else realSize + return realSize + } + + private fun measureWidth(widthMeasureSpec: Int): Int { + val mode = View.MeasureSpec.getMode(widthMeasureSpec)//通过widthMeasureSpec拿到Mode + val size = View.MeasureSpec.getSize(widthMeasureSpec)//同理 + var realSize = 0//最后返回的值 + when (mode) { + View.MeasureSpec.EXACTLY//精确模式下直接用给出的宽度 + -> realSize = size + View.MeasureSpec.AT_MOST//最大模式 + , View.MeasureSpec.UNSPECIFIED//未指定模式 + -> { + //这两种情况下,用测量出的宽度加上左右padding + realSize = textWidth + realSize = realSize + paddingLeft + paddingRight + } + } + //如果mode为最大模式,不应该大于父类传入的值,所以取最小 + realSize = if (mode == View.MeasureSpec.AT_MOST) Math.min(realSize, size) else realSize + return realSize + } + + private fun measureText() { + textWidth = paint.measureText(text).toInt()//测量文本宽度 + Log.d("tag", "measureText=" + paint.measureText(text)) + + + //直接通过获得文本显示范围,再获得高度 + //参数里,text 是要测量的文字 + //start 和 end 分别是文字的起始和结束位置,textRect 是存储文字显示范围的对象,方法在测算完成之后会把结果写进 textRect。 + paint.getTextBounds(text, 0, text!!.length, textRect) + textHeight = textRect.height() + + //通过文本的descent线与top线的距离来测量文本高度,这是其中一种测量方法 + val fm = paint.fontMetrics + textHeight = Math.ceil((fm.descent - fm.top).toDouble()).toInt() + + baseLineY = ((textHeight / 2).toFloat() - (fm.bottom - fm.top) / 2 - fm.top).toInt() + } + + override fun onDraw(canvas: Canvas) { + super.onDraw(canvas) + //OK~开始绘制咯~ + //首先先判断方向是左还是右呢? 是上还是下呢? 真期待.... + Log.e("tag", "OnDraw") + if (mDirection == DIRECTION_LEFT) { + //绘制朝左的选中文字 + drawHorizontalText(canvas, textSelectedColor, startX, + (startX + progress * textWidth).toInt()) + //绘制朝左的未选中文字 + drawHorizontalText(canvas, textUnselectColor, (startX + progress * textWidth).toInt(), startX + textWidth) + } else if (mDirection == DIRECTION_RIGHT) { + //绘制朝右的选中文字 + drawHorizontalText(canvas, textSelectedColor, + (startX + (1 - progress) * textWidth).toInt(), startX + textWidth) + //绘制朝右的未选中文字 + drawHorizontalText(canvas, textUnselectColor, startX, + (startX + (1 - progress) * textWidth).toInt()) + } else if (mDirection == DIRECTION_TOP) { + //绘制朝上的选中文字 + drawVerticalText(canvas, textSelectedColor, startY, + (startY + progress * textHeight).toInt()) + //绘制朝上的未选中文字 + drawVerticalText(canvas, textUnselectColor, (startY + progress * textHeight).toInt(), startY + textHeight) + } else { + //绘制朝下的选中文字 + drawVerticalText(canvas, textSelectedColor, + (startY + (1 - progress) * textHeight).toInt(), + startY + textHeight) + //绘制朝下的未选中文字 + drawVerticalText(canvas, textUnselectColor, startY, + (startY + (1 - progress) * textHeight).toInt()) + } + + } + + private fun drawHorizontalText(canvas: Canvas, color: Int, startX: Int, endX: Int) { + paint.color = color + canvas.save() + Log.e("tag", "getMeasuredHeight$measuredHeight") + canvas.clipRect(startX, 0, endX, measuredHeight) + canvas.drawText(text!!, this.startX.toFloat(), baseLineY.toFloat(), paint) + canvas.restore() + } + + private fun drawVerticalText(canvas: Canvas, color: Int, startY: Int, endY: Int) { + paint.color = color + canvas.save() + canvas.clipRect(0, startY, measuredWidth, endY)// left, top, + canvas.drawText(text!!, this.startX.toFloat(), + this.startY.toFloat(), paint) + canvas.restore() + } + + companion object { + + private val DIRECTION_LEFT = 0 + private val DIRECTION_RIGHT = 1 + private val DIRECTION_TOP = 2 + private val DIRECTION_BOTTOM = 3 + } +} diff --git a/basemodule/src/main/java/com/android/base/xskin/CustomTitleView.kt b/basemodule/src/main/java/com/android/base/xskin/CustomTitleView.kt new file mode 100644 index 0000000..b4796d1 --- /dev/null +++ b/basemodule/src/main/java/com/android/base/xskin/CustomTitleView.kt @@ -0,0 +1,126 @@ +package com.android.base.xskin + + +import android.content.Context +import android.graphics.Canvas +import android.graphics.Color +import android.graphics.Paint +import android.graphics.Rect +import android.util.AttributeSet +import android.util.TypedValue +import android.view.View +import androidx.annotation.ColorInt +import com.android.base.R + +/** + * Created by Windy on 2018/1/10. + */ + +class CustomTitleView +/** + * 获得我自定义的样式属性 + * + * @param context + * @param attrs + * @param defStyle + */ +@JvmOverloads constructor(context: Context, attrs: AttributeSet? = null, defStyle: Int = 0) : View(context, attrs, defStyle) { + /** + * 文本 + */ + private var mTitleText: String? = null + /** + * 文本的颜色 + */ + private var mTitleTextColor: Int = 0 + /** + * 文本的大小 + */ + private var mTitleTextSize: Int = 0 + + /** + * 绘制时控制文本绘制的范围 + */ + private val mBound: Rect + private val mPaint: Paint + private val mBounds = Rect() + + init { + /** + * 获得我们所定义的自定义样式属性 + */ + val a = context.theme.obtainStyledAttributes(attrs, R.styleable.CustomTitleView, defStyle, 0) + val n = a.indexCount + for (i in 0 until n) { + val attr = a.getIndex(i) + + if (attr == R.styleable.CustomTitleView_titleText) { + mTitleText = a.getString(attr) + } + if (attr == R.styleable.CustomTitleView_titleTextColor) { + // 默认颜色设置为黑色 + mTitleTextColor = a.getColor(attr, Color.BLACK) + } + if (attr == R.styleable.CustomTitleView_titleTextSize) { + // 默认设置为16sp,TypeValue也可以把sp转化为px + mTitleTextSize = a.getDimensionPixelSize(attr, TypedValue.applyDimension( + TypedValue.COMPLEX_UNIT_SP, 16f, resources.displayMetrics).toInt()) + + } + + } + a.recycle() + + /** + * 获得绘制文本的宽和高 + */ + mPaint = Paint() + mPaint.textSize = mTitleTextSize.toFloat() + // mPaint.setColor(mTitleTextColor); + mBound = Rect() + mPaint.getTextBounds(mTitleText, 0, mTitleText!!.length, mBound) + + } + + fun setTextColor(@ColorInt color: Int) { + mTitleTextColor = color + invalidate() + } + + override fun onDraw(canvas: Canvas) { + mPaint.color = Color.YELLOW + canvas.drawRect(0f, 0f, measuredWidth.toFloat(), measuredHeight.toFloat(), mPaint) + + mPaint.color = mTitleTextColor + canvas.drawText(mTitleText!!, (width / 2 - mBound.width() / 2).toFloat(), (height / 2 + mBound.height() / 2).toFloat(), mPaint) + } + + override fun onMeasure(widthMeasureSpec: Int, heightMeasureSpec: Int) { + val widthMode = View.MeasureSpec.getMode(widthMeasureSpec) + val widthSize = View.MeasureSpec.getSize(widthMeasureSpec) + val heightMode = View.MeasureSpec.getMode(heightMeasureSpec) + val heightSize = View.MeasureSpec.getSize(heightMeasureSpec) + val width: Int + val height: Int + if (widthMode == View.MeasureSpec.EXACTLY) { + width = widthSize + } else { + mPaint.textSize = mTitleTextSize.toFloat() + mPaint.getTextBounds(mTitleText, 0, mTitleText!!.length, mBounds) + val textWidth = mBounds.width().toFloat() + val desired = (paddingLeft.toFloat() + textWidth + paddingRight.toFloat()).toInt() + width = desired + } + + if (heightMode == View.MeasureSpec.EXACTLY) { + height = heightSize + } else { + mPaint.textSize = mTitleTextSize.toFloat() + mPaint.getTextBounds(mTitleText, 0, mTitleText!!.length, mBounds) + val textHeight = mBounds.height().toFloat() + val desired = (paddingTop.toFloat() + textHeight + paddingBottom.toFloat()).toInt() + height = desired + } + setMeasuredDimension(width, height) + } +} diff --git a/basemodule/src/main/java/com/android/base/xskin/CustomViewTextColorResDeployer.kt b/basemodule/src/main/java/com/android/base/xskin/CustomViewTextColorResDeployer.kt new file mode 100644 index 0000000..030881b --- /dev/null +++ b/basemodule/src/main/java/com/android/base/xskin/CustomViewTextColorResDeployer.kt @@ -0,0 +1,24 @@ +package com.android.base.xskin + +import android.view.View + +import com.wind.me.xskinloader.entity.SkinAttr +import com.wind.me.xskinloader.entity.SkinConfig +import com.wind.me.xskinloader.skinInterface.ISkinResDeployer +import com.wind.me.xskinloader.skinInterface.ISkinResourceManager + +/** + * Created by Windy on 2018/1/10. + */ + +class CustomViewTextColorResDeployer : ISkinResDeployer { + + override fun deploy(view: View, skinAttr: SkinAttr, resource: ISkinResourceManager) { + if (view !is CustomTitleView) { + return + } + if (SkinConfig.RES_TYPE_NAME_COLOR == skinAttr.attrValueTypeName) { + view.setTextColor(resource.getColor(skinAttr.attrValueRefId)) + } + } +} diff --git a/basemodule/src/main/java/com/android/base/xskin/ExtraAttrRegister.kt b/basemodule/src/main/java/com/android/base/xskin/ExtraAttrRegister.kt new file mode 100644 index 0000000..654609b --- /dev/null +++ b/basemodule/src/main/java/com/android/base/xskin/ExtraAttrRegister.kt @@ -0,0 +1,27 @@ +package com.android.base.xskin + +import com.wind.me.xskinloader.SkinResDeployerFactory +import com.wind.me.xskinloader.StyleParserFactory + + +/** + * 扩展换肤属性和style中的换肤属性 + * Created by Windy on 2018/2/9. + */ + +object ExtraAttrRegister { + + val CUSTIOM_VIEW_TEXT_COLOR = "titleTextColor" + + init { + //增加自定义控件的自定义属性的换肤支持 + SkinResDeployerFactory.registerDeployer(CUSTIOM_VIEW_TEXT_COLOR, CustomViewTextColorResDeployer()) + + //增加xml里的style中指定的View background属性换肤 + StyleParserFactory.addStyleParser(ViewBackgroundStyleParser()) + } + + //仅仅为了使类的静态方法被加载而已 + fun init() {} + +} diff --git a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/xskin/ViewBackgroundStyleParser.java b/basemodule/src/main/java/com/android/base/xskin/ViewBackgroundStyleParser.java similarity index 98% rename from AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/xskin/ViewBackgroundStyleParser.java rename to basemodule/src/main/java/com/android/base/xskin/ViewBackgroundStyleParser.java index 0287486..03e2c75 100644 --- a/AndroidLearnProject/basemodule/src/main/java/com/android/learn/base/xskin/ViewBackgroundStyleParser.java +++ b/basemodule/src/main/java/com/android/base/xskin/ViewBackgroundStyleParser.java @@ -1,4 +1,4 @@ -package com.android.learn.base.xskin; +package com.android.base.xskin; import android.content.Context; import android.content.res.TypedArray; diff --git a/basemodule/src/main/java/com/android/speechdemo/bean/TalkBackChineseWordVo.kt b/basemodule/src/main/java/com/android/speechdemo/bean/TalkBackChineseWordVo.kt new file mode 100644 index 0000000..0dceb07 --- /dev/null +++ b/basemodule/src/main/java/com/android/speechdemo/bean/TalkBackChineseWordVo.kt @@ -0,0 +1,17 @@ +package com.android.speechdemo.bean + +import java.io.Serializable + +/** + * Created by LiuXing on 2016/10/27. + */ +class TalkBackChineseWordVo : Serializable { + /** + * word,单字 + */ + var w: String? = null + /** + * score,分数 + */ + var sc: Int = 0 +} diff --git a/basemodule/src/main/java/com/android/speechdemo/bean/TalkBackVo.kt b/basemodule/src/main/java/com/android/speechdemo/bean/TalkBackVo.kt new file mode 100644 index 0000000..76acdd5 --- /dev/null +++ b/basemodule/src/main/java/com/android/speechdemo/bean/TalkBackVo.kt @@ -0,0 +1,29 @@ +package com.android.speechdemo.bean + +import java.io.Serializable + +/** + * Created by LiuXing on 2016/10/27. + */ +class TalkBackVo : Serializable { + /** + * sentence,第几句 + */ + var sn: Int = 0 + /** + * last sentence,是否最后一句 + */ + var isLs: Boolean = false + /** + * begin,开始 + */ + var bg: Int = 0 + /** + * end,结束 + */ + var ed: Int = 0 + /** + * words,词 + */ + var ws: List? = null +} diff --git a/basemodule/src/main/java/com/android/speechdemo/bean/TalkBackWordsVo.kt b/basemodule/src/main/java/com/android/speechdemo/bean/TalkBackWordsVo.kt new file mode 100644 index 0000000..2813774 --- /dev/null +++ b/basemodule/src/main/java/com/android/speechdemo/bean/TalkBackWordsVo.kt @@ -0,0 +1,18 @@ +package com.android.speechdemo.bean + +import java.io.Serializable + +/** + * Created by LiuXing on 2016/10/27. + */ +class TalkBackWordsVo : Serializable { + /** + * begin,开始 + */ + var bg: Int = 0 + /** + * chinese word,中文分词 + */ + var cw: List? = null +} + diff --git a/basemodule/src/main/java/com/android/speechdemo/xf/JsonParser.kt b/basemodule/src/main/java/com/android/speechdemo/xf/JsonParser.kt new file mode 100644 index 0000000..5c9f70f --- /dev/null +++ b/basemodule/src/main/java/com/android/speechdemo/xf/JsonParser.kt @@ -0,0 +1,117 @@ +package com.android.speechdemo.xf + +import org.json.JSONArray +import org.json.JSONObject +import org.json.JSONTokener + +/** + * Json结果解析类 + */ +object JsonParser { + + fun parseIatResult(json: String): String { + val ret = StringBuffer() + try { + val tokener = JSONTokener(json) + val joResult = JSONObject(tokener) + + val words = joResult.getJSONArray("ws") + for (i in 0 until words.length()) { + // 转写结果词,默认使用第一个结果 + val items = words.getJSONObject(i).getJSONArray("cw") + val obj = items.getJSONObject(0) + ret.append(obj.getString("w")) + // 如果需要多候选结果,解析数组其他字段 + // for(int j = 0; j < items.length(); j++) + // { + // JSONObject obj = items.getJSONObject(j); + // ret.append(obj.getString("w")); + // } + } + } catch (e: Exception) { + e.printStackTrace() + } + + return ret.toString() + } + + fun parseGrammarResult(json: String): String { + val ret = StringBuffer() + try { + val tokener = JSONTokener(json) + val joResult = JSONObject(tokener) + + val words = joResult.getJSONArray("ws") + for (i in 0 until words.length()) { + val items = words.getJSONObject(i).getJSONArray("cw") + for (j in 0 until items.length()) { + val obj = items.getJSONObject(j) + if (obj.getString("w").contains("nomatch")) { + ret.append("没有匹配结果.") + return ret.toString() + } + ret.append("【结果】" + obj.getString("w")) + ret.append("【置信度】" + obj.getInt("sc")) + ret.append("\n") + } + } + } catch (e: Exception) { + e.printStackTrace() + ret.append("没有匹配结果.") + } + + return ret.toString() + } + + fun parseLocalGrammarResult(json: String): String { + val ret = StringBuffer() + try { + val tokener = JSONTokener(json) + val joResult = JSONObject(tokener) + + val words = joResult.getJSONArray("ws") + for (i in 0 until words.length()) { + val items = words.getJSONObject(i).getJSONArray("cw") + for (j in 0 until items.length()) { + val obj = items.getJSONObject(j) + if (obj.getString("w").contains("nomatch")) { + ret.append("没有匹配结果.") + return ret.toString() + } + ret.append("【结果】" + obj.getString("w")) + ret.append("\n") + } + } + ret.append("【置信度】" + joResult.optInt("sc")) + + } catch (e: Exception) { + e.printStackTrace() + ret.append("没有匹配结果.") + } + + return ret.toString() + } + + fun parseTransResult(json: String, key: String): String { + val ret = StringBuffer() + try { + val tokener = JSONTokener(json) + val joResult = JSONObject(tokener) + val errorCode = joResult.optString("ret") + if (errorCode != "0") { + return joResult.optString("errmsg") + } + val transResult = joResult.optJSONObject("trans_result") + ret.append(transResult.optString(key)) + /*JSONArray words = joResult.getJSONArray("results"); + for (int i = 0; i < words.length(); i++) { + JSONObject obj = words.getJSONObject(i); + ret.append(obj.getString(key)); + }*/ + } catch (e: Exception) { + e.printStackTrace() + } + + return ret.toString() + } +} diff --git a/basemodule/src/main/java/com/android/speechdemo/xf/SettingTextWatcher.kt b/basemodule/src/main/java/com/android/speechdemo/xf/SettingTextWatcher.kt new file mode 100644 index 0000000..60c236c --- /dev/null +++ b/basemodule/src/main/java/com/android/speechdemo/xf/SettingTextWatcher.kt @@ -0,0 +1,62 @@ +package com.android.speechdemo.xf + +import android.content.Context +import android.preference.EditTextPreference +import android.text.Editable +import android.text.TextUtils +import android.text.TextWatcher +import android.widget.Toast + +import java.util.regex.Pattern + +/** + * 输入框输入范围控制 + */ +class SettingTextWatcher(private val mContext: Context, private val mEditTextPreference: EditTextPreference, internal var minValue: Int//最小值 + , internal var maxValue: Int//最大值 +) : TextWatcher { + private var editStart: Int = 0 + private var editCount: Int = 0 + + override fun onTextChanged(s: CharSequence, start: Int, before: Int, count: Int) { + // Log.e("demo", "onTextChanged start:"+start+" count:"+count+" before:"+before); + editStart = start + editCount = count + } + + override fun beforeTextChanged(s: CharSequence, start: Int, count: Int, after: Int) { + // Log.e("demo", "beforeTextChanged start:"+start+" count:"+count+" after:"+after); + } + + override fun afterTextChanged(s: Editable) { + if (TextUtils.isEmpty(s)) { + return + } + val content = s.toString() + // Log.e("demo", "content:"+content); + if (isNumeric(content)) { + val num = Integer.parseInt(content) + if (num > maxValue || num < minValue) { + s.delete(editStart, editStart + editCount) + mEditTextPreference.editText.text = s + Toast.makeText(mContext, "超出有效值范围", Toast.LENGTH_SHORT).show() + } + } else { + s.delete(editStart, editStart + editCount) + mEditTextPreference.editText.text = s + Toast.makeText(mContext, "只能输入数字哦", Toast.LENGTH_SHORT).show() + } + } + + companion object { + + /** + * 正则表达式-判断是否为数字 + */ + fun isNumeric(str: String): Boolean { + val pattern = Pattern.compile("[0-9]*") + return pattern.matcher(str).matches() + } + } + +} diff --git a/AndroidLearnProject/basemodule/src/main/jniLibs/arm64-v8a/libmsc.so b/basemodule/src/main/jniLibs/arm64-v8a/libmsc.so similarity index 100% rename from AndroidLearnProject/basemodule/src/main/jniLibs/arm64-v8a/libmsc.so rename to basemodule/src/main/jniLibs/arm64-v8a/libmsc.so diff --git a/AndroidLearnProject/basemodule/src/main/jniLibs/armeabi-v7a/libmsc.so b/basemodule/src/main/jniLibs/armeabi-v7a/libmsc.so similarity index 100% rename from AndroidLearnProject/basemodule/src/main/jniLibs/armeabi-v7a/libmsc.so rename to basemodule/src/main/jniLibs/armeabi-v7a/libmsc.so diff --git a/AndroidLearnProject/basemodule/src/main/res/anim/activity_close_enter.xml b/basemodule/src/main/res/anim/activity_close_enter.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/anim/activity_close_enter.xml rename to basemodule/src/main/res/anim/activity_close_enter.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/anim/activity_close_exit.xml b/basemodule/src/main/res/anim/activity_close_exit.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/anim/activity_close_exit.xml rename to basemodule/src/main/res/anim/activity_close_exit.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/anim/activity_in.xml b/basemodule/src/main/res/anim/activity_in.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/anim/activity_in.xml rename to basemodule/src/main/res/anim/activity_in.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/anim/activity_open_enter.xml b/basemodule/src/main/res/anim/activity_open_enter.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/anim/activity_open_enter.xml rename to basemodule/src/main/res/anim/activity_open_enter.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/anim/activity_open_exit.xml b/basemodule/src/main/res/anim/activity_open_exit.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/anim/activity_open_exit.xml rename to basemodule/src/main/res/anim/activity_open_exit.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/anim/activity_out.xml b/basemodule/src/main/res/anim/activity_out.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/anim/activity_out.xml rename to basemodule/src/main/res/anim/activity_out.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/anim/anim_dialog_load.xml b/basemodule/src/main/res/anim/anim_dialog_load.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/anim/anim_dialog_load.xml rename to basemodule/src/main/res/anim/anim_dialog_load.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/anim/slide_left_in.xml b/basemodule/src/main/res/anim/slide_left_in.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/anim/slide_left_in.xml rename to basemodule/src/main/res/anim/slide_left_in.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/anim/slide_left_out.xml b/basemodule/src/main/res/anim/slide_left_out.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/anim/slide_left_out.xml rename to basemodule/src/main/res/anim/slide_left_out.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/anim/slide_right_in.xml b/basemodule/src/main/res/anim/slide_right_in.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/anim/slide_right_in.xml rename to basemodule/src/main/res/anim/slide_right_in.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/anim/slide_right_out.xml b/basemodule/src/main/res/anim/slide_right_out.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/anim/slide_right_out.xml rename to basemodule/src/main/res/anim/slide_right_out.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/color/selector_tab_text.xml b/basemodule/src/main/res/color/selector_tab_text.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/color/selector_tab_text.xml rename to basemodule/src/main/res/color/selector_tab_text.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/add_todo.png b/basemodule/src/main/res/drawable-xxhdpi/add_todo.png old mode 100755 new mode 100644 similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/add_todo.png rename to basemodule/src/main/res/drawable-xxhdpi/add_todo.png diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/back_gray.png b/basemodule/src/main/res/drawable-xxhdpi/back_gray.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/back_gray.png rename to basemodule/src/main/res/drawable-xxhdpi/back_gray.png diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/chatfrom_bg_normal.9.png b/basemodule/src/main/res/drawable-xxhdpi/chatfrom_bg_normal.9.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/chatfrom_bg_normal.9.png rename to basemodule/src/main/res/drawable-xxhdpi/chatfrom_bg_normal.9.png diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/chatto_bg_normal.9.png b/basemodule/src/main/res/drawable-xxhdpi/chatto_bg_normal.9.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/chatto_bg_normal.9.png rename to basemodule/src/main/res/drawable-xxhdpi/chatto_bg_normal.9.png diff --git a/AndroidLearnProject/app/src/main/res/drawable-xhdpi/customactivityoncrash_error_image.png b/basemodule/src/main/res/drawable-xxhdpi/customactivityoncrash_error_image.png similarity index 100% rename from AndroidLearnProject/app/src/main/res/drawable-xhdpi/customactivityoncrash_error_image.png rename to basemodule/src/main/res/drawable-xxhdpi/customactivityoncrash_error_image.png diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/date.png b/basemodule/src/main/res/drawable-xxhdpi/date.png old mode 100755 new mode 100644 similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/date.png rename to basemodule/src/main/res/drawable-xxhdpi/date.png diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/default_page_network.png b/basemodule/src/main/res/drawable-xxhdpi/default_page_network.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/default_page_network.png rename to basemodule/src/main/res/drawable-xxhdpi/default_page_network.png diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/delete_todo.png b/basemodule/src/main/res/drawable-xxhdpi/delete_todo.png old mode 100755 new mode 100644 similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/delete_todo.png rename to basemodule/src/main/res/drawable-xxhdpi/delete_todo.png diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/ic_launcher.png b/basemodule/src/main/res/drawable-xxhdpi/ic_launcher.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/ic_launcher.png rename to basemodule/src/main/res/drawable-xxhdpi/ic_launcher.png diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/ic_launcher_round.png b/basemodule/src/main/res/drawable-xxhdpi/ic_launcher_round.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/ic_launcher_round.png rename to basemodule/src/main/res/drawable-xxhdpi/ic_launcher_round.png diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_back.png b/basemodule/src/main/res/drawable-xxhdpi/icon_back.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_back.png rename to basemodule/src/main/res/drawable-xxhdpi/icon_back.png diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_collect_select.png b/basemodule/src/main/res/drawable-xxhdpi/icon_collect_select.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_collect_select.png rename to basemodule/src/main/res/drawable-xxhdpi/icon_collect_select.png diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_collect_unselect.png b/basemodule/src/main/res/drawable-xxhdpi/icon_collect_unselect.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_collect_unselect.png rename to basemodule/src/main/res/drawable-xxhdpi/icon_collect_unselect.png diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_done.png b/basemodule/src/main/res/drawable-xxhdpi/icon_done.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_done.png rename to basemodule/src/main/res/drawable-xxhdpi/icon_done.png diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_font_switch.png b/basemodule/src/main/res/drawable-xxhdpi/icon_font_switch.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_font_switch.png rename to basemodule/src/main/res/drawable-xxhdpi/icon_font_switch.png diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_help_feedback.png b/basemodule/src/main/res/drawable-xxhdpi/icon_help_feedback.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_help_feedback.png rename to basemodule/src/main/res/drawable-xxhdpi/icon_help_feedback.png diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_language_switch.png b/basemodule/src/main/res/drawable-xxhdpi/icon_language_switch.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_language_switch.png rename to basemodule/src/main/res/drawable-xxhdpi/icon_language_switch.png diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_my_logout.png b/basemodule/src/main/res/drawable-xxhdpi/icon_my_logout.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_my_logout.png rename to basemodule/src/main/res/drawable-xxhdpi/icon_my_logout.png diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_night_mode.png b/basemodule/src/main/res/drawable-xxhdpi/icon_night_mode.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_night_mode.png rename to basemodule/src/main/res/drawable-xxhdpi/icon_night_mode.png diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_search.png b/basemodule/src/main/res/drawable-xxhdpi/icon_search.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_search.png rename to basemodule/src/main/res/drawable-xxhdpi/icon_search.png diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_setting.png b/basemodule/src/main/res/drawable-xxhdpi/icon_setting.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_setting.png rename to basemodule/src/main/res/drawable-xxhdpi/icon_setting.png diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_share.png b/basemodule/src/main/res/drawable-xxhdpi/icon_share.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_share.png rename to basemodule/src/main/res/drawable-xxhdpi/icon_share.png diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_speech.png b/basemodule/src/main/res/drawable-xxhdpi/icon_speech.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_speech.png rename to basemodule/src/main/res/drawable-xxhdpi/icon_speech.png diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_time.png b/basemodule/src/main/res/drawable-xxhdpi/icon_time.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_time.png rename to basemodule/src/main/res/drawable-xxhdpi/icon_time.png diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_todo.png b/basemodule/src/main/res/drawable-xxhdpi/icon_todo.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_todo.png rename to basemodule/src/main/res/drawable-xxhdpi/icon_todo.png diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_todo_list.png b/basemodule/src/main/res/drawable-xxhdpi/icon_todo_list.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_todo_list.png rename to basemodule/src/main/res/drawable-xxhdpi/icon_todo_list.png diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_update.png b/basemodule/src/main/res/drawable-xxhdpi/icon_update.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/icon_update.png rename to basemodule/src/main/res/drawable-xxhdpi/icon_update.png diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/progress_dialog_icon.png b/basemodule/src/main/res/drawable-xxhdpi/progress_dialog_icon.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/progress_dialog_icon.png rename to basemodule/src/main/res/drawable-xxhdpi/progress_dialog_icon.png diff --git a/AndroidLearnProject/app/src/main/res/mipmap-xhdpi/splash4.jpg b/basemodule/src/main/res/drawable-xxhdpi/splash.jpg similarity index 100% rename from AndroidLearnProject/app/src/main/res/mipmap-xhdpi/splash4.jpg rename to basemodule/src/main/res/drawable-xxhdpi/splash.jpg diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/user_default_photo.png b/basemodule/src/main/res/drawable-xxhdpi/user_default_photo.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxhdpi/user_default_photo.png rename to basemodule/src/main/res/drawable-xxhdpi/user_default_photo.png diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable-xxxhdpi/progress_dialog_icon.png b/basemodule/src/main/res/drawable-xxxhdpi/progress_dialog_icon.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable-xxxhdpi/progress_dialog_icon.png rename to basemodule/src/main/res/drawable-xxxhdpi/progress_dialog_icon.png diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable/bg_tag.xml b/basemodule/src/main/res/drawable/bg_tag.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable/bg_tag.xml rename to basemodule/src/main/res/drawable/bg_tag.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable/bt_refresh_selector.xml b/basemodule/src/main/res/drawable/bt_refresh_selector.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable/bt_refresh_selector.xml rename to basemodule/src/main/res/drawable/bt_refresh_selector.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable/btn_bg_select.xml b/basemodule/src/main/res/drawable/btn_bg_select.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable/btn_bg_select.xml rename to basemodule/src/main/res/drawable/btn_bg_select.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable/btn_bg_selector.xml b/basemodule/src/main/res/drawable/btn_bg_selector.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable/btn_bg_selector.xml rename to basemodule/src/main/res/drawable/btn_bg_selector.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable/btn_bg_unselect.xml b/basemodule/src/main/res/drawable/btn_bg_unselect.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable/btn_bg_unselect.xml rename to basemodule/src/main/res/drawable/btn_bg_unselect.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable/button_corner_bg2.xml b/basemodule/src/main/res/drawable/button_corner_bg2.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable/button_corner_bg2.xml rename to basemodule/src/main/res/drawable/button_corner_bg2.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable/code_edit_bg.xml b/basemodule/src/main/res/drawable/code_edit_bg.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable/code_edit_bg.xml rename to basemodule/src/main/res/drawable/code_edit_bg.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable/common_bg_loading.xml b/basemodule/src/main/res/drawable/common_bg_loading.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable/common_bg_loading.xml rename to basemodule/src/main/res/drawable/common_bg_loading.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable/et_search_bg.xml b/basemodule/src/main/res/drawable/et_search_bg.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable/et_search_bg.xml rename to basemodule/src/main/res/drawable/et_search_bg.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable/ic_launcher_background.xml b/basemodule/src/main/res/drawable/ic_launcher_background.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable/ic_launcher_background.xml rename to basemodule/src/main/res/drawable/ic_launcher_background.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable/nav_item_color_state.xml b/basemodule/src/main/res/drawable/nav_item_color_state.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable/nav_item_color_state.xml rename to basemodule/src/main/res/drawable/nav_item_color_state.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable/selected_radius.xml b/basemodule/src/main/res/drawable/selected_radius.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable/selected_radius.xml rename to basemodule/src/main/res/drawable/selected_radius.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable/setting_item_selector.xml b/basemodule/src/main/res/drawable/setting_item_selector.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable/setting_item_selector.xml rename to basemodule/src/main/res/drawable/setting_item_selector.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable/setting_rectangle_state_normal.xml b/basemodule/src/main/res/drawable/setting_rectangle_state_normal.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable/setting_rectangle_state_normal.xml rename to basemodule/src/main/res/drawable/setting_rectangle_state_normal.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable/setting_rectangle_state_press.xml b/basemodule/src/main/res/drawable/setting_rectangle_state_press.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable/setting_rectangle_state_press.xml rename to basemodule/src/main/res/drawable/setting_rectangle_state_press.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable/shape_stroke_state_normal.xml b/basemodule/src/main/res/drawable/shape_stroke_state_normal.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable/shape_stroke_state_normal.xml rename to basemodule/src/main/res/drawable/shape_stroke_state_normal.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable/shape_stroke_state_press.xml b/basemodule/src/main/res/drawable/shape_stroke_state_press.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable/shape_stroke_state_press.xml rename to basemodule/src/main/res/drawable/shape_stroke_state_press.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/drawable/unselected_radius.xml b/basemodule/src/main/res/drawable/unselected_radius.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/drawable/unselected_radius.xml rename to basemodule/src/main/res/drawable/unselected_radius.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/layout/activity_language.xml b/basemodule/src/main/res/layout/activity_language.xml similarity index 92% rename from AndroidLearnProject/basemodule/src/main/res/layout/activity_language.xml rename to basemodule/src/main/res/layout/activity_language.xml index ced51cf..35a2885 100644 --- a/AndroidLearnProject/basemodule/src/main/res/layout/activity_language.xml +++ b/basemodule/src/main/res/layout/activity_language.xml @@ -7,7 +7,7 @@ android:orientation="vertical" skin:enable="true"> - @@ -25,7 +25,7 @@ android:text="@string/language_follow_system" skin:enable="true" /> - - - - diff --git a/AndroidLearnProject/basemodule/src/main/res/mipmap-xhdpi/ic_launcher.png b/basemodule/src/main/res/mipmap-xhdpi/ic_launcher.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/mipmap-xhdpi/ic_launcher.png rename to basemodule/src/main/res/mipmap-xhdpi/ic_launcher.png diff --git a/AndroidLearnProject/basemodule/src/main/res/mipmap-xhdpi/ic_launcher_round.png b/basemodule/src/main/res/mipmap-xhdpi/ic_launcher_round.png similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/mipmap-xhdpi/ic_launcher_round.png rename to basemodule/src/main/res/mipmap-xhdpi/ic_launcher_round.png diff --git a/AndroidLearnProject/basemodule/src/main/res/values-en/strings.xml b/basemodule/src/main/res/values-en/strings.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/values-en/strings.xml rename to basemodule/src/main/res/values-en/strings.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/values-night/colors_night.xml b/basemodule/src/main/res/values-night/colors_night.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/values-night/colors_night.xml rename to basemodule/src/main/res/values-night/colors_night.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/values-cn/strings.xml b/basemodule/src/main/res/values-zh/strings.xml similarity index 98% rename from AndroidLearnProject/basemodule/src/main/res/values-cn/strings.xml rename to basemodule/src/main/res/values-zh/strings.xml index ddb534e..1872ac8 100644 --- a/AndroidLearnProject/basemodule/src/main/res/values-cn/strings.xml +++ b/basemodule/src/main/res/values-zh/strings.xml @@ -1,5 +1,5 @@ - + 我的 知识点 首页 @@ -52,7 +52,7 @@ 简体中文 English 跳过 - 欢迎来到 学Android + 欢迎来到 学安卓 再按一次退出程序 请输入搜索关键字 保存 diff --git a/AndroidLearnProject/basemodule/src/main/res/values/attrs.xml b/basemodule/src/main/res/values/attrs.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/values/attrs.xml rename to basemodule/src/main/res/values/attrs.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/values/colors.xml b/basemodule/src/main/res/values/colors.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/values/colors.xml rename to basemodule/src/main/res/values/colors.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/values/dimens.xml b/basemodule/src/main/res/values/dimens.xml similarity index 100% rename from AndroidLearnProject/basemodule/src/main/res/values/dimens.xml rename to basemodule/src/main/res/values/dimens.xml diff --git a/AndroidLearnProject/basemodule/src/main/res/values/strings.xml b/basemodule/src/main/res/values/strings.xml similarity index 86% rename from AndroidLearnProject/basemodule/src/main/res/values/strings.xml rename to basemodule/src/main/res/values/strings.xml index 7eecb38..1d56747 100644 --- a/AndroidLearnProject/basemodule/src/main/res/values/strings.xml +++ b/basemodule/src/main/res/values/strings.xml @@ -52,7 +52,7 @@ 简体中文 English 跳过 - 欢迎来到 学Android + 欢迎来到 学安卓 再按一次退出程序 请输入搜索关键字 保存 @@ -69,15 +69,14 @@ 你还没有完成事项 没搜索到相应内容 - - 程序出错了,抱歉给您带来不便\n为了尽快解决此问题,您可以点击错误详情,并复制错误代码或截图,发邮件反馈到技术支持邮箱:gaoleiandroid@163.com - 重启 - 关闭 - 错误详情 - 错误详情 - 关闭 - 复制 - 已复制 - 错误信息 + 程序出错了,抱歉给您带来不便\n为了尽快解决此问题,您可以点击错误详情,并复制错误代码或截图,发邮件反馈到技术支持邮箱:gaoleiandroid@163.com + 重启 + 关闭 + 错误详情 + 错误详情 + 关闭 + 复制 + 已复制 + 错误信息 diff --git a/AndroidLearnProject/basemodule/src/main/res/values/styles.xml b/basemodule/src/main/res/values/styles.xml similarity index 91% rename from AndroidLearnProject/basemodule/src/main/res/values/styles.xml rename to basemodule/src/main/res/values/styles.xml index 46bed87..bdd72e0 100644 --- a/AndroidLearnProject/basemodule/src/main/res/values/styles.xml +++ b/basemodule/src/main/res/values/styles.xml @@ -3,10 +3,11 @@ @@ -18,26 +19,20 @@ @android:color/transparent false - - - - - diff --git a/AndroidLearnProject/basemodule/src/test/java/com/gaolei/basemodule/ExampleUnitTest.java b/basemodule/src/test/java/com/gaolei/basemodule/ExampleUnitTest.java similarity index 100% rename from AndroidLearnProject/basemodule/src/test/java/com/gaolei/basemodule/ExampleUnitTest.java rename to basemodule/src/test/java/com/gaolei/basemodule/ExampleUnitTest.java diff --git a/AndroidLearnProject/build.gradle b/build.gradle similarity index 61% rename from AndroidLearnProject/build.gradle rename to build.gradle index aee8516..53dcd5e 100644 --- a/AndroidLearnProject/build.gradle +++ b/build.gradle @@ -1,19 +1,20 @@ // Top-level build file where you can add configuration options common to all sub-projects/modules. apply from: 'config.gradle' buildscript { - + ext.kotlin_version = '1.3.50' repositories { google() jcenter() + mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:3.0.1' - - // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files - classpath 'org.greenrobot:greendao-gradle-plugin:3.2.2' - classpath 'com.jakewharton:butterknife-gradle-plugin:8.4.0' + classpath 'com.android.tools.build:gradle:4.1.2' + classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" + + classpath 'org.greenrobot:greendao-gradle-plugin:3.3.0' + classpath 'com.jakewharton:butterknife-gradle-plugin:10.2.1' } } @@ -22,6 +23,7 @@ allprojects { repositories { google() jcenter() + mavenCentral() maven { url "https://jitpack.io" } } } diff --git a/config.gradle b/config.gradle new file mode 100644 index 0000000..4e11b3f --- /dev/null +++ b/config.gradle @@ -0,0 +1,46 @@ +ext { + + compileSdkVersion = 28 + buildToolsVersion = '28.0.2' + minSdkVersion = 19 + targetSdkVersion = 28 + + androidx = '1.0.0' + design = '1.0.0' + constraint_layout = '1.1.3' + cardview = '1.0.0' + + okhttp3 = '3.10.0' + retrofit = '2.4.0' + retrofit_converter_gson = '2.0.2' + + butterknife = '10.2.1' + butterknife_compiler = '10.2.1' + + glide = '4.11.0' + glide_compiler = '4.11.0' + + banner = '1.4.10' + + rxjava = '2.1.1' + rxandroid = '2.0.1' + adapter_rxjava2 = '2.3.0' + + event_bus = '3.1.1' + eventbus_annotation_processor = '3.1.1' + + BaseRecyclerViewAdapterHelper = '2.9.30' + customactivityoncrash = '2.2.0' + PersistentCookieJar = 'v1.0.1' + umeng_common = '1.5.0' + umeng_analytics = '7.5.0' + SmartRefreshLayout = '1.0.5' + infinitecycleviewpager = '1.0.2' + SVGAPlayer_Android = '2.4.7' + flowlayout = '1.0.1' + greendao = '3.3.0' + + bga_swipebacklayout = '1.2.0' + blockcanary_android = '1.5.0' + blockcanary_no_op = '1.5.0' +} \ No newline at end of file diff --git a/AndroidLearnProject/gradle.properties b/gradle.properties similarity index 93% rename from AndroidLearnProject/gradle.properties rename to gradle.properties index aac7c9b..9e6fce1 100644 --- a/AndroidLearnProject/gradle.properties +++ b/gradle.properties @@ -9,6 +9,8 @@ # Specifies the JVM arguments used for the daemon process. # The setting is particularly useful for tweaking memory settings. +android.enableJetifier=true +android.useAndroidX=true org.gradle.jvmargs=-Xmx1536m # When configured, Gradle will run in incubating parallel mode. diff --git a/AndroidLearnProject/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar similarity index 100% rename from AndroidLearnProject/gradle/wrapper/gradle-wrapper.jar rename to gradle/wrapper/gradle-wrapper.jar diff --git a/AndroidLearnProject/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties similarity index 93% rename from AndroidLearnProject/gradle/wrapper/gradle-wrapper.properties rename to gradle/wrapper/gradle-wrapper.properties index 4844b73..246132e 100644 --- a/AndroidLearnProject/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-all.zip diff --git a/AndroidLearnProject/gradlew b/gradlew old mode 100755 new mode 100644 similarity index 100% rename from AndroidLearnProject/gradlew rename to gradlew diff --git a/AndroidLearnProject/gradlew.bat b/gradlew.bat similarity index 100% rename from AndroidLearnProject/gradlew.bat rename to gradlew.bat diff --git a/AndroidLearnProject/json/online_params.json b/json/online_params.json similarity index 100% rename from AndroidLearnProject/json/online_params.json rename to json/online_params.json diff --git a/settings.gradle b/settings.gradle new file mode 100644 index 0000000..f5f5f4d --- /dev/null +++ b/settings.gradle @@ -0,0 +1 @@ +include ':app', ':basemodule'