Giter Site home page Giter Site logo

Comments (9)

xmuSistone avatar xmuSistone commented on June 29, 2024 2

@Biekangdong 集成三方库FreeReflection

from persistentrecyclerview.

xmuSistone avatar xmuSistone commented on June 29, 2024 1

多谢大神,这个可以了,还有我那个PersistentCoordinatorLayout vivos9也有问题,上滑惯性不会传递到recycleview里面,链接:https://yangsa123.oss-cn-beijing.aliyuncs.com/690213f940b516dae4debef8ad43ec21.mp4

@Biekangdong PersistentCoordinatorLayout的问题也已修复,拉最新代码即可

from persistentrecyclerview.

xmuSistone avatar xmuSistone commented on June 29, 2024 1

@Biekangdong 荣耀手机问题也适配好了,拉最新代码即可

from persistentrecyclerview.

xmuSistone avatar xmuSistone commented on June 29, 2024

@Biekangdong 我试了targetSdkVersion=compileSdkVersion=30 是没问题的啊

from persistentrecyclerview.

Biekangdong avatar Biekangdong commented on June 29, 2024

@Biekangdong 我试了targetSdkVersion=compileSdkVersion=30 是没问题的啊

vivos9 版本11,有这个问题,下面有链接:
https://yangsa123.oss-cn-beijing.aliyuncs.com/WeChat_20220117205847.mp4

from persistentrecyclerview.

xmuSistone avatar xmuSistone commented on June 29, 2024

@Biekangdong 我试了vivo确实有此问题,最新代码已提交,如还有其它问题请再反馈

from persistentrecyclerview.

Biekangdong avatar Biekangdong commented on June 29, 2024

多谢大神,这个可以了,还有我那个PersistentCoordinatorLayout vivos9也有问题,上滑惯性不会传递到recycleview里面,链接:https://yangsa123.oss-cn-beijing.aliyuncs.com/690213f940b516dae4debef8ad43ec21.mp4

from persistentrecyclerview.

Biekangdong avatar Biekangdong commented on June 29, 2024

PersistentCoordinatorLayout 还有个问题,高api,30或者31,下面反射那个地方会崩溃

// Android 9.0及以上,非公开Api接口被禁用,无法获取mDuration字段
// 此处伪装成系统身份,绕过 @hide 检查
val metaGetDeclaredField = Class::class.java.getDeclaredMethod("getDeclaredField", String::class.java)
durationField = metaGetDeclaredField.invoke(scrollerYObj.javaClass, "mDuration") as Field
durationField.isAccessible = true

报错log
java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:636)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1031)
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:626)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1031) 
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Method.invoke(Native Method)
at com.stone.persistent.library.HookedScroller.(HookedScroller.kt:40)
at com.stone.persistent.library.PersistentCoordinatorLayout.hookScroller(PersistentCoordinatorLayout.kt:54)
at com.stone.persistent.library.PersistentCoordinatorLayout.access$hookScroller(PersistentCoordinatorLayout.kt:16)
at com.stone.persistent.library.PersistentCoordinatorLayout$onFinishInflate$1.onGlobalLayout(PersistentCoordinatorLayout.kt:33)
at android.view.ViewTreeObserver.dispatchOnGlobalLayout(ViewTreeObserver.java:1079)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:3354)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:2230)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:8754)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1031)
at android.view.Choreographer.doCallbacks(Choreographer.java:849)
at android.view.Choreographer.doFrame(Choreographer.java:779)
at android.view.Choreographer$FrameHandler.handleMessage(Choreographer.java:954)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:257)
at android.app.ActivityThread.main(ActivityThread.java:8215)
at java.lang.reflect.Method.invoke(Native Method) 
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:626) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1031) 
Caused by: java.lang.NoSuchFieldException: No field mDuration in class Landroid/widget/OverScroller$SplineOverScroller; (declaration of 'android.widget.OverScroller$SplineOverScroller' appears in /system/framework/framework.jar!classes3.dex)
at java.lang.Class.getDeclaredField(Native Method)
at java.lang.reflect.Method.invoke(Native Method) 
at com.stone.persistent.library.HookedScroller.(HookedScroller.kt:40) 
at com.stone.persistent.library.PersistentCoordinatorLayout.hookScroller(PersistentCoordinatorLayout.kt:54) 
at com.stone.persistent.library.PersistentCoordinatorLayout.access$hookScroller(PersistentCoordinatorLayout.kt:16) 
at com.stone.persistent.library.PersistentCoordinatorLayout$onFinishInflate$1.onGlobalLayout(PersistentCoordinatorLayout.kt:33) 
at android.view.ViewTreeObserver.dispatchOnGlobalLayout(ViewTreeObserver.java:1079) 
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:3354) 
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:2230) 
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:8754) 
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1031) 
at android.view.Choreographer.doCallbacks(Choreographer.java:849) 
at android.view.Choreographer.doFrame(Choreographer.java:779) 
at android.view.Choreographer$FrameHandler.handleMessage(Choreographer.java:954) 
at android.os.Handler.dispatchMessage(Handler.java:106) 
at android.os.Looper.loop(Looper.java:257) 
at android.app.ActivityThread.main(ActivityThread.java:8215) 
at java.lang.reflect.Method.invoke(Native Method) 
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:626) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1031) 

from persistentrecyclerview.

Biekangdong avatar Biekangdong commented on June 29, 2024

多谢大神,这个可以了,还有我那个PersistentCoordinatorLayout vivos9也有问题,上滑惯性不会传递到recycleview里面,链接:https://yangsa123.oss-cn-beijing.aliyuncs.com/690213f940b516dae4debef8ad43ec21.mp4

@Biekangdong PersistentCoordinatorLayout的问题也已修复,拉最新代码即可

大神,还有个荣耀手机也有这个问题
qq

from persistentrecyclerview.

Related Issues (16)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.