
android开发的技巧
文章平均质量分 62
whyareusomw
这个作者很懒,什么都没留下…
展开
-
jarsigner: 找不到app的证书链。app必须引用包含私有密钥和相应的公共密钥证书链的有效密钥库密钥条目。(oppo)
以下内容主要来自oppo官方APP认领文档使用JDK自带的jarsigner工具来进行签名。请确保您已经正常安装了jdk,如果没有安装jdk,请自行下载安装。jarsigner工具签名apk的命令格式如下:jarsigner -verbose -keystore [您的签名存放路径]-signedjar [签名后的文件名] [未签名的文件名] [您的证书名称]以下是签名具体步骤:1、为了防止因为环境变量配置导致的问题,在此直接将要签名的空包OppoSignVerify.apk及签名私钥a原创 2021-09-02 13:11:48 · 1764 阅读 · 0 评论 -
Android 软键盘工具类
作者:fishforest原文章地址public class SoftInputUtil { private int softInputHeight = 0; private boolean softInputHeightChanged = false; private boolean isNavigationBarShow = false; private int navigationHeight = 0; private View anyView..转载 2021-03-09 12:51:40 · 349 阅读 · 0 评论 -
Android Sophix热修复集成
!!!! 阿里云热修复官网地址移动热修复(Mobile Hotfix)是阿里云提供的全平台App热修复服务方案。产品基于阿里巴巴首创hotpatch技术,提供最细粒度热修复能力,让您无需等待实时修复应用线上问题。主要解决问题(1)产品已有功能,出现问题,无需发版,即可发补丁,实时修复。(2)存量功能微调HotFix总体来说最大的优势在于:补丁即时生效,不需要应用重启; 补丁包同样采用差量技术,生成的PATCH体积小; 对应用无侵入,几乎无性能损耗; 两行代码,傻瓜式接入。原创 2020-05-08 19:32:13 · 3168 阅读 · 0 评论 -
Android项目遇到的技术问题记录(好的文章收藏一下)
微信支付的问题 a.项目一般有测试环境和线上坏境两个环境(用release版本的签名),发布时,更换测试坏境签名为线上签名,之后支付一直不成功,配置是正确的,这是微信留下的坑,网上有很多清理微信缓存之类的就行,可是试了不行,干脆把微信直接卸载就可以了。 b. 有时微信支付成功一次之后再也不会成功了,这次要去微信应用中心查看签名的情况,一定是签名配置错误了。 carame2 api在小米6上(先预览,再跳转到其他页面后回来预览页面),会有绿色屏幕问题。目前暂没有好的处理方法,直接应过时的..原创 2020-05-08 17:41:10 · 395 阅读 · 0 评论 -
RecyclerView垂直状态禁止滑动
第一种(有一部分人用了没作用)、、我是NestedScrollView嵌套RecyclerView并设置RecyclerView固定高度,还是起作用了//初始化网络5列表GridLayoutManager rlm = new GridLayoutManager(mContext, 5);recyclerGrideViewFive.setLayoutManager(rlm);recycl...原创 2020-04-30 17:43:51 · 1892 阅读 · 0 评论 -
bugly热修复集成与踩坑总结
第一步添加依赖(project-->build:gradle)dependencies { classpath 'com.android.tools.build:gradle:3.1.4' classpath "com.tencent.bugly:tinker-support:1.1.5" // NOTE: Do not place yo...原创 2020-04-27 10:54:39 · 4030 阅读 · 1 评论 -
Java ---:Double双精度数值-加减乘除会出现误差
public class BigDecimalUtils { /** * 提供精确的加法运算 * * @param v1 被加数 * @param v2 加数 * @param scale 保留scale 位小数 * @return 两个参数的和 */ public static String ad...原创 2020-04-21 16:57:54 · 642 阅读 · 0 评论 -
android手机拍照后上传图片被旋转的问题
android手机拍照后上传图片被旋转的问题,,有的手机拍摄的图片旋转90度,有的图片旋转了180度,有的手机是正常的转载 2017-11-09 11:28:13 · 720 阅读 · 0 评论 -
关于json格式存储数据库成bean对象list,取出来再次转换成json格式
数据库存储的bean对象list转换成json格式原创 2017-10-30 15:44:42 · 799 阅读 · 0 评论 -
android Glide加载图片缓存重复问题解决
发现无法重新加载,以为是有缓存的原因Glide.with(this) .load(URL) .signature(new StringSignature(UUID.randomUUID().toString()))转载 2017-04-25 11:50:18 · 6828 阅读 · 0 评论 -
状态栏与底部导航栏
/*获取状态栏的高度,有时候出现popuwindow超出屏幕时,减去它,默认24dp*///获取顶部状态栏的高度 private int getStatusBarHeight() { Resources resources = MainActivity.this.getResources(); int resourceId = resources.getIdentifi原创 2017-03-23 17:00:38 · 650 阅读 · 0 评论 -
android缓存清理
* Created by Administrator on 2017/3/6. * 清除缓存//计算出缓存的大小String size=CleanMessageUtil.getTotalCacheSize(SettingActivity.this);tvDirsize.setText(size);//清理缓存CleanMessageUtil.clearAllCache(SettingActivity.this);原创 2017-03-13 17:29:03 · 390 阅读 · 0 评论 -
android很有用轮播图实现,可下载
工具类:iew.PagerAdapter;public class LunBoUtils extends FrameLayout { private int count; private ImageLoader mImageLoader; private List<ImageView> imageViews; private ViewPager vp; private boolean isAutoPlay;原创 2017-03-18 12:32:47 · 453 阅读 · 0 评论 -
验证码计时器-CountDownTimer
public class CountDownTimerUtils extends CountDownTimer {private TextView mTextView;CountDownTimerUtils timerUtils2=new CountDownTimerUtils(tvGetVerify,30000,1000);timerUtils.start();转载 2017-03-21 11:29:04 · 512 阅读 · 0 评论 -
Android studio 导入其他一个项目作为依赖包问题
将as的项目作为library导入到另外一个as项目中:1.启动AndroidStudio后,打开你需要接收Library的项目。比如有两个项目,项目A,和Library项目B,那么打开项目A。2.在下拉菜单中依次找到New— —Import Module,点击打开项目导入窗口。注意导入的是Module而不是Project,如果是Project的话AndroidStudio会自动打转载 2017-02-27 18:05:55 · 908 阅读 · 0 评论 -
记录一点网上的资源关于侧滑菜单栏的写法
NavigationView和DrawerLayou::::http://www.mamicode.com/info-detail-912758.htmlAndroid SlidingMenu: http://blog.youkuaiyun.com/lmj623565791/article/details/36677279两者都是实现侧滑的,只是方式不同原创 2016-10-22 20:52:41 · 255 阅读 · 0 评论 -
ScrollView 嵌套 RecyclerView 高度自适应遇到的问题
以下是我用瀑布流的所用的东西核心 LayoutManager 的 onMeasure 方法重写//如果可以确定每个item的高度是固定的,设置这个选项可以提高性能mRecyclerView.setHasFixedSize(true);ScrollView套 RecyclerView 滑动的时候会会比较卡顿,可以设置如下属性//ScrollView 滑动顺滑m原创 2016-10-19 15:08:27 · 2951 阅读 · 0 评论 -
Activity 和Fragment 两个之间的跳转方法
普通的fragment到Activity跳转,可以直接利用Intent intent=new Intent(this,.ckass); startActivity(intent);这样跳转。还有一种是fragment到Activity后,然后返回fragment,可以在点击方法中加个finish();不过还有一种情况是Activity又跳到其他Activity页,想直接返回fragment,有原创 2016-10-24 21:18:28 · 2749 阅读 · 1 评论 -
在android 中mvc的具体体现
Android 的官方建议应用程序的开发采用 MVC 模式。何谓 MVC?MVC 是 Model,View,Controller 的缩写,从上图可以看出 MVC 包含三个部分:模型(Model)对象:是应用程序的主体部分,所有的业务逻辑都应该写在该层。视图(View)对象:是应用程序中负责生成用户界面的部分。也是在整个MVC架构中用户唯一可以看到的一层,接收用户的输入,显示处理结果。控制原创 2016-11-01 15:37:58 · 481 阅读 · 0 评论 -
Android 常用控件的信息
Android 常用控件的信息单选框(RadioButton 与 RadioGroup):RadioGroup 用于对单选框进行分组,相同组内的单选框只有一个单选框被选中。事件:setOnCheckedChangeListener(),处理单选框被选择事件。把RadioGroup.OnCheckedChangeListener实例作为参数传入。多选框(CheckBox):原创 2016-11-01 15:43:20 · 334 阅读 · 0 评论 -
ListView 的 优化方案
1,如果自定义适配器,那么在 getView 方法中要考虑方法传进来的参数 contentView 是否为 null,如果为 null 就创建 contentView 并返回,如果不为 null 则直接使用。在这个方法中,尽可能少创建 view。2,给 contentView 设置 tag(setTag()),传入一个 viewHolder 对象,用于缓存要显示的数据,原创 2016-11-01 15:51:51 · 394 阅读 · 0 评论 -
如何启用 Service ,如何停用
Android 中的服务和 windows 中的服务是类似的东西,服务一般没有用户操作界面,它运行于系统中不容易被用户发觉,可以使用它开发如监控之类的程序。服务的开发比较简单 ,如下:第一步:继承 Service 类public class SMSService extends Service {}第二步:在 AndroidManifest.xml 文件中的节点里对服务进行配置原创 2016-11-01 15:55:04 · 762 阅读 · 0 评论 -
什么是ANR
ANR:Application Not Responding。在 Android 中,活动管理器和窗口管理器这两个系统服务负责监视应用程序的响应。当出现下列情况时,Android 就会显示 ANR 对话框了:用户对应用程序的操作(如输入事件,按键、触摸屏事件)在5秒内无响应广播接受器(BroadcastReceiver)在10秒内仍未执行完毕Android 应用程序完全运行原创 2016-11-01 16:28:55 · 287 阅读 · 0 评论 -
4种activity 的启动模式
1.standard: 标准模式,一调用 startActivity()方法就会产生一个新的实例。2.singleTop: 如果已经有一个实例位于 Activity 栈的顶部时, 就不产生新的实例, 而只是调用Activity 中的 newInstance()方法。如果不位于栈顶,会产生一个新的实例.3.singleTask: 会在一个新的 task 中产生这个原创 2016-11-01 16:16:49 · 292 阅读 · 0 评论 -
单线程模型中 Message 、 Handler 、 MessageQueue 、 Looper 之间 的关系。
简单的说,Handler获取当前线程中的 looper对象,looper 用来从存放 Message 的MessageQueue中取出 Message,再有 Handler 进行 Message 的分发和处理.Message Queue(消息队列): 用来存放通过 Handler 发布的消息, 通常附属于某一个创建它的线程可以通过 Looper.myQueue()得到当前线程的消息队列.原创 2016-11-01 17:23:39 · 414 阅读 · 0 评论 -
协调者布局
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_pare原创 2017-01-16 11:56:59 · 563 阅读 · 0 评论 -
高德地图地理码和经纬度转化(latlng和latlonpoint)
1、geocoderSearch = new GeocodeSearch(this);geocoderSearch.setOnGeocodeSearchListener(this);重写他的onGeocodeSearched、onRegeocodeSearched的两个Void的方法来实现地理码的转化和逆转。2、地理码转化成经纬度主要代码:// 第一个参数表示地址,第二个参数表示查询原创 2017-03-16 09:48:52 · 13075 阅读 · 3 评论 -
今天·在房里看资料,看到一篇关于viewpager懒加载,因为在这里提一下,以后也可能遇到,留记!
说实话,很少用viewpager的懒加载,可能不知道它的优势吧。看了这个帖子,也知道了一些东西,在viewpager中有个预加载,加载当前页面时,还会加载前后两个页面的数据,问题就出在这,,有时候前后两个页面需要加载的页面数据太大,会影响页面的流畅效果,有时候页面因为数据流太大,而网速较慢,直接影响程序崩溃,所以人们就想出现懒加载这个说法。来源原贴: http://blog.csdn.转载 2016-10-22 19:50:32 · 378 阅读 · 0 评论