I'm unable to open links. Tapping the title and the starburst icon does nothing at all. Similarly, tapping links in posts and links in the about page also does nothing (view licenses and close works; developer, source code, and like do not).
logcat, error
I'm pretty sure the relevant part is ChromeCustomTabs is not available!
, however chrome is absolutely installed and up to date (though I mostly use Lynket with Firefox as renderer; I've got Chrome, Brave, Firefox, Firefox Nightly, jQuarks, Samsung Internet, and Samsung Internet Beta installed). Even if this wasn't the case for me, custom tabs should fall back to the default browser.
The logcat below was created with pidcat com.jiaqifeng.hacki
.
Process com.jiaqifeng.hacki created for pre-top-activity {com.jiaqifeng.hacki/com.jiaqifeng.hacki.MainActivity}
PID: 13708 UID: GIDs:
b' ProcessState D Binder ioctl to enable oneway spam detection failed: Invalid argument'
b' ActivityThread D setConscryptValidator'
b' D setConscryptValidator - put'
b' D handleBindApplication()++ app=com.jiaqifeng.hacki'
b'atibilityChangeReporter D Compat change id reported: 171979766; UID 10611; state: DISABLED'
b' jiaqifeng.hack W ClassLoaderContext classpath element mismatch. expected=/system_ext/framework/androidx.window.sidecar.jar, found=/system/system_ext/framework/androidx.window.sidecar.jar (PCL[]{PCL[/system_ext/framework/androidx.window.sidecar.jar*3941666722]} | PCL[]{PCL[/system/system_ext/framework/androidx.window.sidecar.jar*3941666722]})'
b" GraphicsEnvironment V ANGLE Developer option for 'com.jiaqifeng.hacki' set to: 'default'"
b' V App is not on the allowlist for updatable production driver.'
b' LoadedApk D LoadedApk::makeApplication() appContext.mOpPackageName=com.jiaqifeng.hacki appContext.mBasePackageName=com.jiaqifeng.hacki'
b' NetworkSecurityConfig D No Network Security Config specified, using platform default'
b' D No Network Security Config specified, using platform default'
b' WM-WrkMgrInitializer D Initializing WorkManager with default configuration.'
b' ActivityThread D handleBindApplication() --'
b' OpenGLRenderer D RenderThread::requireGlContext()'
b' AdrenoGLES-0 I QUALCOMM build : 3dad7f8ed7, I593c16c433'
b' I Build Date : 10/01/21'
b' I OpenGL ES Shader Compiler Version: EV031.32.02.02'
b' I Local Branch :'
b' I Remote Branch : refs/tags/AU_LINUX_ANDROID_LA.UM.9.1.R1.11.00.00.604.073'
b' I Remote Branch : NONE'
b' I Reconstruct Branch : NOTHING'
b' I Build Config : S P 10.0.7 AArch64'
b' I Driver Path : /vendor/lib64/egl/libGLESv2_adreno.so'
b' I PFP: 0x016ee190, ME: 0x00000000'
b'atibilityChangeReporter D Compat change id reported: 160794467; UID 10611; state: DISABLED'
b' OpenGLRenderer D RenderThread::setGrContext()'
b' WebViewFactory I Loading com.google.android.webview version 101.0.4951.61 (code 495106134)'
b' cr_WVCFactoryProvider I Loaded version=101.0.4951.61 minSdkVersion=29 isBundle=true multiprocess=true packageId=2'
b' cr_LibraryLoader I Successfully loaded native library'
b' cr_CachingUmaRecorder I Flushed 8 samples from 8 histograms.'
b'vityAndFragmentDelegate W A splash screen was provided to Flutter, but this is deprecated. See flutter.dev/go/android-splash-migration for migration steps.'
b' DecorView I [INFO] isPopOver=false, config=true'
b' I updateCaptionType >> DecorView@49e3df5[], isFloating=false, isApplication=true, hasWindowControllerCallback=true, hasWindowDecorCaption=false'
b' D setCaptionType = 0, this = DecorView@49e3df5[]'
b' I getCurrentDensityDpi: from real metrics. densityDpi=360 msg=resources_loaded'
b' I notifyKeepScreenOnChanged: keepScreenOn=false'
b'l@4a3a2d7[MainActivity] I setView = com.android.internal.policy.DecorView@49e3df5 TM=true'
b' SurfaceView@cc5e00b I onWindowVisibilityChanged(0) true io.flutter.embedding.android.h{cc5e00b V.E...... ......I. 0,0-0,0} of ViewRootImpl@4a3a2d7[MainActivity]'
b'l@4a3a2d7[MainActivity] I Relayout returned: old=(0,0,1600,2560) new=(0,0,1600,2560) req=(1600,2560)0 dur=12 res=0x7 s={true -5476376632029528064} ch=true fn=-1'
b' SurfaceView@cc5e00b I windowStopped(false) true io.flutter.embedding.android.h{cc5e00b V.E...... ......ID 0,0-1600,2452} of ViewRootImpl@4a3a2d7[MainActivity]'
b'l@4a3a2d7[MainActivity] I [DP] dp(1) 1 android.view.ViewRootImpl.reportNextDraw:11374 android.view.ViewRootImpl.performTraversals:4167 android.view.ViewRootImpl.doTraversal:2893'
b' hw-ProcessState D Binder ioctl to enable oneway spam detection failed: Invalid argument'
b' OpenGLRenderer D eglCreateWindowSurface'
b' SurfaceView@cc5e00b I pST: sr = Rect(0, 0 - 1600, 2452) sw = 1600 sh = 2452'
b' I onSSPAndSRT: pl = 0 pt = 0 sx = 1.0 sy = 1.0'
b' I pST: mTmpTransaction.apply, mTmpTransaction = android.view.SurfaceControl$Transaction@c06e7bc'
b' I updateSurface: mVisible = true mSurface.isValid() = true'
b' I updateSurface: mSurfaceCreated = false surfaceChanged = true visibleChanged = true'
b' I surfaceCreated 1 #8 io.flutter.embedding.android.h{cc5e00b V.E...... ......ID 0,0-1600,2452}'
b' I surfaceChanged (1600,2452) 1 #8 io.flutter.embedding.android.h{cc5e00b V.E...... ......ID 0,0-1600,2452}'
b'l@4a3a2d7[MainActivity] I [DP] dp(2) 1 android.view.SurfaceView.updateSurface:1375 android.view.SurfaceView.lambda$new$1$SurfaceView:254 android.view.SurfaceView$$ExternalSyntheticLambda2.onPreDraw:2'
b' I [DP] pdf(1) 1 android.view.SurfaceView.notifyDrawFinished:599 android.view.SurfaceView.performDrawFinished:586 android.view.SurfaceView.$r8$lambda$st27mCkd9jfJkTrN_P3qIGKX6NY:0'
b' SurfaceView@cc5e00b I uSP: rtp = Rect(0, 0 - 1600, 2452) rtsw = 1600 rtsh = 2452'
b' I onSSPAndSRT: pl = 0 pt = 0 sx = 1.0 sy = 1.0'
b' I aOrMT: uB = true t = android.view.SurfaceControl$Transaction@f42345 fN = 1 android.view.SurfaceView.access$500:124 android.view.SurfaceView$SurfaceViewPositionUpdateListener.positionChanged:1728 android.graphics.RenderNode$CompositePositionUpdateListener.positionChanged:319'
b' I aOrMT: vR.mWNT, vR = ViewRootImpl@4a3a2d7[MainActivity]'
b'l@4a3a2d7[MainActivity] I mWNT: t = android.view.SurfaceControl$Transaction@f42345 fN = 1 android.view.SurfaceView.applyOrMergeTransaction:1628 android.view.SurfaceView.access$500:124 android.view.SurfaceView$SurfaceViewPositionUpdateListener.positionChanged:1728'
b' I mWNT: merge t to BBQ'
b' BufferQueueProducer I [ViewRootImpl@4a3a2d7[MainActivity]#0(BLAST Consumer)0](id:358c00000000,api:1,p:13708,c:13708) queueBuffer: queued for the first time.'
b'l@4a3a2d7[MainActivity] I [DP] pdf(0) 1 android.view.ViewRootImpl.lambda$addFrameCompleteCallbackIfNeeded$3$ViewRootImpl:4969 android.view.ViewRootImpl$$ExternalSyntheticLambda16.run:6 android.os.Handler.handleCallback:938'
b' I [DP] rdf()'
b' D reportDrawFinished (fn: -1)'
b' I MSG_WINDOW_FOCUS_CHANGED 1 1'
b' InputMethodManager D startInputInner - Id : 0'
b' I startInputInner - mService.startInputOrWindowGainedFocus'
b' D startInputInner - Id : 0'
b' BufferQueueProducer I [SurfaceView - com.jiaqifeng.hacki/com.jiaqifeng.hacki.MainActivity@cc5e00b@0#1(BLAST Consumer)1](id:358c00000001,api:1,p:13708,c:13708) queueBuffer: queued for the first time.'
b'l@4a3a2d7[MainActivity] I ViewPostIme pointer 0'
b' I ViewPostIme pointer 1'
b' I ViewPostIme pointer 0'
b' I ViewPostIme pointer 1'
b' UrlLauncher I component name for https://www.priv.gc.ca/en/opc-news/news-and-announcements/2022/nr-c_220601/ is {kuesji.link_eye/kuesji.link_eye.Main}'
b' flutter E [ERROR:flutter/lib/ui/ui_dart_state.cc(198)] Unhandled Exception: PlatformException(ChromeBrowserManager, ChromeCustomTabs is not available!, null, null)'
b' E #0 StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:607)'
b' E #1 MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:167)'
b' E <asynchronous suspension>'
b' E #2 ChromeSafariBrowser.open (package:flutter_inappwebview/src/chrome_safari_browser/chrome_safari_browser.dart:112)'
b' E <asynchronous suspension>'
b'l@4a3a2d7[MainActivity] I ViewPostIme pointer 0'
b' I ViewPostIme pointer 1'
b' UrlLauncher I component name for https://news.ycombinator.com/item?id=31585612 is {kuesji.link_eye/kuesji.link_eye.Main}'
b' flutter E [ERROR:flutter/lib/ui/ui_dart_state.cc(198)] Unhandled Exception: PlatformException(ChromeBrowserManager, ChromeCustomTabs is not available!, null, null)'
b' E #0 StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:607)'
b' E #1 MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:167)'
b' E <asynchronous suspension>'
b' E #2 ChromeSafariBrowser.open (package:flutter_inappwebview/src/chrome_safari_browser/chrome_safari_browser.dart:112)'
b' E <asynchronous suspension>'
b'l@4a3a2d7[MainActivity] I ViewPostIme pointer 0'
b' I ViewPostIme pointer 1'
b' I ViewPostIme pointer 0'
b' I ViewPostIme pointer 1'
b' I ViewPostIme pointer 0'
b' I ViewPostIme pointer 1'
b' I ViewPostIme pointer 0'
b' I ViewPostIme pointer 1'
b' I ViewPostIme pointer 0'
b' I ViewPostIme pointer 1'
b' I ViewPostIme pointer 0'
b' I ViewPostIme pointer 1'
b' I ViewPostIme pointer 0'
b' I ViewPostIme pointer 1'
b' I ViewPostIme pointer 0'
b' I ViewPostIme pointer 1'
b' I ViewPostIme pointer 0'
b' I ViewPostIme pointer 1'
b' I ViewPostIme pointer 0'
b' I ViewPostIme pointer 1'
b' I ViewPostIme pointer 0'
b' I ViewPostIme pointer 1'
b' UrlLauncher I component name for https://livinglist.github.io is {kuesji.link_eye/kuesji.link_eye.Main}'
b' flutter E [ERROR:flutter/lib/ui/ui_dart_state.cc(198)] Unhandled Exception: PlatformException(ChromeBrowserManager, ChromeCustomTabs is not available!, null, null)'
b' E #0 StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:607)'
b' E #1 MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:167)'
b' E <asynchronous suspension>'
b' E #2 ChromeSafariBrowser.open (package:flutter_inappwebview/src/chrome_safari_browser/chrome_safari_browser.dart:112)'
b' E <asynchronous suspension>'
b'l@4a3a2d7[MainActivity] I ViewPostIme pointer 0'
b' I ViewPostIme pointer 1'
b' UrlLauncher I component name for https://github.com/Livinglist/Hacki is {kuesji.link_eye/kuesji.link_eye.Main}'
b' flutter E [ERROR:flutter/lib/ui/ui_dart_state.cc(198)] Unhandled Exception: PlatformException(ChromeBrowserManager, ChromeCustomTabs is not available!, null, null)'
b' E #0 StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:607)'
b' E #1 MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:167)'
b' E <asynchronous suspension>'
b' E #2 ChromeSafariBrowser.open (package:flutter_inappwebview/src/chrome_safari_browser/chrome_safari_browser.dart:112)'
b' E <asynchronous suspension>'
b'l@4a3a2d7[MainActivity] I ViewPostIme pointer 0'
b' I ViewPostIme pointer 1'
b' UrlLauncher I component name for https://play.google.com/store/apps/details?id=com.jiaqifeng.hacki&hl=en_US&gl=US is {com.android.vending/com.google.android.finsky.activities.MainActivity}'
b' flutter E [ERROR:flutter/lib/ui/ui_dart_state.cc(198)] Unhandled Exception: PlatformException(ChromeBrowserManager, ChromeCustomTabs is not available!, null, null)'
b' E #0 StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:607)'
b' E #1 MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:167)'
b' E <asynchronous suspension>'
b' E #2 ChromeSafariBrowser.open (package:flutter_inappwebview/src/chrome_safari_browser/chrome_safari_browser.dart:112)'
b' E <asynchronous suspension>'
b'l@4a3a2d7[MainActivity] I ViewPostIme pointer 0'
b' I ViewPostIme pointer 1'
b' I ViewPostIme key 0'
b' I ViewPostIme key 1'
b' I MSG_WINDOW_FOCUS_CHANGED 0 1'
b" InputTransport D Input channel destroyed: 'ClientS', fd=175"
b'l@4a3a2d7[MainActivity] I handleAppVisibility mAppVisible=true visible=false'
b' SurfaceView@cc5e00b I onWindowVisibilityChanged(8) false io.flutter.embedding.android.h{cc5e00b V.E...... ........ 0,0-1600,2452} of ViewRootImpl@4a3a2d7[MainActivity]'
b' I pST: mTmpTransaction.apply, mTmpTransaction = android.view.SurfaceControl$Transaction@c06e7bc'
b' I surfaceDestroyed callback.size 1 #2 io.flutter.embedding.android.h{cc5e00b V.E...... ........ 0,0-1600,2452}'
b' I updateSurface: mVisible = false mSurface.isValid() = true'
b' I tryReleaseSurfaces: set mRtReleaseSurfaces = true'
b' I 112235436 wPL, frameNr = 0'
b' I remove() from RT android.view.SurfaceView$SurfaceViewPositionUpdateListener@6b093ac Surface(name=SurfaceView - com.jiaqifeng.hacki/com.jiaqifeng.hacki.MainActivity@cc5e00b@0)/@0x9357875'
b' I remove() io.flutter.embedding.android.h{cc5e00b V.E...... ........ 0,0-1600,2452} Surface(name=SurfaceView - com.jiaqifeng.hacki/com.jiaqifeng.hacki.MainActivity@cc5e00b@0)/@0x9357875'
b' I aOrMT: uB = true t = android.view.SurfaceControl$Transaction@f693e98 fN = 0 android.view.SurfaceView.access$500:124 android.view.SurfaceView$SurfaceViewPositionUpdateListener.positionLost:1785 android.graphics.RenderNode$CompositePositionUpdateListener.positionLost:326'
b' I aOrMT: vR.mWNT, vR = ViewRootImpl@4a3a2d7[MainActivity]'
b'l@4a3a2d7[MainActivity] I mWNT: t = android.view.SurfaceControl$Transaction@f693e98 fN = 0 android.view.SurfaceView.applyOrMergeTransaction:1628 android.view.SurfaceView.access$500:124 android.view.SurfaceView$SurfaceViewPositionUpdateListener.positionLost:1785'
b' I mWNT: merge t to BBQ'
b' OpenGLRenderer D setSurface called with nullptr'
b' D setSurface() destroyed EGLSurface'
b' D destroyEglSurface'
b'l@4a3a2d7[MainActivity] I Relayout returned: old=(0,0,1600,2560) new=(0,0,1600,2560) req=(1600,2560)8 dur=5 res=0x5 s={false 0} ch=true fn=34'
b' SurfaceView@cc5e00b I windowStopped(true) false io.flutter.embedding.android.h{cc5e00b V.E...... ........ 0,0-1600,2452} of ViewRootImpl@4a3a2d7[MainActivity]'
b' D updateSurface: surface is not valid'
b' D updateSurface: surface is not valid'
b'l@4a3a2d7[MainActivity] I stopped(true) old=false'
b' SurfaceView@cc5e00b D updateSurface: surface is not valid'
b' I onDetachedFromWindow: tryReleaseSurfaces()'
b' OpenGLRenderer D setSurface called with nullptr'
b'l@4a3a2d7[MainActivity] I dispatchDetachedFromWindow'
b" InputTransport D Input channel destroyed: '678b920', fd=154"
Process com.jiaqifeng.hacki (PID: 13708) ended