android开发
小An
不管从什么时候开始做自己想做的,都不算太晚!
展开
-
apk上传到应用市场时出现解析失败
这两天忙于把公司的APP在百度、360和腾讯三点开发者平台进行上线,碰到了一个apk解析失败的error。具体现象如下: 搞了很久终于解决了,办法就是:在res/values/strings的默认XML中加上“"根据自己APP的名字写入即可"”。 类似的问题解决办法就是在 默认的values/stri原创 2016-06-07 16:21:29 · 4932 阅读 · 0 评论 -
Flutter for Android 开发者
ViewsFlutter和Android中的View在Flutter中,View相当于是Widget。然而,与View相比,Widget有一些不同之处。 首先,Widget仅支持一帧,并且在每一帧上,Flutter的框架都会创建一个Widget实例树(译者语:相当于一次性绘制整个界面)。 相比之下,在Android上View绘制结束后,就不会重绘,直到调用invalidate时才会重绘。与A...原创 2018-12-06 09:39:08 · 544 阅读 · 0 评论 -
动态设置UI
一,动态设置TextView的颜色 /** * 设置TextView文字颜色 * @param textView 需要改变颜色的view * @param normal 正常情况下,显示的颜色 * @param selected 选择时,显示的颜色 */ public static void setSelectorCol...原创 2018-09-25 14:37:33 · 303 阅读 · 0 评论 -
Android集成PayPal
一,什么是PayPal? PayPal是eBay旗下的一家公司,致力于让个人或企业通过电子邮件,安全、简单、便捷地实现在线付款和收款。PayPal账户是PayPal公司推出的最安全的网络电子账户,使用它可有效降低网络欺诈的发生。PayPal账户所集成的高级管理功能,使您能轻松掌控每一笔交易详情。目前,在跨国交易中超过90%的卖家和超过85%的买家认可并正在使用PayPal电子支付业务。PayPal原创 2017-09-11 17:54:32 · 2143 阅读 · 0 评论 -
四大组件之Service
service简介 service是四大组件之一,它主要用于在后台处理一些耗时的逻辑(service本地线程是主线程,会启动子线程去处理耗时操作),或者去执行某些需要长期运行的任务。必要的时候我们甚至可以在程序退出的情况下,让Service在后台继续保持运行状态。service的启动 服务的开发比较简单,如下: 第一步:继承Service类 public class SMSService e原创 2017-08-10 15:03:55 · 198 阅读 · 0 评论 -
四大组件之ContentProvider
ContentProvider一般为存储和获取数据提供统一的接口,可以在不同的应用程序之间共享数据。 之所以需要提供这样的接口是因为以下几点: 1,ContentProvider提供了对底层数据存储方式的抽象。即你把底层的数据库替换了,也不会对上层数据使用层代码带来影响。 2,Android中一些框架类需要用到ContentProvider类型的数据,如果你需要使用在如Loader类上,那原创 2017-08-21 15:15:14 · 295 阅读 · 0 评论 -
四大组件之BroadcastReceiver
BroadcastReceiver,顾名思义就是“广播接收者”的意思,它是Android四大基本组件之一,这种组件本质上是一种全局的监听器,用于监听系统全局的广播消息。它可以接收来自系统和应用的的广播,可以用来十分方便地实现系统不同组件之间的通信。 使用BroadcastReceiver的步骤: 1,自定义BroadcastReceiver。 只需要让自定义的TestBrodcastR原创 2017-08-21 14:22:46 · 239 阅读 · 0 评论 -
Handler原理分析
Handler的使用 先回顾一下我们平时是怎么使用Handler的? 第一步,定义一个Handler,并根据msg.what来handleMessge: private Handler mHandler = new Handler(){@overridepublic void handleMessage(Messge msg){Switch (msg.what){case原创 2017-08-20 10:06:40 · 205 阅读 · 0 评论 -
自定义view
面试的时候总是被问到怎么去自定义view,而我回答的总是三点说重写onMeasure()、onLayout()和onDraw().其中onMeasure()是决定view的大小,onLayout()决定view的位置,onDraw()就是具体的绘制view。其实这些说的都没错,只是说的太笼统太简单了,今天我就以郭神的带你一步步深入了解View为基调,说说我重新认识的自定义view。 1,原创 2017-08-19 23:06:25 · 189 阅读 · 0 评论 -
android中的 AlertDialog的个人见解
工作一年有余,自认能力还是不够,所以准备整理一下笔记,与君共勉! 这是我看API文档后的第一次笔记,或许写的不够完善,或许写的不够正确,望各位提出指导和批评,谢谢! 本文主要说明简单受用的提示对话框---Dialog. android API Android API 支持以下类型的对话框: AlertDialog,ProgressDialog,原创 2014-12-30 15:05:47 · 503 阅读 · 1 评论 -
Android性能优化
一,UI性能问题。 UI卡顿原理:虚拟机在执行GC垃圾回收操作时所有线程(包括UI线程)都需要暂停,当GC垃圾回收完成之后所有线程才能够继续执行,所以页面必须在16ms内完成GC和渲染操作才能保证不丢帧卡顿问题。UI卡顿原因: 1,在UI线程做了轻微的耗时操作。 2,布局layout过于复杂,无法在16ms内渲染完成。 3,同一时间动画执行的次数过多,导致CPU或GPU负载过重。 4,Vi转载 2017-08-10 10:58:42 · 157 阅读 · 0 评论 -
netty学习笔记(一)
Java NIO由以下三个核心部分组成:channel,buffer,selector。 Channel 和 Buffer:基本上,所有的 IO 在NIO 中都从一个Channel 开始。Channel 有点象流。 数据可以从Channel读到Buffer中,也可以从Buffer 写到Channel中。 下面是JAVA NIO中的一些主要Channel的实现: FileChannel(从文件中原创 2017-08-09 17:48:55 · 601 阅读 · 0 评论 -
怎么在一个APP中调用另外一个APP
声明:下文中把去调用的APP称谓A,把被调用的APP称谓B。 首先在B中的清单文件中找到A调用时需要进入到的activity,并把在属性中增加: <activity android:name="org.ebookdroid.pdfdroid.activity.MainFunctionActivity" andro原创 2016-06-07 16:26:09 · 2380 阅读 · 0 评论 -
Android序列化Serializable和Parcelable
什么是序列化序列化 (Serialization)将对象的状态信息转换为可以存储或传输的形式的过程。在序列化期间,对象将其当前状态写入到临时或持久性存储区。以后,可以通过从存储区中读取或反序列化对象的状态,重新创建该对象。序列化能实现的效果.永久性保存对象,保存对象的字节序列到本地文件中。对象在网络中传递。对象在IPC间传递。序列化的方法1.当需要内存较多时使用Parcelable接...原创 2019-03-08 11:58:28 · 210 阅读 · 0 评论