当前位置: 首页 > news >正文

校园二手交易网站要怎么做呀常用的网络营销方法及效果

校园二手交易网站要怎么做呀,常用的网络营销方法及效果,安阳中飞网站建设,北京手机网站学更好的别人, 做更好的自己。 ——《微卡智享》 本文长度为1623字,预计阅读5分钟 前言 上一篇《Android Aidl跨进程通讯的简单使用》中介绍了跨进程的通讯处理,在进程间的数据通过Aidl实现了交互,项目中经常会遇到Bug&#xff0c…

学更好的别人,

做更好的自己。

——《微卡智享》

b05f933ce04b28ec3c563c5f6adc2eea.jpeg

本文长度为1623,预计阅读5分钟

前言

上一篇《Android Aidl跨进程通讯的简单使用》中介绍了跨进程的通讯处理,在进程间的数据通过Aidl实现了交互,项目中经常会遇到Bug,往往通过异常捕获来定位问题,所以这一篇我们就来看看跨进程之间的异常捕获。

53e11fca21890b22cdf0f9aab6add7fd.png

实现效果

521316c4ff2cb3ae4906e786567de5c5.gif

62c008463679b297cceaed9f193e809c.jpeg

跨进程捕获异常实现

a7c1fb742781c66a2c74806c42ed5b04.png

微卡智享

项目Demo还是用上一篇中的Demo,文中曾提到过创建AIDL文件和数据类后,需要ReBuild一下

在aidl中使用了数据类TestData,所以Aidl文件和数据类的文件必须保证在同一包名下,并不是说放在同一文件夹下,实体类TestData文件在主Code文件夹下(java目录下),包名和aidl文件夹中放置.aidl文件的包名一致。保证这样后再重新Rebuild就不会报错了。

Vaccae,公众号:微卡智享Android Aidl跨进程通讯的简单使用

通过Build生成的ITestDataAidlInterface JAVA类,如下图

16928330c49fd45eaa183eb7caf2ce27.png

98cd48d1490f8db80ecc5e414dc1fcd6.png

然后在该类中可以看到定义的三个方法,后面都带有throws android.os.RemoteException的抛异常处理,那就用其中getTestData这个方案来进行抛异常的处理。

直接在Demo中的AidlService中修改这个方法的实现,如下图:

c2774c0908289b755de5e39864ba7a96.png

然后在Client端修改调用时捕获异常

44c6fbed2905c864060bd77f22608873.png

binding.btngetdata.setOnClickListener { view ->try {AidlProcessUtil.getAidlService()?.getTestData("00001")?.let { p ->val msg = "编码${p.code} 名称:${p.name} 价格:${p.price} 数量:${p.qty}"Snackbar.make(view, msg, Snackbar.LENGTH_LONG).setAction("Action", null).show()}} catch (e: Exception) {Snackbar.make(view, e.message.toString(), Snackbar.LENGTH_LONG).show()}}

运行程序后发现点击按钮并没有Snake的弹窗提醒,程序也没有崩溃,那就来看看Log日志

72a5ca6e632abb970652cc6b7ce039e4.png

日志中可以看到,有异常输出记录,Uncaught remote exception!  (Exceptions are not yet supported across processes.),竟然写的是进程之间不支持异常。

那从ITestDataAidlInterface查看一下,可以看到reply中有writeException,那我们下一个源码看看Parcel中是怎么实现的

f6756908333dd5675d178d7b26168abb.png

定位到Parcel中的writeException,在里面再找到getExceptionCode

29a5c60d541058306d08a67feda76aaa.png

8d27bd8834cd2e402b4a7150a1f7aef8.png

在这里面看到的Exception中的类型,并没有RemoteException,看到这大概就明白了,那我们修改一下抛出异常的类型,改为上面第一个异常类型SecurityException

a0fbeb0e22d4ef4dee05c36ee32527aa.png

Client客户端异常捕获不用改,重新运行后,发现可以捕获到异常了。

结论

跨进程通讯中,从一端到另外一端,支持传递以下异常类型如下:

#跨进程传递异常类型
1
SecurityException
2
BadParcelableException
3
IllegalArgumentException
4
NullPointerException
5
IllegalStateExceptio‍
6
NetworkOnMainThreadExceptio
7
UnsupportedOperationException
8
ServiceSpecificException

63d7cf091ad24b06db60f6e696e9d7ec.png

21237d698d8f56532f6d5dac908820a8.png

往期精彩回顾

 

73b1727be0547325e77a872a1f6f2be7.jpeg

Android Aidl跨进程通讯的简单使用

 

 

c310dbb24cb4fd7690216183b810619f.jpeg

Android BlueToothBLE入门(三)——数据的分包发送和接收(源码已更新)

 

 

155ce3faef2c636d4920fa1952aa5aff.jpeg

Android BlueToothBLE入门(二)——设备的连接和通讯(附Demo源码地址)

 

 

http://www.hkea.cn/news/413775/

相关文章:

  • wordpress 清空回收站合肥网站优化软件
  • 电站建设招聘网站智推教育seo课程
  • 做静态网站选用什么服务器站长素材网站
  • 网站建设先做前台还是后台百度认证是什么
  • 广州专业做crm系统的供应商seo网站培训班
  • 景安建网站企业网站seo方案案例
  • 山东滕州疫情最新消息今天i长沙官网seo
  • 公司做网站买域名之后做什么百度一下你就知道手机版
  • 北京婚恋网站哪家最好企业推广宣传方式
  • 国发网站建设西安做网站公司
  • 网站推广服务合同简述网络营销的主要方法
  • 信息门户网站是什么成人计算机培训机构哪个最好
  • 网站建设公司 中企动力公司东莞商城网站建设
  • b2c的电子商务网站自己想做个网站怎么做
  • 京东pc网站用什么做的如何注册网站怎么注册
  • 长沙商城网站制作seo线下培训课程
  • web网站开发公司网站制作优化排名
  • 这么做3d网站企业邮箱网页版
  • 瑞安网站建设公司关键词排名网络推广
  • 南京学做网站友情链接检查工具
  • 参考文献网站开发百度重庆营销中心
  • 如何做微信ppt模板下载网站企业网页设计公司
  • 做b2b网站百度点击快速排名
  • 网站怎么做移动图片不显示不出来吗芭嘞seo
  • 旅游网站建设服务器ip域名解析
  • 企业网站建设三个原则百度指数资讯指数是指什么
  • 房地产集团网站建设方案软文文案案例
  • 阜蒙县建设学校网站是什么北京seo编辑
  • 珠海建设局网站十大经典事件营销案例分析
  • 创建网站开发公司互联网推广引流是做什么的