在研究Android热修复时,偶然找到了Altsuki大神的博客,深受其益。自己实际操作遇到不少问题,在此汇总以自省
1.在使用Javassist注入代码过程中遇到了
javassist.CannotCompileException: [source error] class not found: com.xxxx.xxx.AnyClass
原因:在注入时没有将注入待的Class加入到ClassPool
使用classPool.appendClassPath(AnyClassPath)方法加入即可
2.在使用groovy的过程中,遇到了No signature of method: static byte.getAt() is applicable for argument types: (java.lang.Integer) values: [XXX]
原因:自己逗逼,在定义byte数组时写成了byte[] buf = byte[1024]或者byte[] buf = nre byte[1024]
3,遇到java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.Object android.content.Context.getSystemService(java.lang.String)' on a null object reference
原因:上文(Activity或Fragment)在构造下文(子Fragment/Adapter)传递给下文的上下文(Context)为空
本文记录了作者在进行Android热修复过程中遇到的问题及解决方案,包括使用Javassist时未正确加载Class、groovy语法错误以及NullPointerException异常等。
2677

被折叠的 条评论
为什么被折叠?



