Title: android native crashed,the phone record the google-breakpad report,but how to read it and find the reason?

Body:
07-07 05:37:54.712 24137 32072 F google-breakpad: -----BEGIN BREAKPAD MICRODUMP-----

07-07 05:37:54.713 24137 32072 F google-breakpad: V AndroidWebView:57.0.2987.132
07-07 05:37:54.713 24137 32072 F google-breakpad: O A arm64 04 aarch64 Xiaomi/gemini/gemini:7.0/NRD90M/7.5.4:user/release-keys
07-07 05:37:54.713 24137 32072 F google-breakpad: P browser
07-07 05:37:54.713 24137 32072 F google-breakpad: G OpenGL ES 3.2 V@145.0 (GIT@Ie4d56a70f3)|Qualcomm|Adreno (TM) 530
07-07 05:37:54.713 24137 32072 F google-breakpad: S 0 0000007F847C6FD0 0000007F847C6000 0000000000001000
07-07 05:37:54.713 24137 32072 F google-breakpad: S 0000007F847C6000 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
07-07 05:37:54.713 24137 32072 F google-breakpad: S 0000007F847C6180 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
07-07 05:37:54.714 24137 32072 F google-breakpad: S 0000007F847C6300 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
07-07 05:37:54.714 24137 32072 F google-breakpad: S 0000007F847C6480 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
07-07 05:37:54.714 24137 32072 F google-breakpad: S 0000007F847C6600 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
07-07 05:37:54.715 24137 32072 F google-breakpad: S 0000007F847C6780 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
07-07 05:37:54.715 24137 32072 F google-breakpad: S 0000007F847C6900 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
07-07 05:37:54.715 24137 32072 F google-breakpad: S 0000007F847C6A80 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
07-07 05:37:54.715 24137 32072 F google-breakpad: S 0000007F847C6C00 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
07-07 05:37:54.715 24137 32072 F google-breakpad: S 0000007F847C6D80 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
07-07 05:37:54.715 24137 32072 F google-breakpad: S 0000007F847C6F00 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
07-07 05:37:54.716 24137 32072 F google-breakpad: C 0600008000000000000400000000000000000000000000000000000000000000000000000000000000777C847F0000008900000000000000FFFFFFFFFFFF0000FFFFFFFFFFFFFFFF00506FA27F00000001000000000000000000000000000000487D0000000000000000000000000000D1000000000000008300000000000000DE0000000000000030146FA27F000000449F64A27F000000B8727C847F000000000400000000000000306FA27F000000E8667C4266BF68800000000000000000CB00000000000000FF03000000000000A34626987F000000E8667C4266BF68809A00000000000000010000000000000050707C847F000000E88768A27F000000D06F7C847F00000034C56BA27F000000000000201300000000000000000000000000000000000000FFFFFFFF0A505069643A093737350A5472616365725069643A09300A5569643A093130330100000000000000000010000000000000000000000000400000000000000000010410400104104001041040010410400100100000400000010010000040000053746174653A09532028736C6565706900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008080ADEB0000000000000000000000008180ADEB0000000000000000000000008280ADEB0000000000000000000000008380ADEB0000000000000000000000008480ADEB0000000000000000000000008580ADEB0000000000000000000000008680ADEB0000000000000000000000008780ADEB0000000000000000000000008880ADEB0000000000000000000000008980ADEB0000000000000000000000008A80ADEB0000000000000000000000008B80ADEB0000000000000000000000008C80ADEB0000000000000000000000008D80ADEB0000000000000000000000008E80ADEB00000000000000000000000001000000000000000000000000000000
07-07 05:37:54.716 24137 32072 F google-breakpad: M 0000005555555000 0000000000000000 0000000000004000 0A7071C7CFEB04622EC4016CE5F39ACD0 app_process64
07-07 05:37:54.717 24137 32072 F google-breakpad: M 000000007080F000 00000000005A2000 0000000000409000 000000000000000000000000000000000 boot.oat
07-07 05:37:54.717 24137 32072 F google-breakpad: M 00000000710BA000 00000000004A0000 0000000000316000 000000000000000000000000000000000 boot-core-libart.oat
07-07 05:37:54.717 24137 32072 F google-breakpad: M 0000000071443000 0000000000071000 0000000000058000 000000000000000000000000000000000 boot-conscrypt.oat
07-07 05:37:54.717 24137 32072 F google-breakpad: M 0000000071528000 000000000008B000 0000000000065000 000000000000000000000000000000000 boot-okhttp.oat
07-07 05:37:54.717 24137 32072 F google-breakpad: M 0000000071599000 000000000000A000 0000000000003000 000000000000000000000000000000000 boot-core-junit.oat
07-07 05:37:54.717 24137 32072 F google-breakpad: M 000000007170A000 000000000016C000 0000000000047000 000000000000000000000000000000000 boot-bouncycastle.oat
07-07 05:37:54.717 24137 32072 F google-breakpad: M 0000000071871000 000000000011E000 0000000000043000 000000000000000000000000000000000 boot-ext.oat
07-07 05:37:54.717 24137 32072 F google-breakpad: M 00000000731D8000 0000000001922000 00000000010EC000 000000000000000000000000000000000 boot-framework.oat
07-07 05:37:54.717 24137 32072 F google-breakpad: M 00000000745DB000 0000000000315000 0000000000221000 000000000000000000000000000000000 boot-telephony-common.oat
07-07 05:37:54.717 24137 32072 F google-breakpad: M 000000007482F000 0000000000031000 0000000000012000 000000000000000000000000000000000 boot-voip-common.oat
07-07 05:37:54.717 24137 32072 F google-breakpad: M 000000007486E000 000000000002B000 000000000001C000 000000000000000000000000000000000 boot-ims-common.oat
07-07 05:37:54.717 24137 32072 F google-breakpad: M 00000000749DC000 0000000000150000 0000000000025000 000000000000000000000000000000000 boot-apache-xml.oat
07-07 05:37:54.717 24137 32072 F google-breakpad: M 0000000074AB3000 00000000000B0000 0000000000076000 000000000000000000000000000000000 boot-org.apache.http.legacy.boot.oat
07-07 05:37:54.718 24137 32072 F google-breakpad: M 0000000074B2E000 0000000000003000 0000000000001000 000000000000000000000000000000000 boot-tcmiface.oat
07-07 05:37:54.718 24137 32072 F google-breakpad: M 0000000074B37000 0000000000006000 0000000000001000 000000000000000000000000000000000 boot-telephony-ext.oat
07-07 05:37:54.718 24137 32072 F google-breakpad: M 0000000074B4F000 0000000000015000 0000000000002000 000000000000000000000000000000000 boot-WfdCommon.oat
07-07 05:37:54.718 24137 32072 F google-breakpad: M 0000000074B56000 0000000000003000 0000000000001000 000000000000000000000000000000000 boot-oem-services.oat
07-07 05:37:54.718 24137 32072 F google-breakpad: M 0000000074B72000 0000000000019000 0000000000004000 000000000000000000000000000000000 boot-qcom.fmradio.oat
07-07 05:37:54.718 24137 32072 F google-breakpad: M 0000000074B80000 0000000000008000 0000000000001000 000000000000000000000000000000000 boot-qcmediaplayer.oat
07-07 05:37:54.718 24137 32072 F google-breakpad: M 0000000074D0B000 0000000000188000 0000000000034000 000000000000000000000000000000000 boot-miui.oat
07-07 05:37:54.718 24137 32072 F google-breakpad: M 0000000074E30000 00000000000EF000 0000000000018000 000000000000000000000000000000000 boot-miuisystem.oat
07-07 05:37:54.718 24137 32072 F google-breakpad: M 0000007F59D73000 0000000000000000 0000000000109000 52AF51F9D1FA7DAA561D021AB1C80CAB0 libblas.so
07-07 05:37:54.718 24137 32072 F google-breakpad: M 0000007F7E156000 00000000002BD000 0000000000270000 000000000000000000000000000000000 WebViewGoogle.odex
07-07 05:37:54.718 24137 32072 F google-breakpad: M 0000007F7EE90000 0000000000000000 000000000001A000 B933D3445554C18D3D0F3115FABE7F910 libunwind.so
07-07 05:37:54.718 24137 32072 F google-breakpad: M 0000007F7EF16000 0000000000000000 0000000000020000 A667DE9A1B9342A0792D87ECDC0797360 libutils.so
07-07 05:37:54.718 24137 32072 F google-breakpad: M 0000007F7EF39000 0000000000000000 000000000000F000 43464F532EA6BF6A58D978FD4B89F7F30 libbacktrace.so
07-07 05:37:54.718 24137 32072 F google-breakpad: M 0000007F7EF4B000 0000000000000000 000000000000B000 32A74BDBF89F698D7D686F948166F1D40 libbase.so
07-07 05:37:54.719 24137 32072 F google-breakpad: M 0000007F7EF4F000 0000000000000000 00000000000E1000 56BE84F5391B03807C422A7EB9D3B3AC0 libc++.so
07-07 05:37:54.719 24137 32072 F google-breakpad: M 0000007F7F03C000 0000000000000000 000000000019C000 85AAE0FD2EA1DF47E53124262555CD1E0 libhyphenate.so
07-07 05:37:54.719 24137 32072 F google-breakpad: M 0000007F7F209000 0000000000000000 0000000000025000 AFB06673527124FD46E557D9628A73A60 liblzma.so
07-07 05:37:54.719 24137 32072 F google-breakpad: M 0000007F7F234000 0000000000000000 000000000001D000 6175FF2427FC1EEDFDA84CDB775E012B0 libcutils.so
07-07 05:37:54.719 24137 32072 F google-breakpad: M 0000007F7F250000 0000000000000000 00000000000FB000 0D0D64DAAC71FD11EBE6E71CF006204C0 libsqlite.so
07-07 05:37:54.720 24137 32072 F google-breakpad: M 0000007F7F35B000 0000000000000000 0000000000813000 A1B425F02B77DFE5B1DB969A4921D5340 libhyphenate_av.so
07-07 05:37:54.720 24137 32072 F google-breakpad: M 0000007F8170B000 0000000000000000 00000000000BD000 1CEEDB3555807DDA367F25E43A95A04D0 libRSCpuRef.so
07-07 05:37:54.720 24137 32072 F google-breakpad: M 0000007F81B3F000 0000000000000000 0000000000033000 A10C7BBAD6051DD0F6B95DEFD7507A400 libRSDriver.so
07-07 05:37:54.720 24137 32072 F google-breakpad: M 0000007F83AAA000 0000000000000000 000000000000C000 25745D77F1A2FA7CAE5E9AF26BE6A68F0 eglSubDriverAndroid.so
07-07 05:37:54.721 24137 32072 F google-breakpad: M 0000007F8533F000 000000000086A000 000000000000A000 000000000000000000000000000000000 base.odex
07-07 05:37:54.721 24137 32072 F google-breakpad: M 0000007F87355000 0000000000000000 0000000002000000 000000000000000000000000000000000 dalvik-jit-code-cache (deleted)
07-07 05:37:54.721 24137 32072 F google-breakpad: M 0000007F8A355000 0000000000B72000 0000000003979000 1837DCE352E3B78F00C87296FEA41A990 libwebviewchromium.so
07-07 05:37:54.721 24137 32072 F google-breakpad: M 0000007F91CB9000 0000000000000000 0000000000002000 EB9549FD3C0235FD4CB9123FE538DB590 libwebviewchromium_loader.so
07-07 05:37:54.721 24137 32072 F google-breakpad: M 0000007F91DD0000 0000000000000000 0000000000020000 0C9EC5FB246E32DE3B9BBBB85304EDBC0 libcompiler_rt.so
07-07 05:37:54.721 24137 32072 F google-breakpad: M 0000007F91E5E000 0000000000000000 0000000000007000 F80D675E9F262326FEE4A24ED7321A560 libmemalloc.so
07-07 05:37:54.721 24137 32072 F google-breakpad: M 0000007F91E67000 0000000000000000 0000000000006000 6302517A1E98B73A5E101C744469913B0 gralloc.msm8996.so
07-07 05:37:54.721 24137 32072 F google-breakpad: M 0000007F91E69000 0000000000000000 0000000000013000 3F40A6680F0A92FDBBAA9BBE2313E9510 libqservice.so
07-07 05:37:54.721 24137 32072 F google-breakpad: M 0000007F91E83000 0000000000000000 0000000000005000 2B501C6E2B1643F2F1B693F446092B650 libqdutils.so
07-07 05:37:54.721 24137 32072 F google-breakpad: M 0000007F91E8A000 0000000000000000 0000000000002000 E2FCEF838A7D9BBE81994E43C43042C80 libqdMetaData.so
07-07 05:37:54.721 24137 32072 F google-breakpad: M 0000007F91E33000 0000000000000000 0000000000D8E000 3C176ACAD2486113657CAC560528A8790 libllvm-glnext.so
07-07 05:37:54.725 24137 32072 F google-breakpad: M 0000007F92BE2000 0000000000000000 00000000004C5000 43A8669D541255191676245C4EC45C020 libGLESv2_adreno.so
07-07 05:37:54.727 24137 32072 F google-breakpad: M 0000007F93343000 0000000000000000 000000000003A000 BDF15625689616C81B68AC72004A58540 libGLESv1_CM_adreno.so
07-07 05:37:54.728 24137 32072 F google-breakpad: M 0000007F9337E000 0000000000000000 0000000000014000 E0F344C9C89075AF0CAD4940643894730 libEGL_adreno.so
07-07 05:37:54.728 24137 32072 F google-breakpad: M 0000007F93395000 0000000000000000 0000000000018000 05BB3CA989D0F504DCF65A643BB9F2F60 libmiuinative.so
07-07 05:37:54.729 24137 32072 F google-breakpad: M 0000007F938AD000 0000000000000000 0000000000002000 36D97CBCF1B6E85B140E366626967F630 libkeystore-engine.so
07-07 05:37:54.729 24137 32072 F google-breakpad: M 0000007F938B1000 0000000000000000 0000000000020000 51B252DD45300621A0DE088306E557780 libsoftkeymasterdevice.so
07-07 05:37:54.729 24137 32072 F google-breakpad: M 0000007F938D1000 0000000000000000 000000000001E000 31499958466F177883B5EF5F85197E860 libkeystore_binder.so
07-07 05:37:54.729 24137 32072 F google-breakpad: M 0000007F938F4000 0000000000000000 000000000000F000 8191D2F9E326422B2FEAA427AA5177E60 libkeymaster_messages.so
07-07 05:37:54.729 24137 32072 F google-breakpad: M 0000007F93903000 0000000000000000 0000000000029000 0AA0D148632972AC6883691F96A749D50 libjavacrypto.so
07-07 05:37:54.729 24137 32072 F google-breakpad: M 0000007F9392E000 0000000000000000 000000000002E000 2AD9C6A1DED5952ADC2EF24BBB349F520 libkeymaster1.so
07-07 05:37:54.730 24137 32072 F google-breakpad: M 0000007F93960000 0000000000000000 0000000000007000 7DC8A64564A2358F7A7FECBC198E01460 libadreno_utils.so
07-07 05:37:54.730 24137 32072 F google-breakpad: M 0000007F939BC000 0000000000000000 000000000001F000 0B5CFCF41AF3470EB31F8032F8E6B9750 libmtp.so
07-07 05:37:54.730 24137 32072 F google-breakpad: M 0000007F939E0000 0000000000000000 0000000000010000 0AFC3DE4530669A5F382751127DD93700 libstagefright_amrnb_common.so
07-07 05:37:54.730 24137 32072 F google-breakpad: M 0000007F939E8000 0000000000000000 000000000002F000 FBE04B938B9EB4C2E372D70B304A983D0 libexif.so
07-07 05:37:54.730 24137 32072 F google-breakpad: M 0000007F93A22000 0000000000000000 000000000007C000 D8D5C0C10E38C36FECF13F9B227FB3100 libmedia_jni.so
07-07 05:37:54.730 24137 32072 F google-breakpad: M 0000007F93AC3000 0000000000000000 0000000000003000 957A01FA3E7B2A8948015CD6EEFE6A990 libextmedia_jni.so
07-07 05:37:54.730 24137 32072 F google-breakpad: M 0000007F980B6000 0000000000000000 0000000000144000 01BD26E755EF42AED908568986CF751D0 libxml2.so
07-07 05:37:54.730 24137 32072 F google-breakpad: M 0000007F9861E000 0000000000000000 000000000000D000 000000000000000000000000000000000 libshella-2.10.4.1.so
07-07 05:37:54.730 24137 32072 F google-breakpad: M 0000007F99E80000 0000000000000000 00000000003EC000 D8C44B9DF3014A6660F498526017376F0 libart-compiler.so
07-07 05:37:54.730 24137 32072 F google-breakpad: M 0000007F9A284000 0000000000000000 00000000000D4000 3CAC601505EC32062CF777C43CE88EB50 libvixl.so
07-07 05:37:54.730 24137 32072 F google-breakpad: M 0000007F9A385000 0000000000000000 000000000003F000 CBC6D52B77FE8C3918B4895C9653DC380 libopenjdk.so
07-07 05:37:54.730 24137 32072 F google-breakpad: M 0000007F9A3C4000 0000000000000000 000000000003D000 405C54B5E68A397AF200A48F4165F3D20 libjavacore.so
07-07 05:37:54.730 24137 32072 F google-breakpad: M 0000007F9A406000 0000000000000000 0000000000002000 39AE81637AEDB01959D4A9E892BABDE90 libtime_genoff.so
07-07 05:37:54.731 24137 32072 F google-breakpad: M 0000007F9A40A000 0000000000000000 0000000000004000 870C97FC860566D6EB0E18D344B45B620 libqmi_client_helper.so
07-07 05:37:54.731 24137 32072 F google-breakpad: M 0000007F9A40F000 0000000000000000 0000000000015000 DFB328A7A4FE785F9E68B98804586CCF0 libdsutils.so
07-07 05:37:54.731 24137 32072 F google-breakpad: M 0000007F9A427000 0000000000000000 000000000000B000 4CFEF8D1ADAA509D9E40A841FE2979D70 libqmi_cci.so
07-07 05:37:54.731 24137 32072 F google-breakpad: M 0000007F9A432000 0000000000000000 000000000001E000 A2142F3332A882D3CFFA5C62DDB024C20 libnetmgr.so
07-07 05:37:54.731 24137 32072 F google-breakpad: M 0000007F9A453000 0000000000000000 000000000002B000 FE109811C88EB707A0F11BFE0175F1190 lib-imsrcscm.so
07-07 05:37:54.731 24137 32072 F google-breakpad: M 0000007F9A481000 0000000000000000 0000000000003000 A15924805D6DD3D7FCB8F1BDCD1A57C80 libqmi_encdec.so
07-07 05:37:54.731 24137 32072 F google-breakpad: M 0000007F9A487000 0000000000000000 0000000000007000 1DD1061ED229AF48350CC1401A7061E00 libxml.so
07-07 05:37:54.731 24137 32072 F google-breakpad: M 0000007F9A48B000 0000000000000000 000000000001F000 82921F6B63255DA615C6BE1F614274A30 libqdi.so
07-07 05:37:54.731 24137 32072 F google-breakpad: M 0000007F9A4AC000 0000000000000000 0000000000192000 6944C2F5C39A6464C3624F113B5BDAC00 lib-imsqimf.so
07-07 05:37:54.731 24137 32072 F google-breakpad: M 0000007F9A644000 0000000000000000 000000000003B000 1D5893BE9807841E37F901ED8AE3871F0 libqmi.so
07-07 05:37:54.731 24137 32072 F google-breakpad: M 0000007F9A7EC000 0000000000000000 0000000000009000 20503B099D5681853CAC2A7D71EF003B0 libqmi_client_qmux.so
07-07 05:37:54.731 24137 32072 F google-breakpad: M 0000007F9A828000 0000000000000000 000000000001D000 AAA8C7D8281CFE51C94083D1A2A1F2E50 libdiag.so
07-07 05:37:54.731 24137 32072 F google-breakpad: M 0000007F9A938000 0000000000000000 00000000000C5000 506F39919ADDA39AC18E046A7C6234B90 lib-imsxml.so
07-07 05:37:54.731 24137 32072 F google-breakpad: M 0000007F9AA0D000 0000000000000000 0000000000003000 4FC73A8D29EA0C753DAF91EA910100C30 libidl.so
07-07 05:37:54.731 24137 32072 F google-breakpad: M 0000007F9AA04000 0000000000000000 0000000000021000 DF664CBEE95B84FA54812F5957278EF90 libqmiservices.so
07-07 05:37:54.731 24137 32072 F google-breakpad: M 0000007F9AA33000 0000000000000000 0000000000004000 D61AE25BD1F70F056E144A9A5F70B0C90 libconfigdb.so
07-07 05:37:54.731 24137 32072 F google-breakpad: M 0000007F9AA3A000 0000000000000000 000000000007C000 2BA353C60DE344E871BEE706E2D74E340 lib-imsdpl.so
07-07 05:37:54.731 24137 32072 F google-breakpad: M 0000007F9AAAB000 0000000000000000 000000000007E000 E4450EAA45C0D6905557BAB50C59D24C0 libdsi_netctrl.so
07-07 05:37:54.731 24137 32072 F google-breakpad: M 0000007F9AB44000 0000000000000000 0000000000017000 A270BCFC66DA61ED8FBC671DE6DFA04B0 lib-imsrcscmservice.so
07-07 05:37:54.732 24137 32072 F google-breakpad: M 0000007F9AB54000 0000000000000000 000000000010A000 CA499244A2094D83F78E11320B25D3E20 libCB.so
07-07 05:37:54.732 24137 32072 F google-breakpad: M 0000007F9EF0E000 0000000000000000 000000000001F000 6E8ED87B5820597E0176ED8B86BE49520 libBugly.so
07-07 05:37:54.732 24137 32072 F google-breakpad: M 0000007F9F1E4000 0000000000004000 0000000000002000 000000000000000000000000000000000 QPerformance.odex
07-07 05:37:54.732 24137 32072 F google-breakpad: M 0000007F9FFE0000 0000000000000000 000000000060A000 1540B2139D1D613272038F90872C81710 libart.so
07-07 05:37:54.732 24137 32072 F google-breakpad: M 0000007FA0A02000 0000000000000000 0000000000059000 563A7F4F81B725751BBCCC97069718230 libgsl.so
07-07 05:37:54.732 24137 32072 F google-breakpad: M 0000007FA0B9F000 0000000000000000 0000000000025000 AFB06673527124FD46E557D9628A73A60 liblzma.so
07-07 05:37:54.732 24137 32072 F google-breakpad: M 0000007FA0BCB000 0000000000000000 0000000000058000 09C922AD365B4ACF4D72CA7EA40F06A70 libsonivox.so
07-07 05:37:54.732 24137 32072 F google-breakpad: M 0000007FA0C2D000 0000000000000000 0000000000004000 8CB8423E077F7D1AFB3F62E33C8FEFE00 libstagefright_yuv.so

Body:
continue for the google-breakpad:

07-07 05:37:54.732 24137 32072 F google-breakpad: M 0000007FA0C32000 0000000000000000 0000000000005000 63F61AC2366F896C6169B2D75E0CE0180 libpowermanager.so
07-07 05:37:54.732 24137 32072 F google-breakpad: M 0000007FA0B97000 0000000000000000 0000000001198000 C7261F57350C3D873C0DA4E3A037055C0 libLLVM.so
07-07 05:37:54.732 24137 32072 F google-breakpad: M 0000007FA1DF6000 0000000000000000 000000000000A000 EF46D0E809ECA9C45AE64D478B2396B60 libnbaio.so
07-07 05:37:54.732 24137 32072 F google-breakpad: M 0000007FA1E03000 0000000000000000 0000000000008000 361B8B83C4C2F86891699D65BF1C20E70 libhardware_legacy.so
07-07 05:37:54.732 24137 32072 F google-breakpad: M 0000007FA1E0E000 0000000000000000 0000000000002000 D837D25CAA62FCA75A07779645CA08950 libnetd_client.so
07-07 05:37:54.733 24137 32072 F google-breakpad: M 0000007FA1E12000 0000000000000000 0000000000003000 9C07D582868EF369B3F6D498F15B92990 libstdc++.so
07-07 05:37:54.733 24137 32072 F google-breakpad: M 0000007FA1E16000 0000000000000000 0000000000012000 0F2E0AE99098E9EC742A8B28BBF545830 libimg_utils.so
07-07 05:37:54.733 24137 32072 F google-breakpad: M 0000007FA1DE6000 0000000000000000 00000000001D6000 06AA4B5EFF432EDFA1CFE97AC5D5ACBE0 libstagefright.so
07-07 05:37:54.733 24137 32072 F google-breakpad: M 0000007FA1FE3000 0000000000000000 0000000000016000 000DAB12B2E721C3A33BA596FEE8E2280 libsoundtrigger.so
07-07 05:37:54.733 24137 32072 F google-breakpad: M 0000007FA1FF8000 0000000000000000 000000000002C000 284CA18626F9A9A817542577419C2CD90 libinput.so
07-07 05:37:54.733 24137 32072 F google-breakpad: M 0000007FA202D000 0000000000000000 0000000000004000 B3BEDB325ABCECBB72039F1F0143806B0 libbinary_parse.so
07-07 05:37:54.733 24137 32072 F google-breakpad: M 0000007FA2031000 0000000000000000 0000000000049000 9D0C822C87B1D150165C3235392063A30 libRS_internal.so
07-07 05:37:54.733 24137 32072 F google-breakpad: M 0000007FA207F000 0000000000000000 0000000000002000 BD1EF65E210F87894B8BD684BF7DA0F30 libmemtrack.so
07-07 05:37:54.733 24137 32072 F google-breakpad: M 0000007FA2083000 0000000000000000 0000000000009000 FDDB04BE56260BFE15D2120DC59EF3120 libGLESv1_CM.so
07-07 05:37:54.733 24137 32072 F google-breakpad: M 0000007FA2041000 0000000000000000 000000000059A000 984D64A860D7FCE49FDBCB139416D6160 libskia.so
07-07 05:37:54.733 24137 32072 F google-breakpad: M 0000007FA261F000 0000000000000000 0000000000002000 8D7075A1EE2FBC7317EAF1B5EB6BF1520 libpackagelistparser.so
07-07 05:37:54.733 24137 32072 F google-breakpad: M 0000007FA2623000 0000000000000000 0000000000008000 C2EF72A3B820C94B6F9305F4F086B2BE0 libimage_type_recognition.so
07-07 05:37:54.733 24137 32072 F google-breakpad: M 0000007FA262D000 0000000000000000 0000000000001000 1162EE6DAB134C05F84AED6259FA65B60 libstagefright_enc_common.so
07-07 05:37:54.733 24137 32072 F google-breakpad: M 0000007FA2630000 0000000000000000 00000000000BB000 CD39E6BF7A54EF9EC0C1191EF7C87BAE0 libc.so
07-07 05:37:54.733 24137 32072 F google-breakpad: M 0000007FA26FD000 0000000000000000 0000000000004000 8F5553E70216C2C824C1349E055CEA340 libeffects.so
07-07 05:37:54.733 24137 32072 F google-breakpad: M 0000007FA26E7000 0000000000000000 00000000004D8000 1A2733D26703793379041D0A9CCEEFBB0 libpdfium.so
07-07 05:37:54.733 24137 32072 F google-breakpad: M 0000007FA2B76000 0000000000000000 0000000000152000 4750B858C4AE94799163D8664061CD2D0 libmedia.so
07-07 05:37:54.733 24137 32072 F google-breakpad: M 0000007FA2D06000 0000000000000000 0000000000005000 72D7EE1152052D1FA0B155C826DD35FD0 libtiff_directory.so
07-07 05:37:54.733 24137 32072 F google-breakpad: M 0000007FA2D0D000 0000000000000000 0000000000003000 4544DA167067A06329D6494F3BA397130 libnativebridge.so
07-07 05:37:54.734 24137 32072 F google-breakpad: M 0000007FA2CEE000 0000000000000000 0000000000095000 D5E3BF02B7E8C040FFEE568A75262F320 libgui.so
07-07 05:37:54.734 24137 32072 F google-breakpad: M 0000007FA2D9A000 0000000000000000 000000000001C000 747CBC9ABA7E4597E68B8452EE5BB9320 libvulkan.so
07-07 05:37:54.734 24137 32072 F google-breakpad: M 0000007FA2DBA000 0000000000000000 000000000000A000 88A9B6EC3EB6EEB5EC346AE541FF2BB10 libpiex.so
07-07 05:37:54.734 24137 32072 F google-breakpad: M 0000007FA2DC6000 0000000000000000 0000000000004000 8D7BAADF32B4CDFDD0A43C4A06CC18F00 libusbhost.so
07-07 05:37:54.734 24137 32072 F google-breakpad: M 0000007FA2DC2000 0000000000000000 0000000000046000 0F0DF6FD7296A0F8D9832C736A1AA0640 libwilhelm.so
07-07 05:37:54.734 24137 32072 F google-breakpad: M 0000007FA2E11000 0000000000000000 0000000000015000 7686268422C270D3A819B03D9A3BF6AC0 libGLESv2.so
07-07 05:37:54.734 24137 32072 F google-breakpad: M 0000007FA2E28000 0000000000000000 000000000001D000 8C8D63004EF713FC5AE44CD87BDAED840 libvorbisidec.so
07-07 05:37:54.734 24137 32072 F google-breakpad: M 0000007FA2E47000 0000000000000000 0000000000008000 5070F00A636AA255B6355B0BD8BDCFAE0 libaudioutils.so
07-07 05:37:54.734 24137 32072 F google-breakpad: M 0000007FA2E4A000 0000000000000000 0000000000016000 68B3EB8E6C3616AAE71046C3CA13FDC20 libradio.so
07-07 05:37:54.734 24137 32072 F google-breakpad: M 0000007FA2E67000 0000000000000000 0000000000015000 4A5A80025B29EA6AC7EC2402254AA16D0 libz.so
07-07 05:37:54.734 24137 32072 F google-breakpad: M 0000007FA2E7E000 0000000000000000 0000000000038000 F44DF572278F5721F66DF2DCC50F9D860 libssl.so
07-07 05:37:54.734 24137 32072 F google-breakpad: M 0000007FA2EBA000 0000000000000000 000000000001B000 C9A6CB74B1FD23D0DDA9FAC1E383D09E0 libpcre.so
07-07 05:37:54.734 24137 32072 F google-breakpad: M 0000007FA2ECF000 0000000000000000 0000000000024000 D643064FF41DF326E013F625DB1720A40 libEGL.so
07-07 05:37:54.734 24137 32072 F google-breakpad: M 0000007FA2EFF000 0000000000000000 0000000000052000 0BD5A57C39CF5D59857721ECB517C4EB0 libharfbuzz_ng.so
07-07 05:37:54.734 24137 32072 F google-breakpad: M 0000007FA2F51000 0000000000000000 0000000000059000 BEBBA1D1187ABE8D2421C3E847B0811D0 libinputflinger.so
07-07 05:37:54.734 24137 32072 F google-breakpad: M 0000007FA2FB0000 0000000000000000 000000000004B000 22DD9304EE4D6F204DD9DB6DB54A472C0 libopus.so
07-07 05:37:54.734 24137 32072 F google-breakpad: M 0000007FA2FFE000 0000000000000000 0000000000004000 A6007C9CE2CB8539CA6C370C088924420 libwpa_client.so
07-07 05:37:54.734 24137 32072 F google-breakpad: M 0000007FA2FEB000 0000000000000000 000000000005D000 4FC8254CC5E375D1CABCDC31C9FCA0660 libcamera_client.so
07-07 05:37:54.734 24137 32072 F google-breakpad: M 0000007FA305A000 0000000000000000 0000000000033000 DF80EF068F712A9247496A86AE6128920 libpng.so
07-07 05:37:54.734 24137 32072 F google-breakpad: M 0000007FA308F000 0000000000000000 0000000000022000 B00191BB36E8A07451577CB88028D80A0 libmemunreachable.so
07-07 05:37:54.735 24137 32072 F google-breakpad: M 0000007FA30B3000 0000000000000000 0000000000042000 C44446630C4C5656C1E2244815D926CE0 libandroidfw.so
07-07 05:37:54.735 24137 32072 F google-breakpad: M 0000007FA30F8000 0000000000000000 0000000000002000 E3AD0ECD52595D65373DF95C6CF04F290 libprocessgroup.so
07-07 05:37:54.735 24137 32072 F google-breakpad: M 0000007FA30FC000 0000000000000000 000000000000F000 43464F532EA6BF6A58D978FD4B89F7F30 libbacktrace.so
07-07 05:37:54.735 24137 32072 F google-breakpad: M 0000007FA310E000 0000000000000000 000000000001C000 0DCDE3B150A4AE4A9C64FC8EF44B44D80 libminikin.so
07-07 05:37:54.735 24137 32072 F google-breakpad: M 0000007FA312E000 0000000000000000 0000000000003000 9A3B6F644F6652D4944071DE7CD953680 libETC1.so
07-07 05:37:54.735 24137 32072 F google-breakpad: M 0000007FA312A000 0000000000000000 00000000000E1000 56BE84F5391B03807C422A7EB9D3B3AC0 libc++.so
07-07 05:37:54.735 24137 32072 F google-breakpad: M 0000007FA320F000 0000000000000000 0000000000028000 AC60831D7A2C052C479883DEC172A1B70 libdrmframework.so
07-07 05:37:54.735 24137 32072 F google-breakpad: M 0000007FA323F000 0000000000000000 0000000000104000 0D3AE6A6E7B99D612AD33C4F028D5C6C0 libcrypto.so
07-07 05:37:54.735 24137 32072 F google-breakpad: M 0000007FA3358000 0000000000000000 0000000000022000 59E1F5B3BA40C7567CAF3E5CDB47B8950 libprotobuf-cpp-lite.so
07-07 05:37:54.735 24137 32072 F google-breakpad: M 0000007FA337D000 0000000000000000 0000000000015000 EC2B9432F963374AB2F749098DBD08DF0 libselinux.so
07-07 05:37:54.735 24137 32072 F google-breakpad: M 0000007FA3396000 0000000000000000 000000000000B000 F9BD65BF90FC2C810648C1D0F4FF2A4A0 libRS.so
07-07 05:37:54.735 24137 32072 F google-breakpad: M 0000007FA338B000 0000000000000000 0000000000081000 8E5FEBFBEDD6ABC22E6DB667CA6C419E0 libbinder.so
07-07 05:37:54.735 24137 32072 F google-breakpad: M 0000007FA341F000 0000000000000000 0000000000001000 E388025DE110BEF00DE83E4174B317C90 libhardware.so
07-07 05:37:54.735 24137 32072 F google-breakpad: M 0000007FA3423000 0000000000000000 0000000000008000 586DC646669D51766B327453B0982A080 libstagefright_avc_common.so
07-07 05:37:54.735 24137 32072 F google-breakpad: M 0000007FA342B000 0000000000000000 0000000000009000 B13DD8460CDC258BA0D162E1F9515F4E0 libcamera_metadata.so
07-07 05:37:54.735 24137 32072 F google-breakpad: M 0000007FA3437000 0000000000000000 0000000000007000 78910DA8720C99F7788C339514C79D9D0 libnativehelper.so
07-07 05:37:54.735 24137 32072 F google-breakpad: M 0000007FA3441000 0000000000000000 0000000000006000 5D5C40BC70839BCFF7F319F7F52FF4AF0 libnetutils.so
07-07 05:37:54.735 24137 32072 F google-breakpad: M 0000007FA3449000 0000000000000000 0000000000039000 D9DC2FD8FF0380F6BF304A655176CA000 libjpeg.so
07-07 05:37:54.735 24137 32072 F google-breakpad: M 0000007FA3483000 0000000000000000 000000000001D000 6175FF2427FC1EEDFDA84CDB775E012B0 libcutils.so
07-07 05:37:54.735 24137 32072 F google-breakpad: M 0000007FA34A3000 0000000000000000 0000000000009000 32B148D93B13807C65A5A3483C296B8A0 libnativeloader.so
07-07 05:37:54.736 24137 32072 F google-breakpad: M 0000007FA34AE000 0000000000000000 0000000000002000 BFF9D0E70FDC319189EA1F8A2B176FAE0 libradio_metadata.so
07-07 05:37:54.736 24137 32072 F google-breakpad: M 0000007FA34B2000 0000000000000000 0000000000020000 A667DE9A1B9342A0792D87ECDC0797360 libutils.so
07-07 05:37:54.736 24137 32072 F google-breakpad: M 0000007FA34D5000 0000000000000000 0000000000024000 C92ADED614992FE2BD74905DB4F3E9D40 libexpat.so
07-07 05:37:54.736 24137 32072 F google-breakpad: M 0000007FA34FD000 0000000000000000 000000000004C000 D8793175B4B9B19D07D79C9B8FD99CD10 libbcinfo.so
07-07 05:37:54.736 24137 32072 F google-breakpad: M 0000007FA354A000 0000000000000000 0000000000070000 DBDCBDCA95F0E4EB882B524C35B89EA60 libft2.so
07-07 05:37:54.736 24137 32072 F google-breakpad: M 0000007FA35BF000 0000000000000000 0000000000010000 9A2752C688A6413FBD4882F2EDE52A810 libui.so
07-07 05:37:54.736 24137 32072 F google-breakpad: M 0000007FA35A2000 0000000000000000 00000000001A8000 D487FC73FE77B249606198CF3949E1EC0 libandroid_runtime.so
07-07 05:37:54.736 24137 32072 F google-breakpad: M 0000007FA3769000 0000000000000000 0000000000001000 81D3A32BFDEFF6593C170DA3B2982DAD0 libsync.so
07-07 05:37:54.736 24137 32072 F google-breakpad: M 0000007FA376C000 0000000000000000 0000000000004000 3006CE964E54828FCAD90E3F086BCB090 libspeexresampler.so
07-07 05:37:54.736 24137 32072 F google-breakpad: M 0000007FA3772000 0000000000000000 000000000001A000 B933D3445554C18D3D0F3115FABE7F910 libunwind.so
07-07 05:37:54.736 24137 32072 F google-breakpad: M 0000007FA37F1000 0000000000000000 00000000000C1000 9554AC2D0276BDCB9B4E89710972689D0 libdng_sdk.so
07-07 05:37:54.736 24137 32072 F google-breakpad: M 0000007FA38BA000 0000000000000000 0000000000002000 C0BCD83051D65B80FC2FC42DD7ADFF5B0 libregionalization.so
07-07 05:37:54.736 24137 32072 F google-breakpad: M 0000007FA38A5000 0000000000000000 0000000000183000 9FCEFEAF5A88ADDF1E8F976D2EDB49400 libicuuc.so
07-07 05:37:54.736 24137 32072 F google-breakpad: M 0000007FA3A3C000 0000000000000000 000000000000A000 B1B91E5B31A2ECEDF3A4911DC039FD740 libmediautils.so
07-07 05:37:54.736 24137 32072 F google-breakpad: M 0000007FA3A43000 0000000000000000 00000000000BC000 A7129BA2231DF841FED49F168C2C190B0 libhwui.so
07-07 05:37:54.736 24137 32072 F google-breakpad: M 0000007FA3B03000 0000000000000000 00000000000FB000 0D0D64DAAC71FD11EBE6E71CF006204C0 libsqlite.so
07-07 05:37:54.736 24137 32072 F google-breakpad: M 0000007FA3BFE000 0000000000000000 000000000003F000 CD9C648F8BDBDAEDF3B4F2B5402CDD620 libstagefright_omx.so
07-07 05:37:54.736 24137 32072 F google-breakpad: M 0000007FA3C43000 0000000000000000 000000000002B000 E86F2FB4CBF63420A3FA14093FC774420 libstagefright_foundation.so
07-07 05:37:54.737 24137 32072 F google-breakpad: M 0000007FA3C71000 0000000000000000 000000000000F000 036275BBFFD044B3A89A326B07ECBEA50 liblog.so
07-07 05:37:54.737 24137 32072 F google-breakpad: M 0000007FA3C83000 0000000000000000 0000000000002000 E788B336C9D31BC62B0DBD24E901174A0 libstagefright_http_support.so
07-07 05:37:54.737 24137 32072 F google-breakpad: M 0000007FA3C87000 0000000000000000 000000000000B000 32A74BDBF89F698D7D686F948166F1D40 libbase.so
07-07 05:37:54.737 24137 32072 F google-breakpad: M 0000007FA3C94000 0000000000000000 000000000004F000 90342BBC784292A0B28BD5461B2BE53C0 libRScpp.so
07-07 05:37:54.737 24137 32072 F google-breakpad: M 0000007FA3CE6000 0000000000000000 0000000000035000 132B1D48E758A3515512F3900656C8910 libm.so
07-07 05:37:54.737 24137 32072 F google-breakpad: M 0000007FA3D04000 0000000000000000 0000000000232000 5A218E5617E77D1B181B019A973604590 libicui18n.so
07-07 05:37:54.737 24137 32072 F google-breakpad: M 0000007FA3F4B000 0000000000000000 0000000000003000 BE021A68F5FFFA5A1FC2AE49ADDB9BC80 libmdmdetect.so
07-07 05:37:54.737 24137 32072 F google-breakpad: M 0000007FA3F43000 0000000000000000 000000000002A000 ED96B2E4AB1E876E06FE4404A181C82A0 lib-imsrcscmclient.so
07-07 05:37:54.737 24137 32072 F google-breakpad: M 0000007FA3F67000 0000000000000000 00000000000C7000 FFCD99C0D1DD56CC6B9B990BB58542C10 libmediaplayerservice.so
07-07 05:37:54.737 24137 32072 F google-breakpad: M 0000007FA403E000 0000000000000000 0000000000001000 E419FA0C7C43A6D32D8EA8F0014D71450 libsmemlog.so
07-07 05:37:54.737 24137 32072 F google-breakpad: M 0000007FA4041000 0000000000000000 0000000000003000 A2E60C7CD3F8E08BE91340F084158F640 libqcci_legacy.so
07-07 05:37:54.737 24137 32072 F google-breakpad: M 0000007FA404B000 0000000000000000 0000000000001000 26AD0E5A1130F09B43022089487E80530 libqmi_common_so.so
07-07 05:37:54.738 24137 32072 F google-breakpad: M 0000007FA404D000 0000000000000000 0000000000016000 87E04EE0B0561BC29EEDF6943FA72EDB0 libOpenCL.so
07-07 05:37:54.738 24137 32072 F google-breakpad: M 0000007FA4064000 0000000000000000 0000000000017000 0C1C9F5F950F85F2872F92EBDEDBD65E0 libmediandk.so
07-07 05:37:54.739 24137 32072 F google-breakpad: M 0000007FA407B000 0000000000000000 0000000000016000 9362F55ECDA1222597401E735832A7800 libmediadrm.so
07-07 05:37:54.739 24137 32072 F google-breakpad: M 0000007FA40C3000 0000000000000000 000000000001F000 EDB71337485BFF5DB756A977DCA9D6E80 libcamera2ndk.so
07-07 05:37:54.739 24137 32072 F google-breakpad: M 0000007FA410B000 0000000000000000 0000000000006000 10858F8B118C8EDB696A27F22A89DE500 libqti-gt.so
07-07 05:37:54.739 24137 32072 F google-breakpad: M 0000007FA4138000 0000000000000000 000000000000E000 E60022563C2C3B21E095C38F33AA19450 lib-ims-rcscmjni.so
07-07 05:37:54.739 24137 32072 F google-breakpad: M 0000007FA414D000 0000000000000000 0000000000004000 843C6691981F316FD488BDD0E790B2A60 libsechook.so
07-07 05:37:54.739 24137 32072 F google-breakpad: M 0000007FA415C000 0000000000000000 0000000000001000 DFB4FFBF8EAB597A5C0B2F17ADEC79AF0 libqti-at.so
07-07 05:37:54.739 24137 32072 F google-breakpad: M 0000007FA4164000 0000000000000000 0000000000001000 B398B9DEBF5C63DCF723F4F8ACED0D920 memtrack.msm8996.so
07-07 05:37:54.739 24137 32072 F google-breakpad: M 0000007FA4168000 0000000000000000 0000000000015000 C06631C0654850846F654D4CD69AF13A0 libGLESv3.so
07-07 05:37:54.739 24137 32072 F google-breakpad: M 0000007FA41AE000 0000000000000000 0000000000008000 3D1528B28BBF44904AEF96CDDF95300F0 libopenjdkjvm.so
07-07 05:37:54.739 24137 32072 F google-breakpad: M 0000007FA41E9000 0000000000000000 000000000001A000 47A026BCF480716C7CCB1DC6A0AA89A50 libandroid.so
07-07 05:37:54.739 24137 32072 F google-breakpad: M 0000007FA424E000 0000000000000000 0000000000002000 9A327E191A7B55D7DE451749358886680 libqti-perfd-client.so
07-07 05:37:54.739 24137 32072 F google-breakpad: M 0000007FA4252000 0000000000000000 0000000000002000 AA1397F65E2069CEC5DA99AA7A136F2F0 libqti_performance.so
07-07 05:37:54.739 24137 32072 F google-breakpad: M 0000007FA4256000 0000000000000000 0000000000003000 EB2BB67B35317F3BA5B93BF2749C75370 libwebviewchromium_plat_support.so
07-07 05:37:54.739 24137 32072 F google-breakpad: M 0000007FA425B000 0000000000000000 0000000000002000 1A296C5D4B35AC8981F6E20379D5DE8A0 libOpenSLES.so
07-07 05:37:54.739 24137 32072 F google-breakpad: M 0000007FA42F8000 0000000000000000 0000000000002000 92D493C5853E0D3C4741147781C481C90 libOpenMAXAL.so
07-07 05:37:54.739 24137 32072 F google-breakpad: M 0000007FA42FA000 0000000000000000 000000000002E000 332FAAE8BC4EBAE83F3E046FABFD33A70 libdashplayer.so
07-07 05:37:54.739 24137 32072 F google-breakpad: M 0000007FA4332000 0000000000000000 0000000000001000 DDC69ACD60BB86707C7886B9FC6822DE0 libjnigraphics.so
07-07 05:37:54.739 24137 32072 F google-breakpad: M 0000007FA4339000 0000000000000000 000000000000C000 DD29E353E7626318AF06ADBB7658183F0 liblz4.so
07-07 05:37:54.739 24137 32072 F google-breakpad: M 0000007FA4373000 0000000000000000 000000000002C000 E304FFB3F3BCBA2C69E381F4072B71450 libstagefright_httplive.so
07-07 05:37:54.740 24137 32072 F google-breakpad: M 0000007FA439C000 0000000000000000 0000000000049000 6EB3706D5E26FC2B6394E1E3860319B80 libavenhancements.so
07-07 05:37:54.740 24137 32072 F google-breakpad: M 0000007FA440E000 0000000000000000 000000000003B000 086086B0C9494AF58CE1AAA6BD9FF9B10 libstagefright_wfd.so
07-07 05:37:54.740 24137 32072 F google-breakpad: M 0000007FA44A3000 0000000000000000 0000000000001000 510A7F5CC03B36DD82E46BD44BF2BD370 libsigchain.so
07-07 05:37:54.740 24137 32072 F google-breakpad: M 0000007FA44FC000 0000000000000000 0000000000001000 B6A1B7587B9EA1A02A6C01AE893B989C0 libExtendedExtractor.so
07-07 05:37:54.741 24137 32072 F google-breakpad: M 0000007FA453C000 0000000000000000 0000000000001000 67D42CD6CF8AF63B3BD7F02AB02B3D0C0 linux-gate.so
07-07 05:37:54.741 24137 32072 F google-breakpad: M 0000007FA453D000 0000000000000000 00000000000A9000 38925412BAA565C081366DE25E7D87A30 linker64
07-07 05:37:54.741 24137 32072 F google-breakpad: -----END BREAKPAD MICRODUMP-----
07-07 05:37:54.799 32022 32072 W google-breakpad: ### ### ### ### ### ### ### ### ### ### ### ### ###
07-07 05:37:54.800 32022 32072 W google-breakpad: Chrome build fingerprint:
07-07 05:37:54.800 32022 32072 W google-breakpad: 1.1.8 1707042
07-07 05:37:54.800 32022 32072 W google-breakpad: 18
07-07 05:37:54.800 32022 32072 W google-breakpad: ### ### ### ### ### ### ### ### ### ### ### ### ###
07-07 05:37:54.801 32022 32072 E CrashReport: Old handler addresss 0x7fa4543d34
07-07 05:37:54.801 32022 32072 E CrashReport: HandleSignal start 11
07-07 05:37:54.801 32022 32072 E CrashReport: NativeRQDVersion:2.1.2
07-07 05:37:54.804 32022 32072 E CrashReport: can't start default dump in 64bit!
07-07 05:37:54.874  1415  2642 I WindowManager: WIN DEATH: Window{8387c5d u0 com.miaomiaoce.mmc.owl/com.miaomiaoce.mmc.owl.OWL_Monitor_Activity}
07-07 05:37:54.874  1415  3260 D ConnectivityService: ConnectivityService NetworkRequestInfo binderDied(NetworkRequest [ id=54, legacyType=-1, [ Capabilities: INTERNET&NOT_RESTRICTED&TRUSTED] ], android.os.BinderProxy@5b7a2af)
07-07 05:37:54.875  1415  2642 I WindowManager: Destroying surface Surface(name=com.miaomiaoce.mmc.owl/com.miaomiaoce.mmc.owl.OWL_Monitor_Activity) called by com.android.server.wm.WindowStateAnimator.destroySurface:2027 com.android.server.wm.WindowStateAnimator.destroySurfaceLocked:894 com.android.server.wm.WindowState.removeLocked:1450 com.android.server.wm.WindowManagerService.removeWindowInnerLocked:2491 com.android.server.wm.WindowManagerService.removeWindowLocked:2449 com.android.server.wm.WindowState$DeathRecipient.binderDied:1781 android.os.BinderProxy.sendDeathNotice:696
07-07 05:37:54.875  1415  3260 I chatty  : uid=1000(system) Binder:1415_10 expire 4 lines
07-07 05:37:54.875  1415 23127 D ConnectivityService: ConnectivityService NetworkRequestInfo binderDied(NetworkRequest [ id=53, legacyType=-1, [ Capabilities: INTERNET&NOT_RESTRICTED&TRUSTED] ], android.os.BinderProxy@51bc6bc)
07-07 05:37:54.875  1721  2014 D BtGatt.GattService: Binder is dead - unregistering client (13)!

The app keep a ble connect,and show the data on webveiw.

Phone info:xiaomi 5,android 7.0.We also get this crash on other phone.


来源: stackexchange

问:
React/Express - 'Unexpected token <' in call to renderToString()
I'm working on setting up server-side rendering for my React/Express app, but I'm encountering a syntax error relating to the call to the react-dom/server renderToString() method.  I'm loosely following this tutorial - http://crypt.codemancers.com/posts/2016-09-16-react-server-side-rendering/

index.js (Express app root):

```<code>'use strict'
require('babel-register')({
    presets: ['es2015', 'react']
});

const express = require('express')
const path = require('path')
const app = express()
const React = require('react')
const reactDomServer = require('react-dom/server')
const routes = require('./src/routes.jsx')
const reactRouter = require('react-router')
let { match, RouterContext } = reactRouter

app.get('*', (req, res) => {
    match({ routes: routes, location: req.url }, (err, redirect, props) => {
        const appHtml = reactDomServer.renderToString(<RouterContext {...props}/>)
        res.send(renderPage(appHtml))
    })
})
</code>```

However, this causes the error:

```<code>const appHtml = reactDomServer.renderToString(<RouterContext {...props}/>)
                                              ^
SyntaxError: Unexpected token <
</code>```

All of the similar examples that I've seen have a straight JSX component dropped in... what am I missing?

答:
I believe the issue stems from the fact that requiring babel-register will not work for the file you import it in, but for files that get imported afterwards. So the JSX syntax of <RouterContext will not be picked up by the renderToString method. This has happened to me before and including babel-register for the syntax never felt clean to me anyway.

What I personally have done and many others do is this: readDomServer.renderToString(React.createElement(RoutingContext, props)) using the createElement method in React, you can accomplish the same thing. This will solve your issue.

ContentLicense: CC BY-SA 3.0

Body:
I'm working on setting up server-side rendering for my React/Express app, but I'm encountering a syntax error relating to the call to the react-dom/server renderToString() method.  I'm loosely following this tutorial - http://crypt.codemancers.com/posts/2016-09-16-react-server-side-rendering/

index.js (Express app root):

'use strict'
require('babel-register')({
    presets: ['es2015', 'react']
});

const express = require('express')
const path = require('path')
const app = express()
const React = require('react')
const reactDomServer = require('react-dom/server')
const routes = require('./src/routes.jsx')
const reactRouter = require('react-router')
let { match, RouterContext } = reactRouter

app.get('*', (req, res) => {
    match({ routes: routes, location: req.url }, (err, redirect, props) => {
        const appHtml = reactDomServer.renderToString(<RouterContext {...props}/>)
        res.send(renderPage(appHtml))
    })
})

However, this causes the error:

const appHtml = reactDomServer.renderToString(<RouterContext {...props}/>)
                                              ^
SyntaxError: Unexpected token <

All of the similar examples that I've seen have a straight JSX component dropped in... what am I missing?


问:
Populating fullcalendar event data using Java Struts
I've been following this blog post.

However my calendar is not displaying. I would like to retrieve the data from the database, then output it using JSON (currently I've hardcoded test data in), then retrieve that JSON data using $.post() and populate the calendar with it.

My code -

Action Mapping Definition

```<code><action path="/getCalendarEvents"
        scope="request"
        type="com.action.struts.AjaxAction"
        validate="false"/>
</code>```

eventCalendar.jsp

```<code><script type="text/javascript">
            $(document).ready(function() {
                $.post('getCalendarEvents.html?method=allEvents', {action: ''},
                function(data) {
                    var date = new Date();
                    var d = date.getDate();
                    var m = date.getMonth();
                    var y = date.getFullYear();
                    $('#calendar').fullCalendar({
                        theme: true,
                        header: {
                            left: 'prev,next today',
                            center: 'title',
                            right: 'month,agendaWeek,agendaDay'
                        },
                        editable: true,
                        events: data
                    });

                }, "json"
                        );
            });
    </script>
</code>```

AjaxAction.java

```<code>public class AjaxAction extends ActionForward{
     public ActionForward execute(ActionMapping mapping, ActionForm form,
                HttpServletRequest request, HttpServletResponse response)
                throws Exception {
                        AjaxMoreUtil.getAllEvents(request, response);
                return null;
        }
}
</code>```

AjaxMoreUtil.java

```<code>public class AjaxMoreUtil {
    public static void getAllEvents(HttpServletRequest request, HttpServletResponse response) throws Exception {
        ArrayList<CalendarDTO> allEventList = new ArrayList<CalendarDTO>();

        CalendarDTO c = new CalendarDTO();
        c.setId(1);
        c.setStart("2017-06-21");
        c.setEnd("2017-06-26");
        c.setTitle("Task in Progress");

        allEventList.add(c);

        CalendarDTO d = new CalendarDTO();
        d.setId(2);
        d.setStart("2017-06-01");
        d.setEnd("2017-06-10");
        d.setTitle("Task in Progress");

        allEventList.add(d);

        String json = new Gson().toJson(allEventList);
        System.out.println("json value " + json);
        response.setContentType("application/json");
        response.setCharacterEncoding("UTF-8");
        response.getWriter().write(json);
    }
}
</code>```

When I run the application I get a 404 for the POST and nothing displays.

答:
I ended up solving this using a request variable.

In AjaxMoreUtil.java I put each event into an ArrayList.

```<code>List l = new ArrayList();
CalendarDTO c = new CalendarDTO();
c.setStart("2017-07-05");
c.setEnd("2017-07-08");
c.setTitle("event1");

l.add(c);
</code>```

Then I converted that list into a JSON string using google's Gson JSON converter.

```<code>String resultSet = gson.toJson(l);

request.setAttribute("rs", resultSet);
request.getRequestDispatcher("/pages/Scheduler.jsp").forward(request,response);
</code>```

In the .jsp I get the request variable and set it to a javascript var.

```<code>var rs = JSON.stringify(<%=rs%>);
</code>```

And parse it into the calendar as a JSON string

```<code>events: JSON.parse(rs)
</code>```

This displayed the information in the calendar correctly.

Body:
I've been following this blog post.

However my calendar is not displaying. I would like to retrieve the data from the database, then output it using JSON (currently I've hardcoded test data in), then retrieve that JSON data using $.post() and populate the calendar with it.

My code -

Action Mapping Definition

<action path="/getCalendarEvents"
        scope="request"
        type="com.action.struts.AjaxAction"
        validate="false"/>

eventCalendar.jsp

AjaxAction.java

public class AjaxAction extends ActionForward{
     public ActionForward execute(ActionMapping mapping, ActionForm form,
                HttpServletRequest request, HttpServletResponse response)
                throws Exception {
                        AjaxMoreUtil.getAllEvents(request, response);
                return null;
        }
}

AjaxMoreUtil.java

public class AjaxMoreUtil {
    public static void getAllEvents(HttpServletRequest request, HttpServletResponse response) throws Exception {
        ArrayList<CalendarDTO> allEventList = new ArrayList<CalendarDTO>();

        CalendarDTO c = new CalendarDTO();
        c.setId(1);
        c.setStart("2017-06-21");
        c.setEnd("2017-06-26");
        c.setTitle("Task in Progress");

        allEventList.add(c);

        CalendarDTO d = new CalendarDTO();
        d.setId(2);
        d.setStart("2017-06-01");
        d.setEnd("2017-06-10");
        d.setTitle("Task in Progress");

        allEventList.add(d);

        String json = new Gson().toJson(allEventList);
        System.out.println("json value " + json);
        response.setContentType("application/json");
        response.setCharacterEncoding("UTF-8");
        response.getWriter().write(json);
    }
}

When I run the application I get a 404 for the POST and nothing displays.

Body:
I ended up solving this using a request variable.

In AjaxMoreUtil.java I put each event into an ArrayList.

List l = new ArrayList();
CalendarDTO c = new CalendarDTO();
c.setStart("2017-07-05");
c.setEnd("2017-07-08");
c.setTitle("event1");

l.add(c);

Then I converted that list into a JSON string using google's Gson JSON converter.

String resultSet = gson.toJson(l);

request.setAttribute("rs", resultSet);
request.getRequestDispatcher("/pages/Scheduler.jsp").forward(request,response);

In the .jsp I get the request variable and set it to a javascript var.

var rs = JSON.stringify(<%=rs%>);

And parse it into the calendar as a JSON string

events: JSON.parse(rs)

This displayed the information in the calendar correctly.


问:
An exception：gzip finished without exhausting source, about Okhttp,okio
I encountered this error while using okhttp. Please help me analyze the reason for the error and give me a solution

```<code> @Override public long read(Buffer sink, long byteCount) throws IOException {
if (byteCount < 0) throw new IllegalArgumentException("byteCount < 0: " + byteCount);
if (byteCount == 0) return 0;

// If we haven't consumed the header, we must consume it before anything else.
if (section == SECTION_HEADER) {
  consumeHeader();
  section = SECTION_BODY;
}

// Attempt to read at least a byte of the body. If we do, we're done.
if (section == SECTION_BODY) {
  long offset = sink.size;
  long result = inflaterSource.read(sink, byteCount);
  if (result != -1) {
    updateCrc(sink, offset, result);
    return result;
  }
  section = SECTION_TRAILER;
}

// The body is exhausted; time to read the trailer. We always consume the
// trailer before returning a -1 exhausted result; that way if you read to
// the end of a GzipSource you guarantee that the CRC has been checked.
if (section == SECTION_TRAILER) {
  consumeTrailer();
  section = SECTION_DONE;

  // Gzip streams self-terminate: they return -1 before their underlying
  // source returns -1. Here we attempt to force the underlying stream to
  // return -1 which may trigger it to release its resources. If it doesn't
  // return -1, then our Gzip data finished prematurely!
 if (!source.exhausted()) {
    throw new IOException("gzip finished without exhausting source");
  }
}

return -1;
</code>```

}

enter image description here

enter image description hereCH.png

throw new IOException("gzip finished without exhausting source");

答:
JakeWharton
BillBosiolis

OK. This one can be closed. It has nothing to do with retrofit/OkHttp.

In fact, it seems that the problem was that the server code (not Apache) was always sending a Content-Length header back even in cases where chunked encoding was being used.

https://github.com/square/retrofit/issues/1170

Body:
I encountered this error while using okhttp. Please help me analyze the reason for the error and give me a solution

 @Override public long read(Buffer sink, long byteCount) throws IOException {
if (byteCount < 0) throw new IllegalArgumentException("byteCount < 0: " + byteCount);
if (byteCount == 0) return 0;

// If we haven't consumed the header, we must consume it before anything else.
if (section == SECTION_HEADER) {
  consumeHeader();
  section = SECTION_BODY;
}

// Attempt to read at least a byte of the body. If we do, we're done.
if (section == SECTION_BODY) {
  long offset = sink.size;
  long result = inflaterSource.read(sink, byteCount);
  if (result != -1) {
    updateCrc(sink, offset, result);
    return result;
  }
  section = SECTION_TRAILER;
}

// The body is exhausted; time to read the trailer. We always consume the
// trailer before returning a -1 exhausted result; that way if you read to
// the end of a GzipSource you guarantee that the CRC has been checked.
if (section == SECTION_TRAILER) {
  consumeTrailer();
  section = SECTION_DONE;

  // Gzip streams self-terminate: they return -1 before their underlying
  // source returns -1. Here we attempt to force the underlying stream to
  // return -1 which may trigger it to release its resources. If it doesn't
  // return -1, then our Gzip data finished prematurely!
 if (!source.exhausted()) {
    throw new IOException("gzip finished without exhausting source");
  }
}

return -1;

}

enter image description here

enter image description hereCH.png

throw new IOException("gzip finished without exhausting source");


问:
Defining a spring-data JPA repository interface for entity with primary key that is also a foreign key in JPA 2.x
I have an entity with a JPA 2.x defined primary key that is also a foreign key
 to another entity (JPA 2.x allows for @Id annotations on @*ToOne relationship fields):

```<code>@Entity
class FooOptionalInfo {
    /* ... fields ... */

    @Id
    @OneToOne
    public Foo getFoo() { return foo; }

    /* ... setters ... */
}

@Entity
class Foo {
    @Id
    public Long fooId;

    /* ... getters/setters ... */
}
</code>```

Spring JPA repository interfaces should extend the Repository<T, ID> interface where T is the @Entity class and ID is the entity's @Id field, however:

Defining public interface FooOptionalInfoRepository extends Repository<Foo, Bar> or extends Repository<FooOptionalInfo, Long> results in the same error below upon spring jpa initialization:

```<code>Caused by: java.lang.IllegalArgumentException: This class [class com.example.FooOptionalInfo] does not define an IdClass
    at org.hibernate.jpa.internal.metamodel.AbstractIdentifiableType.getIdClassAttributes(AbstractIdentifiableType.java:183)
    at org.springframework.data.jpa.repository.support.JpaMetamodelEntityInformation$IdMetadata.<init>(JpaMetamodelEntityInformation.java:253)
    at org.springframework.data.jpa.repository.support.JpaMetamodelEntityInformation.<init>(JpaMetamodelEntityInformation.java:84)
    at org.springframework.data.jpa.repository.support.JpaEntityInformationSupport.getEntityInformation(JpaEntityInformationSupport.java:68)
    at org.springframework.data.jpa.repository.support.JpaRepositoryFactory.getEntityInformation(JpaRepositoryFactory.java:153)
    at org.springframework.data.jpa.repository.support.JpaRepositoryFactory.getTargetRepository(JpaRepositoryFactory.java:100)
    at org.springframework.data.jpa.repository.support.JpaRepositoryFactory.getTargetRepository(JpaRepositoryFactory.java:82)
    at org.springframework.data.repository.core.support.RepositoryFactorySupport.getRepository(RepositoryFactorySupport.java:199)
    at org.springframework.data.repository.core.support.RepositoryFactoryBeanSupport.initAndReturn(RepositoryFactoryBeanSupport.java:277)
    at org.springframework.data.repository.core.support.RepositoryFactoryBeanSupport.afterPropertiesSet(RepositoryFactoryBeanSupport.java:263)
    at org.springframework.data.jpa.repository.support.JpaRepositoryFactoryBean.afterPropertiesSet(JpaRepositoryFactoryBean.java:101)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1687)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1624)
    ... 20 common frames omitted
</code>```

Do I need to revert back to JPA 1.x standards and define both the Entity and the basic id field (@Id Long fooId; @OneToOne @PrimaryKeyJoinColumn(...) Foo foo; in FooOptionalInfo) or is there a way to eat the JPA 2.x simplified annotations and have my spring repository cake as well?

答:
It's a litter strange for the id to be the primary and foreign key at the same time. You can accomplish this in another way: define the foreign key in Bar.

```<code>@Entity
class Foo {
    @Id
    private long id;
    // ...
}

@Entity
class Bar {
    @Id
    public Long barId;

    @OneToOne
    @JoinColumn(name="foo_id")
    private Foo foo;
}
</code>```

Body:
I have an entity with a JPA 2.x defined primary key that is also a foreign key
 to another entity (JPA 2.x allows for @Id annotations on @*ToOne relationship fields):

@Entity
class FooOptionalInfo {
    /* ... fields ... */

    @Id
    @OneToOne
    public Foo getFoo() { return foo; }

    /* ... setters ... */
}

@Entity
class Foo {
    @Id
    public Long fooId;

    /* ... getters/setters ... */
}

Spring JPA repository interfaces should extend the Repository<T, ID> interface where T is the @Entity class and ID is the entity's @Id field, however:

Defining public interface FooOptionalInfoRepository extends Repository<Foo, Bar> or extends Repository<FooOptionalInfo, Long> results in the same error below upon spring jpa initialization:

Caused by: java.lang.IllegalArgumentException: This class [class com.example.FooOptionalInfo] does not define an IdClass
    at org.hibernate.jpa.internal.metamodel.AbstractIdentifiableType.getIdClassAttributes(AbstractIdentifiableType.java:183)
    at org.springframework.data.jpa.repository.support.JpaMetamodelEntityInformation$IdMetadata.<init>(JpaMetamodelEntityInformation.java:253)
    at org.springframework.data.jpa.repository.support.JpaMetamodelEntityInformation.<init>(JpaMetamodelEntityInformation.java:84)
    at org.springframework.data.jpa.repository.support.JpaEntityInformationSupport.getEntityInformation(JpaEntityInformationSupport.java:68)
    at org.springframework.data.jpa.repository.support.JpaRepositoryFactory.getEntityInformation(JpaRepositoryFactory.java:153)
    at org.springframework.data.jpa.repository.support.JpaRepositoryFactory.getTargetRepository(JpaRepositoryFactory.java:100)
    at org.springframework.data.jpa.repository.support.JpaRepositoryFactory.getTargetRepository(JpaRepositoryFactory.java:82)
    at org.springframework.data.repository.core.support.RepositoryFactorySupport.getRepository(RepositoryFactorySupport.java:199)
    at org.springframework.data.repository.core.support.RepositoryFactoryBeanSupport.initAndReturn(RepositoryFactoryBeanSupport.java:277)
    at org.springframework.data.repository.core.support.RepositoryFactoryBeanSupport.afterPropertiesSet(RepositoryFactoryBeanSupport.java:263)
    at org.springframework.data.jpa.repository.support.JpaRepositoryFactoryBean.afterPropertiesSet(JpaRepositoryFactoryBean.java:101)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1687)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1624)
    ... 20 common frames omitted

Do I need to revert back to JPA 1.x standards and define both the Entity and the basic id field (@Id Long fooId; @OneToOne @PrimaryKeyJoinColumn(...) Foo foo; in FooOptionalInfo) or is there a way to eat the JPA 2.x simplified annotations and have my spring repository cake as well?

Body:
It's a litter strange for the id to be the primary and foreign key at the same time. You can accomplish this in another way: define the foreign key in Bar.

@Entity
class Foo {
    @Id
    private long id;
    // ...
}

@Entity
class Bar {
    @Id
    public Long barId;

    @OneToOne
    @JoinColumn(name="foo_id")
    private Foo foo;
}


问:
Unable to load database file in android
I have a sqlite database file called MainExerciseDatabaseOne.db stored in my app/src/main/assets/databases folder.  I'm trying to open the file in a function of my main activity:

```<code>private ExerciseDb createDatabase(){
    final String inFileName = "/data/data/<mypackage>/databases/MainExerciseDatabaseOne.db";
    File dbFile = new File(inFileName);
    FileInputStream fis = null;
    try {
        fis = new FileInputStream(dbFile);
    } catch (FileNotFoundException e) {
        Log.e("error",e.toString());
    }
    String outFileName = DB_PATH + ExerciseDb.DATABASE_NAME;
    // Open the empty db as the output stream
    OutputStream output = null;
    try {
        output = new FileOutputStream(outFileName);
    } catch (FileNotFoundException e) {
        Log.e("error",e.toString());
    }
    // Transfer bytes from the inputfile to the outputfile
    byte[] buffer = new byte[1024];
    int length;
    try {
        while ((length = fis.read(buffer))>0){
            output.write(buffer, 0, length);
        }
    } catch (IOException e) {
        Log.e("error",e.toString());
    }

    // Close the streams
    try {
        output.flush();
        output.close();
        fis.close();
    } catch (IOException e) {
        Log.e("error",e.toString());
    }
    ExerciseDb ret = new ExerciseDb(this);
    return ret;
}
</code>```

But I get a file not found exception on the line:

```<code> fis = new FileInputStream(dbFile);
</code>```

In every tutorial I look at this seems to be the correct path to access this file so I am not sure why its not working.  It's also strange because this exact code did work until I uninstalled the app on my phone and did a clean build and reinstalled the app from android studio

答:
Putting MainExerciseDatabaseOne.db in app/src/main/assets/databases will not make it auto copy to app database location (/data/data/<mypackage>/databases/MainExerciseDatabaseOne.db). The database is still in your app.

I have tried the same thing before (include a database). Here is how I do it.

Put MainExerciseDatabaseOne.db in app/res/raw/. Then, you can access the database through file stream and copy it to the app database location.

```<code>try{
    File db = new File(DB_PATH + ExerciseDb.DATABASE_NAME)
    InputStream in = context.getResources().openRawResource(R.raw.ExerciseDb)
    final FileOutputStream out = new FileOutputStream(dbFile);
    final byte[] buff = new byte[1024];
    int read;
    while ((read = in.read(buff)) > 0) {
        out.write(buff, 0, read);
    }
    in.close();
    out.close();
} catch (IOException ignored) {
}
</code>```

Then, you can access it normally with SQLiteOpenHelper using MainExerciseDatabaseOne.db as name.

If you insist to use asset folder, you can try this. I did test it but it should work.

```<code>InputStream in = context.getResources().getAssets().open("MainExerciseDatabaseOne.db")
</code>```

Title: Unable to load database file in android

Body:
I have a sqlite database file called MainExerciseDatabaseOne.db stored in my app/src/main/assets/databases folder.  I'm trying to open the file in a function of my main activity:

private ExerciseDb createDatabase(){
    final String inFileName = "/data/data/<mypackage>/databases/MainExerciseDatabaseOne.db";
    File dbFile = new File(inFileName);
    FileInputStream fis = null;
    try {
        fis = new FileInputStream(dbFile);
    } catch (FileNotFoundException e) {
        Log.e("error",e.toString());
    }
    String outFileName = DB_PATH + ExerciseDb.DATABASE_NAME;
    // Open the empty db as the output stream
    OutputStream output = null;
    try {
        output = new FileOutputStream(outFileName);
    } catch (FileNotFoundException e) {
        Log.e("error",e.toString());
    }
    // Transfer bytes from the inputfile to the outputfile
    byte[] buffer = new byte[1024];
    int length;
    try {
        while ((length = fis.read(buffer))>0){
            output.write(buffer, 0, length);
        }
    } catch (IOException e) {
        Log.e("error",e.toString());
    }

    // Close the streams
    try {
        output.flush();
        output.close();
        fis.close();
    } catch (IOException e) {
        Log.e("error",e.toString());
    }
    ExerciseDb ret = new ExerciseDb(this);
    return ret;
}

But I get a file not found exception on the line:

 fis = new FileInputStream(dbFile);

In every tutorial I look at this seems to be the correct path to access this file so I am not sure why its not working.  It's also strange because this exact code did work until I uninstalled the app on my phone and did a clean build and reinstalled the app from android studio

Body:
Putting MainExerciseDatabaseOne.db in app/src/main/assets/databases will not make it auto copy to app database location (/data/data/<mypackage>/databases/MainExerciseDatabaseOne.db). The database is still in your app.

I have tried the same thing before (include a database). Here is how I do it.

Put MainExerciseDatabaseOne.db in app/res/raw/. Then, you can access the database through file stream and copy it to the app database location.

try{
    File db = new File(DB_PATH + ExerciseDb.DATABASE_NAME)
    InputStream in = context.getResources().openRawResource(R.raw.ExerciseDb)
    final FileOutputStream out = new FileOutputStream(dbFile);
    final byte[] buff = new byte[1024];
    int read;
    while ((read = in.read(buff)) > 0) {
        out.write(buff, 0, read);
    }
    in.close();
    out.close();
} catch (IOException ignored) {
}

Then, you can access it normally with SQLiteOpenHelper using MainExerciseDatabaseOne.db as name.

If you insist to use asset folder, you can try this. I did test it but it should work.

InputStream in = context.getResources().getAssets().open("MainExerciseDatabaseOne.db")


问:
Rails 4 devise4.2:How to use the admin account to change the user mailbox, but do not send validation mail
when I change user's email, devise auto send a confirmation_instructions email to target email.How do I cancel this operation?</p>

```<code>user = User.last
user.email = "foo@example.com"
user.save
#the result is
user.email  => "bar@example.com"
user.unconfirmed_email => "foo@example.com"
</code>```

答:
Probably can help other user</p>

```<code>user = User.last
user.skip_reconfirmation!
user.email = "foo@example.com"
user.save
</code>```

Body:
when I change user's email, devise auto send a confirmation_instructions email to target email.How do I cancel this operation?

user = User.last
user.email = "foo@example.com"
user.save
#the result is
user.email  => "bar@example.com"
user.unconfirmed_email => "foo@example.com"

Body:
Probably can help other user

user = User.last
user.skip_reconfirmation!
user.email = "foo@example.com"
user.save


问:
strip remove '_' unexpectedly
```<code>>>> x = 'abc_cde_fgh'
>>> x.strip('abc_cde')
'fgh'
</code>```

_fgh is expected.

How to understard this result?

答:
Strip removes any characters it finds from either end from the substring: it doesn't remove a trailing or leading word.

This example demonstrates it nicely:

```<code>x.strip('ab_ch')
'de_fg'
</code>```

Since the characters "a", "b", "c", "h", and "_" are in the remove case, the leading "abc_c" are all removed. The other characters are not removed.

If you would like to remove a leading or trailing word, I would recommend using re or startswith/endswith.

```<code>def rstrip_word(str, word):
    if str.endswith(word):
        return str[:-len(word)]
    return str

def lstrip_word(str, word):
    if str.startswith(word):
        return str[len(word):]
    return str

def strip_word(str, word):
    return rstrip_word(lstrip_word(str, word), word)
</code>```

Removing Multiple Words

A very simple implementation (a greedy one) to remove multiple words from a string can be done as follows:

```<code>def rstrip_word(str, *words):
    for word in words:
        if str.endswith(word):
            return str[:-len(word)]
    return str

def lstrip_word(str, *words):
    for word in words:
        if str.startswith(word):
            return str[len(word):]
    return str

def strip_word(str, *words):
    return rstrip_word(lstrip_word(str, *words), *words)
</code>```

Please note this algorithm is greedy, it will find the first possible example and then return: it may not behave as you expect. Finding the maximum length match (although not too tricky) is a bit more involved.

```<code>>>> strip_word(x, "abc", "adc_")
'_cde_fgh'
</code>```

Title: strip remove '_' unexpectedly

Body:
>>> x = 'abc_cde_fgh'
>>> x.strip('abc_cde')
'fgh'

_fgh is expected.

How to understard this result?

Body:
Strip removes any characters it finds from either end from the substring: it doesn't remove a trailing or leading word.

This example demonstrates it nicely:

x.strip('ab_ch')
'de_fg'

Since the characters "a", "b", "c", "h", and "_" are in the remove case, the leading "abc_c" are all removed. The other characters are not removed.

If you would like to remove a leading or trailing word, I would recommend using re or startswith/endswith.

def rstrip_word(str, word):
    if str.endswith(word):
        return str[:-len(word)]
    return str

def lstrip_word(str, word):
    if str.startswith(word):
        return str[len(word):]
    return str

def strip_word(str, word):
    return rstrip_word(lstrip_word(str, word), word)

Removing Multiple Words

A very simple implementation (a greedy one) to remove multiple words from a string can be done as follows:

def rstrip_word(str, *words):
    for word in words:
        if str.endswith(word):
            return str[:-len(word)]
    return str

def lstrip_word(str, *words):
    for word in words:
        if str.startswith(word):
            return str[len(word):]
    return str

def strip_word(str, *words):
    return rstrip_word(lstrip_word(str, *words), *words)

Please note this algorithm is greedy, it will find the first possible example and then return: it may not behave as you expect. Finding the maximum length match (although not too tricky) is a bit more involved.

>>> strip_word(x, "abc", "adc_")
'_cde_fgh'


问:
How to compare two different times using an if else statement?
I'm trying to compare two different times to see which comes before the other, but I'm having trouble coming up with an else if statement that compares their suffixes (am and pm) and outputs the order of the first time relative to the other time.

EDIT: the date type of suffix1 and suffix2 are strings, the data type of time1 and time2 are int

So far, I have this piece of code that checks if the periods are equal:

```<code>if (suffix1.equals(suffix2))
  {
       if (time1 > time2)
       {
          System.out.print("After");
       }
       .....
  }
</code>```

is there a way to see which times' suffix comes before the other?

答:
I would think you’re after something like the following:

```<code>    String timeString1 = "2:00 PM";
    String timeString2 = "9:00 AM";

    DateTimeFormatter timeFormatParser
            = DateTimeFormatter.ofPattern("h:mm a", Locale.ENGLISH);
    LocalTime time1 = LocalTime.parse(timeString1, timeFormatParser);
    LocalTime time2 = LocalTime.parse(timeString2, timeFormatParser);
    if (time1.isAfter(time2)) {
        System.out.println("After");
    }
</code>```

With the strings in my example the code does print After. If your original time strings have a different format, I hope you can modify the format pattern string accordingly, otherwise follow up in a comment. Or maybe better, edit your question to specify your strings precisely. The letters you can use are documented here. Please be aware that the format pattern is case sensitive.

My DateTimeFormatter expects AM or PM in uppercase. If your strings have them in lowercase, there are a couple of options:

The simple: timeString1 = timeString1.toUpperCase(Locale.ENGLISH); and similarly for timeString2.

The more general but also more complex: Use a DateTimeFormatterBuilder to build a non-case-sensitive DateTimeFormatter.

PS Before the modern Java date and time API that I am using came out in 2014, one would often use a class called SimpleDateFormat to parse into a Date object. Nowadays stay away from that. The newer classes have shown to be considerably nicer to work with and more programmer friendly.

Body:
I'm trying to compare two different times to see which comes before the other, but I'm having trouble coming up with an else if statement that compares their suffixes (am and pm) and outputs the order of the first time relative to the other time.

EDIT: the date type of suffix1 and suffix2 are strings, the data type of time1 and time2 are int

So far, I have this piece of code that checks if the periods are equal:

if (suffix1.equals(suffix2))
  {
       if (time1 > time2)
       {
          System.out.print("After");
       }
       .....
  }

is there a way to see which times' suffix comes before the other?

Body:
I would think you’re after something like the following:

    String timeString1 = "2:00 PM";
    String timeString2 = "9:00 AM";

    DateTimeFormatter timeFormatParser
            = DateTimeFormatter.ofPattern("h:mm a", Locale.ENGLISH);
    LocalTime time1 = LocalTime.parse(timeString1, timeFormatParser);
    LocalTime time2 = LocalTime.parse(timeString2, timeFormatParser);
    if (time1.isAfter(time2)) {
        System.out.println("After");
    }

With the strings in my example the code does print After. If your original time strings have a different format, I hope you can modify the format pattern string accordingly, otherwise follow up in a comment. Or maybe better, edit your question to specify your strings precisely. The letters you can use are documented here. Please be aware that the format pattern is case sensitive.

My DateTimeFormatter expects AM or PM in uppercase. If your strings have them in lowercase, there are a couple of options:

The simple: timeString1 = timeString1.toUpperCase(Locale.ENGLISH); and similarly for timeString2.

The more general but also more complex: Use a DateTimeFormatterBuilder to build a non-case-sensitive DateTimeFormatter.

PS Before the modern Java date and time API that I am using came out in 2014, one would often use a class called SimpleDateFormat to parse into a Date object. Nowadays stay away from that. The newer classes have shown to be considerably nicer to work with and more programmer friendly.


问:
SQL Count rows in another table and join
I have 2 table in my database. The first is comments and the other is comments_votes.
I want to select all comments, and for each comment, select all it's votes from comments_votes, add them up together and join it with the first query as totalVote.

My comments table look like:

```<code>id      comment      video_id   date_sent
----------------------------------------
5      "...."           99        "2017-05-23"
18      "...."          99        "2017-05-23"
</code>```

comments_votes table look like:

```<code>id      user_id      comment_id   vote
----------------------------------------
45         86           5         1
45         23           5         1
78         12            18        -1
</code>```

And the final wished result would look like:

```<code>id      comment   video_id   votes_total
----------------------------------------
5      " ... "      99             2
18      "... "      99           -1
</code>```

I can manage simple SQL operations but this is beyond me. Is something like this even possible? If yes, how?

答:
```<code>SELECT c.id,comment,c.video_id,SUM(v.vote) AS Vote_total
FROM comments c, comments_votes v
WHERE c.id = v.comment_id
GROUP BY C.id, C.Comment, C.Video_ID;
</code>```

Body:
I have 2 table in my database. The first is comments and the other is comments_votes.
I want to select all comments, and for each comment, select all it's votes from comments_votes, add them up together and join it with the first query as totalVote.

My comments table look like:

id      comment      video_id   date_sent
----------------------------------------
5      "...."           99        "2017-05-23"
18      "...."          99        "2017-05-23"

comments_votes table look like:

id      user_id      comment_id   vote
----------------------------------------
45         86           5         1
45         23           5         1
78         12            18        -1

And the final wished result would look like:

id      comment   video_id   votes_total
----------------------------------------
5      " ... "      99             2
18      "... "      99           -1

I can manage simple SQL operations but this is beyond me. Is something like this even possible? If yes, how?


问:
How to addchild two 'folder', one is point, the other is polygon
```<code>$kml = new SimpleXMLElement('<kml xmlns="http://www.opengis.net/kml/2.2" xmlns:gx="http://www.google.com/kml/ext/2.2" xmlns:kml="http://www.opengis.net/kml/2.2" xmlns:atom="http://www.w3.org/2005/Atom"></kml>');

$kml->addChild('Document');
$kml->Document->addChild('Folder');
$kml->Document->addChild('Folder');
$kml->Document->addChild('Folder');
$kml->Document->Folder->addChild('name','a');
$kml->Document->Folder->addChild('name','b');
$kml->Document->Folder->addChild('name','c');
</code>```

I want to use PHP to make a KML from XML
but only show folder a in Google Earth. I need to show three folders in a web folder
like:

↓口poly (web folder)

```<code>↓口a (folder)
    →point1
    →point2
↓口b (folder)
    →polygon1
    →polygon2
↓口c (folder)
    →polyline1
    →polyline2
</code>```

答:
```<code>$kml->Document->addChild('Folder');
$kml->Document->Folder->addChild('name','a');
$kml->Document->addChild('Folder');
$kml->Document->Folder[1]->addChild('name','b');
$kml->Document->addChild('Folder');
$kml->Document->Folder[2]->addChild('name','c');
</code>```

it`s work

thx everyone

Body:
$kml = new SimpleXMLElement('<kml xmlns="http://www.opengis.net/kml/2.2" xmlns:gx="http://www.google.com/kml/ext/2.2" xmlns:kml="http://www.opengis.net/kml/2.2" xmlns:atom="http://www.w3.org/2005/Atom"></kml>');

$kml->addChild('Document');
$kml->Document->addChild('Folder');
$kml->Document->addChild('Folder');
$kml->Document->addChild('Folder');
$kml->Document->Folder->addChild('name','a');
$kml->Document->Folder->addChild('name','b');
$kml->Document->Folder->addChild('name','c');

I want to use PHP to make a KML from XML
but only show folder a in Google Earth. I need to show three folders in a web folder
like:

↓口poly (web folder)

↓口a (folder)
    →point1
    →point2
↓口b (folder)
    →polygon1
    →polygon2
↓口c (folder)
    →polyline1
    →polyline2

Body:
$kml->Document->addChild('Folder');
$kml->Document->Folder->addChild('name','a');
$kml->Document->addChild('Folder');
$kml->Document->Folder[1]->addChild('name','b');
$kml->Document->addChild('Folder');
$kml->Document->Folder[2]->addChild('name','c');

it`s work

thx everyone