自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(97)
  • 资源 (2)
  • 收藏
  • 关注

原创 Crash问题处理路线

Crash问题处理路线分析Crash的原因如何得到crash信息:Crash库封装原理如何才能够不上报crash如何长期的,有针对性的处理crash分析Crash的原因参考:https://juejin.im/post/6844903839292719117crash总的分成两大类,java层面和native层面。java层面的话比较好处理,native层面无论调试还是修改,难度都比较大,尤其涉及第三方或者系统级别的话,难度更大。如何得到crash信息:Crash库封装原理常见第三方:bugly

2020-11-10 15:50:16 712

翻译 Gradle for Android 翻译--第九章 定制高级构建

这本书绝对是Gradle入门的最佳指导手册。在网上可以找到英文版的,但是没有中文版的。然后中文版的据说很薄但是很贵,所以就自己翻译了一下。全书一共9章,因为前7章有位大神已经翻译了,在此放链接https://segmentfault.com/a/1190000004229002,第8章涉及到的工具没有用过,跳过,所以直接翻译的第9章。大神翻译的比较简练,我有时间也会都翻译一遍的。第9章

2017-11-16 15:34:37 595

原创 WebView H5支付跳转原生(支付宝微信平台)

网页里支付,如果嵌在webview内,支付是会出现问题的。1、支付宝支付现在很多解决方案的文章,都比较老旧,并不能完善解决问题。需要参考:https://opendocs.alipay.com/open/203/106493但是,该文档里面,对应的aar是16年的版本,需要自己去这个链接里找对应的最新版本的:https://opendocs.alipay.com/open/54/104509注意匹配sdk版本,修改manifest文件2、微信支付...

2022-03-02 09:08:35 2571

原创 指针问题解题思路

指针问题解题思路左右指针引入-- 反转字符串(简单)典型应用-快速排序思考题-三数之和前后指针(快慢指针)引入-环形引入删除有序数组中的重复项思考题-接雨水左右指针解决问题:数组的相向问题,指针相向移动引入-- 反转字符串(简单)编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。输入:s = [“h”,“e”,“l”,“l”,“o”]输出:[“o”,“l”,“l”,

2021-12-02 09:57:12 391

原创 flutter爬坑记录

1、Target of URI doesn’t exist:修改方法:参考:https://blog.csdn.net/qq_25020915/article/details/86233093修改环境变量,同时注意用户的变量也已经修改了。有的时候需要科学上网。再不行,试试参考:https://github.com/flutter/flutter/issues/17016我添加了这个:sh...

2019-08-29 14:09:13 154

原创 非root手机如何脱壳?

如今,随着开发者的安全意识加强,加固加壳已经是基本的措施了。加固的apk,无法直接通过AS反编译,需要先脱壳。第一步:脱壳参考文章:https://blog.csdn.net/weixin_41508948/article/details/84835582按照文章的步骤,执行到最后,问题来了:dex文件无法分享,无法保存等各种。这种看着dex文章就在眼前,自己却无法用的感觉真难受。...

2019-05-27 15:59:39 1143

原创 Android更改包名需要注意的地方

第一步:在Android Studio中,右击包名,选择refactor name,确定更改。新版的AS当中,自定义View的引用中的包名也会一致更改。第二步:手动更改:Manifest文件,build.gradle中的包名相关第三步:查找静态字段,文件存储等包名相关的地方第四步:更改混淆文件中涉及到的包名...

2019-04-22 14:33:53 511

原创 如何应对接口数据异常

如何应对接口数据异常1 已知字段名一致,格式变化2 字段不存在或者Entity未定义字段1 已知字段名一致,格式变化参考1:https://www.jianshu.com/p/d6bd6bd5fce3(采取方法:自定义Gson响应体变换器和响应变换工厂,在请求错误时抛出异常并保存错误码和错误信息。参考2:https://mp.weixin.qq.com/s?__biz=MzIxNzU1N...

2018-12-17 17:10:48 3971

原创 项目上传svn(Android Studio)

上传前注意事项需要在AS的 setting–version control–ignored Files中设置忽略文件: Directory:.gradle/ Directory:.idea/ Directory:build/ Directory:app/build/ File:local.properties Mask:*.iml File:.idea/workspace.xml...

2018-06-22 09:41:07 238

原创 Android应用,debug版本与release版本区别在哪?

为了利用debug工具,大多数程序猿开发的时候使用AS的debug版本,最终发布版本是release版本,但是在这个转变的过程中可能会出现一些意外。1、releas版本与debug版本的applicationId不一样为了客户端上两个版本共存,通常debug设置不同applicationId,这会导致需要填写applicationId申请的第三方平台使用不正常,比如小米推送和微信分享等。

2018-06-22 09:03:25 17390

原创 是否应该开启WebView硬件加速?

是否应该开启WebView硬件加速android webview 在3.0+后显示flash要启用硬件加速,开启硬件加速也能够使绘制更加平滑。 开启硬件加速是在manifest中加入: android:hardwareAccelerated=”true” 可以是Activity级别的,也可以是Application级别的。 webView中设置: - * setLayerType...

2018-05-07 17:28:53 10971

原创 debug版本和release版本有区别么

为了利用debug工具,大多数程序猿开发的时候使用AS的debug版本,最终发布版本是release版本,但是在这个转变的过程中可能会出现一些意外。1、releas版本与debug版本的applicationId不一样为了客户端上两个版本共存,通常debug设置不同applicationId,这会导致需要填写applicationId申请的第三方平台使用不正常,比如小米推送和微信分享等。

2018-03-22 14:51:16 2862

原创 EventBus

一、EventBus优势:1、速度快,体量小。2、方便的单例:可以通过调用EventBus.getDefualt()方法获得一个进程作用域的事件总线实例。 也可以调用new EventBus()创建任意数量的本地总线。3、基于约定: 事件处理方法被称为onEvent二、EventBus和Android中的BroadCastReceiver/Intent 系统有何不同A: 不同于Android的Br...

2018-03-21 09:13:47 277

原创 滑动冲突问题

解决滑动冲突问题一般来需要必备的知识:点击事件的分配,滑动距离的判断       一般的解决方法:重写其中一个控件,放弃其中一个滑动事件       1、ScrollView 与 RecyclerView的滑动冲突public class ScrollRecycleView extends RecyclerView { public ScrollRecycleView(Con

2017-09-04 10:34:55 219

原创 快速上手Aspect

因为项目需要,快速上手,for 不求甚解者。Aspect是属于AOP的在Android内应用的一个库。AOP称为面向切面编程,适用的范围:多处代码中需要的逻辑,但没有一个单独的类来实现)应该只被实现一次,且能够多次注入到需要该逻辑的地方。代码注入是 AOP 中的重要部分:它在处理上述提及的横切整个应用的『关注点』时很有用,例如日志或者性能监控。一、开始上手前的普及:1、Android 中的

2017-05-27 15:04:06 371

原创 Activity中Viewpager+Fragment,getActivity() 报错

场景:从新的Activity跳转回MainActivity(使用viewPager+Fragment实现),显示指定的Fragment,使用viewPager.setCurrentItem(2)报错:android.content.res.Resources android.content.Context.getResources()' on a n解决方法:方法:

2017-05-11 10:58:15 809

原创 React Native 入坑记录

React Native入坑记

2017-01-06 16:32:20 1240

原创 QQ分享失败:请检查网络并重试

原因一:要求的字段等没有全部满足参考:http://blog.csdn.net/u014120638/article/details/41147741原因二:图片格式错误:jpg还是png,我们项目是jpg,不确定png参考:http://blog.csdn.net/ysbpysbp/article/details/50588506原因三:确实是图片太大或者网络不好

2016-08-16 16:18:05 7199

原创 Crosswalk/XwalkView研究

1、入门简介入门级别的研究当然以官方为主:官网:https://crosswalk-project.org/documentation/android.html官方微博:http://weibo.com/p/1001603851443932161689   以上为官方微博,但是更新到15年6月份就没有然后了Crosswalk的作用总的来说:用Crosswalk替换原生的Androi

2016-04-25 16:05:02 7235 1

原创 NDK not configured、

NDK程序是coworker写的,我在SVN更新下来,但是之前没有配置过NDK吗,更新完代码之后可能会间歇出现以下的错误:Error:Execution failed for task ':app: xxxNdk'.> NDK not configured.Download the NDK from http://developer.android.com/tools/sdk/

2016-01-18 15:18:20 7413 1

原创 程序猿如何实现价值?

本科的时候执着于斤外交部呀什么的,总觉得那样才是为国家做了贡献,为社会做了贡献。决心当程序猿之后,觉得可能大概没有机会啦。今天看了两篇帖子,一篇是介绍一个吸引高中女生成为程序猿的手机游戏:高中故事(high school story),ios有,Android不造。还有一篇是根据已有数据调研世界难民发布与分布,实现数据化可视。总的来说吧,主要有两点,一个是根据大氛围的变化设计应用,一个是针对实事快

2016-01-11 14:50:43 523

原创 android studio 如何清理没有用到的资源文件

可以用android lint检查没用到的资源文件。Analyze-Inspect Code。最新版本的 Android Gradle plugin 已经可以支持删除没用的资源文件了。但是该功能默认情况下是关闭的,要启用该功能在 Gradle build 文件中添加 shrinkResources true即可。android {buildTypes {release {

2015-12-08 16:23:59 3621

原创 Android Studio插件---For UML

1、PlantUML该插件主要是需要手动写UML图,不能够自动生成参考: http://blog.csdn.net/u013831257/article/details/501184612、SimpleUML该插件主要是自动生成某个单独类的类图,不会为整个project生成类图参考:http://blog.csdn.net/changhuiyuanh/article

2015-12-07 11:13:16 1778

原创 引入别人的Android Studio项目遇到的bug以及解决方法

常见问题1:Gradle version xxxx is required解决方法:出现此情况,应该是使用了gradle wrapper时候,创建工程时使用的gradle版本比当前使用的版本低得情况。此时log会提示 去修改 project_root/gradle/wrapper/gradle-wrapper.properties这个文件中distributionUrl=http\

2015-12-02 11:18:43 1165

原创 startActivityForResult()实现的机制

1、这个问题问度娘没有找到答案,结果还是问的谷哥。一开始以为是新开了一个thread,然后查了一下,发现只是在UIThread里面,startActivityForResult() is asynchronous. That does not mean that your new activity will be executed in a different thread. If the n

2015-11-16 15:48:43 1120

转载 屏幕适配相关知识点

1、Android手机常见分辨率4:3VGA 640*480 (Video Graphics Array)QVGA 320*240 (Quarter VGA)HVGA 480*320 (Half-size VGA)SVGA 800*600 (Super VGA)5:3WVGA 800*480 (Wide VGA)16:9FWVGA 854*480 (Fu

2015-11-16 14:46:13 330

原创 ViewPager+ImageView 图片滑动预览

项目需求:1、展示从网上url获取的图片2、页面既可以左右滑动,也可以依靠向左向右的箭头按钮控制难点:1、如果在ViewpagerAdapter里面使用ImageLoader加载ImageView,因为网络请求耗时较长,会造成每张图片都卡顿解决方案:1)先将图片都下载下来List imageUrls = FragmentSetting.imageUrls;

2015-11-16 14:29:52 3812

原创 项目经验--Fragment(基于ViewPager)

一、主要是纠结于一下几点:1、Fragment初始化的时机2、因为错误的设计,导致数据请求量很大,为什么滑动Fragment每次都要重新请求数据,加载数据,我的数据init是放在onDreate里面的,是不是应该只在new的时候请求呢?借鉴与zhy的博客,掺加个人的见解。http://blog.csdn.net/lmj623565791/article/details/37970961

2015-09-30 14:05:37 407

翻译 Developer--Loader-LoaderManager

Loaders是为了提供数据的异步加载,管理数据源,当内容变化时,将结果传递出去。其提供了各种API,下面进行总结。1、LoaderManager抽象类,和一个Activity或Fragment相连,管理数个Loader实例。2、LoaderManager.LoaderCallbacks回调接口,使用onCreateLoader()回调方法创建一个新的loader。使客户端和man

2015-09-17 15:38:37 347

翻译 Developer-Handler

一、综述java.lang.Object↳ android.os.Handler每个Handler实例,和一个单独的thread、这个thread的 message queue相关联。Handler的两大用处:1、执行在未来某点运行的message和runnable2、另开一个线程执行动作常见的具体实现方法:post(Runnable), postAtTime(Ru

2015-09-14 16:36:44 389

翻译 Developer--WebView

一、综述java.lang.Object↳ android.view.View↳ android.view.ViewGroup↳ android.widget.AbsoluteLayout↳ android.webkit.WebView用于

2015-09-14 11:16:47 635

翻译 Developer-ScrollView

一、综述scrollview不能够单独使用,需要配合子布局,比如vertical的linearlayout。同时注意,scrollview里面不要放置listview,因为会在竖直滑动 动作上造成冲突。同时,TextView有自己的滑动,不需要scrollview。再者,ScrollView只支持竖直方向的滑动,如果是水平方向,需要使用HorizontalScrollView继承自:

2015-09-09 15:04:01 438

翻译 Developer-BroadcastReceiver

一、综述该类主要用于接收 sendBroadcast() 的intents。这里需要注意一下,最好是用LocalBroadcastManager而不是更加普遍的方法。注册使用方式:Context.registerReceiver() 或者在Manifest文件里面注册注意:如果你注册了receiver在Activity.onResume()里面,需要解除注册在Activity.on

2015-09-08 16:50:00 418

原创 报错:由getResources()引起的:Fragment MyFragment not attached to Activity

出错误的原因是因为我在某一Fragment的开始,使用了变量:private String[] modeTexts=new String[]{getResources().getString(R.string.modetext_scan),getResources().getString(R.string.modetext_search)};然后提示在MainActivity中不能够加载该

2015-09-07 17:01:07 3561 1

翻译 Developer--Services

1、综述service是能够在后台长期run的应用组件,不提供用户接口。另一个应用组件能够start一个service,即使用户转向另一个应用,后台的service也会保持。甚至,一个组件能够绑定到一个service,然后进行IPC(进程间通信)。举例,一个service能够处理网络请求,播放音乐,与content provider交互等。2、Service的两种方式1)Sta

2015-09-07 10:46:11 424

翻译 Developer--AsyncTask

1、Class综述:该类使UI Thread更加容易使用。理想状况下,AsyncTask用于短期操作。如果想让线程运行较长时间,建议使用FutureTask等。该task在背后运行,将结果呈现到UI。 一个Task被三个泛型定义,即参数列表:Params,Progress 和Result,分四步来执行:onPreExecute,doInBackground,onProgressUpdate和o

2015-09-07 09:54:22 331

转载 Android使用Application总结

转载自:http://www.360doc.com/content/15/0826/15/20108600_494862087.shtml简单来说,一个apk文件就是一个Application。    任何一个Android Application基本上是由一些Activities组成,当用户与应用程序交互时其所包含的部分Activities具有紧密的逻辑关系,或者各自独立处理不同的响

2015-08-26 15:40:26 916

原创 实习过程中了解到的知识点,但是还没有尝试的

1、下拉刷新借助第三方Jar包:PullToRefresh网址:http://www.it165.net/pro/html/201410/24954.html

2015-08-21 17:31:41 313

原创 深入理解Java虚拟机

机械出版社 《深入理解Java虚拟机》 基于JDK1.7 周志明著在此书中,我最关心的是垃圾回收机制以及类的加载。本书中除了介绍这两部分以外,还详细分析了.class文件,有点看不懂,暂时略过。第2章:Java内存区域与内存溢出异常1、程序计数器:每条线程一个独立的程序计数器。如果线程正在执行的是Java方法,则计数器记录的是正在执行的虚拟机字节码指令的地址;如果正在执行的是N

2015-08-18 14:36:01 561

原创 大话设计模式

第1章 简单模式1、面向对象:通过封装、继承、多态(这也是面向对象三大特性)把程序的耦合度降低,使程序更加灵活2、 高能:1.11节讲了关于UML类图的含义和方法,值得学习和参考3、简单工厂模式(Factory):一个单独的类来创建实例第2章:策略模式(Strategy)Stargety:定义了算法家族,分别封装起来,让他们之间可以互相替换,此模式让算法的变化,不会影响

2015-08-12 14:29:32 439

ContentProvider

ContentProvider的简单例子,包括更新,插入,删除

2015-06-30

achartengine源文件

之前在本网站上找的所谓的源码都是jar包。这个就是真正的源代码。方面自己改坐标轴的粗细啦,点的颜色啦什么的。

2014-12-25

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除