开发日记-20190423 关键词 android静态代理类代理方法打断点debug 退出当前activity 闪退
其实以前就已经遇到过这样的问题,但是很遗憾,一直没有找到问题所在,今天下定决心,弄了一个下午,终于发现了问题所在。不妨在你的真机上运行这样的代码,整个页面的布局其实真的很简单,就是在页面的中心有一个可点击的按钮,点击按钮后创建一个Runnable的代理类,然后运行run这个代理类。我知道大家其实都很忙,所以连布局也给大家传上来。
然后打好断点启动debug,我在华为真机上测试了一个下午,在实现了InvocationHandler的类中的invoke方法中打断点时,在debug到invoke方法时,会直接退出当前的activity,但是并不是闪退,因为界面会回到上一个activity界面,因为没有崩溃,所以也不会有崩溃日志来给你分析,而且这个问题如果整改运行不debug时并不会出现,纳闷了一个下午。然后我问过群里的大佬时,群里的大佬说也遇到过这样的问题,而且当时出现问题的机器是华为机。 = =,我的开发机的型号是华为DUA-AL00,刚才回到家里,用as自带的模拟器进行了尝试,在这一行能正常打断点debug了,看来以后开发要选测试机还是要选谷歌亲儿子nexus,筹钱买台吧,不然每次这么踩坑也不是办法= =
综上:解决方案是,尝试在android模拟器上进行开发或者使用非华为机,不是我针对华为,只是群里大佬和我的机器都是华为机,如果说这是巧合的话,也太巧合了= =
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"tools:context=".MainActivity"><Buttonandroid:id="@+id/trigger"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Hello World!"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintLeft_toLeftOf="parent"app:layout_constraintRight_toRightOf="parent"app:layout_constraintTop_toTopOf="parent" /></android.support.constraint.ConstraintLayout>
public class MainActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);final Runnable runnable = new Runnable() {@Overridepublic void run() {int a = 1;}};findViewById(R.id.trigger).setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {Runnable proxyInstance = (Runnable) Proxy.newProxyInstance(getApplicationContext().getClassLoader(),new Class<?>[]{Runnable.class}, new InvocationHandler() {@Overridepublic Object invoke(Object proxy, Method method, Object[] args) {runnable.run();//在此处打断点return null;}});proxyInstance.run();}});}
}
好了,突然想起来,要中二一下,那就中二一下吧~
总有一天你会老去,而我,将会加冕为王!
开发日记-20190423 关键词 android静态代理类代理方法打断点debug 退出当前activity 闪退相关推荐
- 开发日记-20190423 关键词 模块化完整方案实现 blog读后感
20190423-开发日记 关键词 模块化完整方案实现 blog读后感 参考并感谢: Android 模块化完整方案实现 https://blog.csdn.net/yalinfendou/artic ...
- Android之TelephonyManager类的方法详解
林计钦-JAVA java技术群:127834248 博客园 首页 社区 新随笔 联系 订阅 管理 随笔-105 评论-24 文章-0 trackbacks-0 Andr ...
- 开发日记-20190424 关键词 阶段性开发心得和小结
Android开发学习小结 -图片因为是以前下下来的,所以出处真的记不太清楚了,如果有清楚出处的欢迎指正,我加上去,另外,这只是我的个人学习小结,并不是特地用于分享的,如果观赏有任何的不悦,还请谅解. ...
- 开发日记-20190513 关键词 汇编语言(六)
其实,每次当我写一篇开发日记,并且这篇开发日记并没有关键词,或者我并没有和你扯东扯西的情况下... 这意味着我这天偷懒了= = ;AddTwo.asm --两个32位整数相加.386.model fl ...
- 开发日记-20190507 关键词 java通过id直接操作视图
其实今天有点小私心,毕竟这个东西个人感觉很酷,但是说真的,我还是信奉一件事情. 天外有天,人外有人.很多东西我视为酷炫的东西,很有可能在别人眼里看来土气地掉渣.这也是我很多时候用来鞭策和激励自己的话. ...
- 开发日记-20190511 关键词 onStart()和onResume()存在的原因(猜测篇)
我有言在先,今天这个是猜测篇,没有经过证实,有一定可能是我的瞎猜= =,明天等我证实玩会做出相应的修改,把真相呈现出来= = 很多时候真的很想偷懒,但是没办法,虽然今天看了一下午lol季后赛的比赛,晚 ...
- 开发日记-20190328 关键词 利用eolinker一键快速生成API接口文档
今天感觉效率真的很低= =各个层面的,apk发布到现场发现出现了问题,所以一个下午都在忙着解决现场出现的问题,领导一直打电话询问进度,午觉也没有睡所以今天预计的很多计划都处于停滞状态,像昨天规划的今天 ...
- 代理类 invoke方法没有返回值怎么办_何为动态代理?
在程序运行期,创建目标对象的代理对象,对目标对象中的方法进行功能性增强的一种技术: 它就是JVM中,对象方法的拦截器 write less do more!! 回顾OOP(面向对象编程) 三大特征:封 ...
- 关于android从入门到精通4.1.9范例1出现的闪退的问题
自从上次使用Intent,在activity中打开另外一个activity的时候,找了好久都没有找到问题在哪里,最后发现问题是出在AndroidManifest里面,我并未在里面声明新创建的activ ...
最新文章
- 【组队学习】【24期】零基础入门语音识别(食物声音识别)
- 用敏捷开发工具可视化的进行Sprint规划
- jquery计算表格列,求和
- 五种境界之 二进制转换为十进制(C语言版)
- CreateEvent的使用方法
- 洛谷p1208 水题贪心 思想入门
- iOS开发之ImageView复用实现图片无限轮播
- CLOSE_WAIT 和TCP_KEEPALIVE
- C++ 中有大量的函数用来操作以‘\0‘结尾的字符串
- 我为什么还要造轮子?欠踹?Monk.UI表单美化插件诞生记!
- .net下Selenium2使用方法总结
- linux文件三种时间及stat的用法
- python 拟牛顿法 求非线性方程_C语言实现迭代法求非线性方程的根
- win10环境下VTK7.1的编译和Qt调用VTK的详细教程二(VS2013编译支持Qt的VTK库)
- 如何使用Spring优雅地处理REST异常
- activity任意节点跳转
- python怎么写接口自动化_python接口自动化 小结
- [C++]实现10以内整数的简单科学计算器
- 软件测试用例编写方法
- TeeChart Pro ActiveX教程(十九):TeeChart工具集(六)
热门文章
- 点击area不出现黑框_6种黑框玻璃门隔断,凭高颜值和实用性成为小户型新宠!...
- js原型和原型链_重学js --原型与原型链
- 安卓手机测评_安卓手机8G运存,比不上iPhone 2G?终于知道原因了!
- Idea之使用Gradle开发Java项目
- Linux下core文件调试方法
- java线程顺序输出_多线程按顺序输出ABC
- java cell报错_有一个小小点问题,现在我想从eclipse上读取Excel表
- spark 简单实战_大数据入门与实战-Spark上手
- C语言程序设计蔺德军,C语言程序设计上机实验与习题解答(第2版)
- 32 usb 配置描述符_USB协议详解第4讲(USB描述符标准配置描述符)