android
文章平均质量分 71
怀化纱厂球迷
叫我球迷
展开
-
android--GooglePay 谷歌支付内购接入(1)
由于谷歌应用市场的限制令,需要把目前的APP接入googlepay 谷歌支付,以免在3月31日底,没接入的APP将会有被下架掉的风险,整个接入流程,以及注意事项,以及踩坑记录,我都会写出来,希望对大家有所帮助,文章大概拆成2篇,来全方位记录跟概况一.接入前准备## 1.申请一个google play开发者账号,这里我是有google play开发账号的,毕竟我们的APP是发谷歌市场的## 2.提前准备好一个apk(不需要集成支付sdk,占位用),在google play控制台上传原创 2022-03-19 12:32:48 · 27715 阅读 · 22 评论 -
Udesk接入需求---Android嵌入Udesk即时通讯网页插件(二、实现发送照片,录屏,发送文件)
这是19年当时的一个需求,这是第一步,接入方式,但是最后我接入的方式,由于公司是付费用户,所有选择的是 webview嵌套H5网页,具体网页是Udesk公司提供的,本次来说下客服同学给测试同学说的一个bug,经过查看,发现是后续对方公司开放的新功能,但是网上搜了一圈,没找到解决办法,也看了Udesk的github-demo,也没找到解决办法,最后联系他们技术支持,给了我答案,这里我需要重新添加代码,这里详细记录下,免得大家以后也遇到同样问题。原创 2022-01-20 10:53:14 · 2424 阅读 · 0 评论 -
写给我自己的2022
时间真快,2022年,总结回顾一下2021年,其实我发现,当业务我已经很熟的时候,已经没什么挑战了,反而2021,这一年的需求,遇到麻烦的归纳起来有3类,1类是自定view(当时的筛选框,动画特效,以及view需要自定的需求) 2类需求的重构(1.如何重构,用什么架构重构,这样重构后有什么好处) 3.从没接触过的技术(如何去处理,才能又快,又正确)以上三点用通俗 易懂的话,来概括,这将是我2022年需要突破的,可以总结成以下:1.自定义view的训练可以说是多写 多学 多看 多总结吧,平时.原创 2022-01-05 14:54:30 · 1479 阅读 · 0 评论 -
内存泄漏--2 性能优化工具MemoryAnalyzer(MAT)内存泄露的简单检测
以下用MemoryAnalyzer对内存泄漏的检测作简单介绍: 首先androidStudio自带Memory Monitor可以分析内存泄漏问题,方法如下,当我们执行了一系列操作后点击垃圾回收(需要先进行垃圾回收,这样才能发现那些该回收的类没有被回收掉)然后就可以点击 dump java heap 进行分析了: 点开后如图2: 如上class name下,我们可以简单的查看自己的类的一些,比如你输入“mainactivity”发现它的heap...转载 2021-10-29 17:10:19 · 884 阅读 · 0 评论 -
Android---列表重构需求(1)BRVAH BaseMultiItemQuickAdapter多布局实现
这几天有个需求是来了新的设计图,重构租屋列表页,犹豫最近撸了个筛选框,然后列表页UI也变了,跟同事沟通后,建议我重构这个模块,在看完设计图后,我发现现在很多APP的列表页,都趋于多布局的情况下面距离,懂球帝APP这样看图,我们可以很明显的发列表item里面突然多了一个,广告或者别的类型的ITEM,如果你是电商模块 新闻模块可能更多不同样子的布局了,抛出第一个问题,如果是你,你会怎么去实现这个玩意接下来 我们用图来深刻解释从这个图可以看出来 这个列表 本来item子项里面都是.原创 2021-04-26 20:23:07 · 1759 阅读 · 4 评论 -
Android Studio登录GitHub Invalid authentication data.404 Not Found-Not Found 完美解决!
网上搜了一堆方法,都是没用的,成功不了,我着直接说我怎么解决的:::::打开github第一步,登录github.com ---->个人头像---->settings第二步,Developer Settings第三步第四步第四步,Note处填写这个token的用途,我这里写了IDEA,代表IDEA登录用。然后下面所有的选项全打对勾然后点Generate token复制这个回到Android Studio,点击这个...原创 2021-04-01 10:28:41 · 1723 阅读 · 3 评论 -
Android需求调研--- App Bundle(Google的)
前言:androidBundle是什么? googlePlay上一种新的上传格式,以前是传apk,现在可以传Bundle。GP通过dynamic Delevery从Bundle中现在特定的配置给用户。很好理解:Google 官方的插件化呗。Android App Bundle = Apk 动态打包,动态组件化的技术,与 Instant App 不同,AAB 是借助 Split Apk 完成动态加载,使用AAB动态下发方式,可以大幅度减少应用体积,总结下特性,就是2个:资源选择性加载 动态下发原创 2021-03-05 01:03:53 · 374 阅读 · 1 评论 -
sourceTree(GIT)更改用户名及密码
记录下这个问题,找了好几种方式,最后用这种解决了我们公司平均一阵子(可能是1-2个月),必须改一次密码,这个密码设置gitlab 跟git的然后今天发现sourcetree会拉取不了代码,因为周1改了密码导致的...原创 2020-11-19 10:21:48 · 1626 阅读 · 0 评论 -
老筛选框bug---禁止AppBarLayout滑动
最近在项目里面出现一个bug,CoordinatorLayout+AppBarLayout+CollapsingToolbarLayout+toolbar+ExpandTabView(筛选器)当前布局是这样页面犹豫有一个筛选框,上面有appbarlayout,所以当筛选框打开的时候,会导致可以滑动禁止AppBarLayout滑动/** * 控制appbar的滑动 * @param isScroll true 允许滑动 false 禁止滑动 */ private void原创 2020-08-18 09:45:15 · 1587 阅读 · 2 评论 -
android 自动搜索提示框+数据库保存历史搜索(根据搜索词,搜索的时间排序)
最近一个需求里面用到的东西,当时没做好,撑着周末有空了 研究下 public class DbDao { private Context context; private RecordSQLiteOpenHelper helper; private SQLiteDatabase db; public DbDao(Context context) {...原创 2019-11-04 20:21:27 · 418 阅读 · 2 评论 -
RecyclerView 上下左右四种间距的设置方法
RecyclerView控件大家肯定不陌生,已经应用有一段时间了,最近在项目中写一个GridLayout样式的RecyclerView时需要设置,item之间左右的间距,下面是我总结的一个设置间距的方法分享给大家。下面是没间距的情况img想要设置item之间的间距需要自己创建一个继承自RecyclerView.ItemDecoration的类public转载 2017-05-10 11:14:54 · 19904 阅读 · 5 评论 -
Android进阶封装之一个类实现兼容Android 6.0权限、适配Android7.0 拍照: 相机与相册上传图片就用我好啦!
Android进阶封装之“史无前例”一个类实现兼容Android 6.0权限、适配Android 拍照7.0: 相机与相册上传图片就用我好啦!一、前言。本篇博客从基本的AndroidN开始说怎么适配其拍照,其与7.0以下有何区别?再详细分析如何封装在 avtivity和fragment中的区别? (重点)再详细说明下本封装库如何集成与使用。转载 2017-08-28 16:16:00 · 549 阅读 · 0 评论 -
Android实现图标右上角红色小圆球提示气泡(不需要导入第三方)
首先 先看 原型图相信大家都熟悉,在Android开发微信、QQ、短消息、应用商店等应用时,会考虑在图标右上角红色小圆球提示气泡再加上未读信息的数量,在应用商店上加上可以升级的应用数量,这样不占太大空间还能达到提示的目的。实现该功能可以重写View的onDraw完成该功能,也可以写布局文件完成该功能。现在使用布局文件完成。暂时先简单写一个TextView原创 2017-08-14 16:01:47 · 2402 阅读 · 0 评论 -
Android获取视频音频的时长的方法
mport android.content.ContentUris;import android.content.Context;import android.database.Cursor;import android.net.Uri;import android.os.Bundle;import android.provider.MediaStore;import android.转载 2017-08-03 16:35:31 · 4446 阅读 · 1 评论 -
binbinyang--Unable to create converter for class
昨天下写 Retrofit 的时候 测试的时候出了问题。 Java.lang.IllegalArgumentException: Unable to create converter for class这个东西出来的时候 没太懂什么意思,到网上找了资料 才知道解决办法 Retrofit retrofit = new Retrofit.Builder()原创 2017-07-26 10:13:28 · 3970 阅读 · 0 评论 -
当Android targetSdkVersion小于23时如何检查权限
问题:在Android M(API 23)及更高版本机器上运行targetSdkVersion 解决办法:1、获取应用的 targetSdkVersion 值PackageInfo info = mContext.getPackageManager().getPackageInfo(mContext.getPackageName(),0);targetS转载 2017-07-10 10:14:37 · 5048 阅读 · 0 评论 -
binbinyang-- Retrofit 2.0的简单使用(入门篇)-GET请求
最近在看 Retrofit !打算自己把 Retrofit 跟RXjava 跟OKHTTP融合一起。。慢慢一步步 自己搭建一个框架,自己抽取基类话不多说。直接进入主题官方文档使用之前当然需要导入依赖库 compile 'com.squareup.okhttp3:okhttp:3.2.0' compile 'com.squareup.retrof原创 2017-07-12 10:51:09 · 486 阅读 · 0 评论 -
Retrofit详解(一)(Retrofit创建过程)
首先贴上需要提前展示的APIService:public interface UserService { @POST(Constants.URL_UPDATE_USER_LIST) Observable>> updateUserList(@Query("userList") String userList);}Retrofit retrofit =转载 2017-07-12 11:14:16 · 305 阅读 · 0 评论 -
MVP 设计模式理解,实战理解MVP
1、什么是MVPMVP,全称 Model-View-Presenter。它是从 MVC中演变过来的,它的基本思想是相通的;在MVP中,View更加专注于处理数据的可视化以及用户交互,让Model专注于数据的处理,而Presenter则,提供 View 与 Model 之间数据的纽带,用于交互与数据传输;如下面这张图: 可以看到,在View 与 Model 之间我们是通过 Pre转载 2017-06-30 09:30:00 · 420 阅读 · 0 评论 -
关于安卓系统4.0/5.0/6.0获取单卡手机,双卡手机的imei1,imei2,meid(用反射来实现,史上最详细,最全面获取)--binbinyang
有的人问我要代码跟例子,上次在GITHUB上弄了一个,提供地址 给大家 https://github.com/binbinyYang/GetPhoneInfohttps://github.com/binbinyYang/GetPhoneInfo--------------------------------------------------------最近这3天,一直在做获取手机的,imei1,...原创 2017-04-01 10:04:43 · 21215 阅读 · 48 评论 -
Android TextView文字底部或者中间 加横线
Android TextView(EditView)文字底部或者中间 加横线tv = (TextView) this .findViewById(R.id. text_view ); 中间加横线 tv.getPaint().setFlags(Paint. STRIKE_THRU_TEXT_FLAG ); 底部加横线: tv .getPaint().setFlags(Pain原创 2017-09-08 14:18:56 · 1743 阅读 · 0 评论 -
binbinYang---android 手机端写Socket服务端和Socket客户端
最近在帮PHP那边做一个测试DEMO 需要我给他发送当前手机IP。。。和 写一个在安卓手机上实现的服务端。。。先说说 查看当前手机连接WIFI后IP是多少的代码public String getIpAddress(Context context) { String IpAddress = null; WifiInfo wifiInfo = getWifi原创 2016-07-11 11:01:44 · 874 阅读 · 0 评论 -
Udesk接入需求---1.初步接入
最近公司项目需求,接入客服类的SDK1.最开始集成了---智齿的SDK(后面发现不合适就换了Udesk)2.集成UDESK(SDK)官网地址UDESK官网写这个帖子,是估计后续会有很多这方面的深入开发,网上对于这个UDESK的介绍或者开发博客很少,想记录下,以后或许自己也再次 用得上以上是一个背景吧开发文档-Udesk这个图是,Udesk-sdk官方的的代码结...原创 2019-07-16 10:38:11 · 2200 阅读 · 0 评论 -
关于config.gradle的使用
昨晚看书本的文章,有提到config.gradle,这样一种配置,于是今天就把自己最近在做的DEMO,修改,然后试了下,记录并总结了一下这个图是目录结构config.gradle--projectext { android = [ compileSdkVersion: 28, buildToolsVersion: "...原创 2019-07-10 13:55:45 · 5705 阅读 · 1 评论 -
Android --pull解析XML,获取省市区的例子
<?xml version="1.0" encoding="utf-8"?><data> <region name="台北市" id="1" lat="25.091075" lng="121.55983449999997" order="1"> <s...原创 2019-05-14 11:10:44 · 444 阅读 · 0 评论 -
Android PAI (PlayAutoInstall)预装APK 功能
刚接触手机系统预装的APP 然后接触到了第一个需求PAI预装APK功能下面是我用到的帖子,也很感谢第一个博客主人,加了他QQ,问了很多东西https://blog.csdn.net/xct841990555/article/details/80896429#comments......原创 2018-11-07 16:31:18 · 11370 阅读 · 40 评论 -
gridview网格布局一个整屏幕(视频整个屏幕平均分配网格)
先上图手机分辨率有很多种怎么让王哥布局刚好一个屏幕平均分,然后不会出现多余导致滑动的情况上代码 @Override protected void onCreate(@Nullable Bundle savedInstanceState) { bundle = getIntent().getExtras(); if (bundle != null) ...原创 2018-04-26 15:29:49 · 1077 阅读 · 0 评论 -
android---判断当前摄像头功能是否权限打开以及遇到java.lang.RuntimeException: Method called after release()解决办法
java.lang.RuntimeException: Method called after release() 在今天的BUG里面出现了这么一个错误,其实我这边的操作是,打开APP里面有个要打开摄像头的模块,当时弹框提示是否打开摄像头,当时选择禁用,然后在打开这个摄像头模块 就报这个错了所以我的解决办法就是,每次打开都检测是否打开了权限解决办法如下/** * 相机检测 * Create...原创 2018-03-19 16:46:09 · 1960 阅读 · 0 评论 -
2018狗年旺旺旺
祝 各位程序员们: 2018事业蒸蒸日上,狗年旺旺旺。。。年后我也要开始努力找工作了!大家加油!!!原创 2018-02-22 09:34:42 · 461 阅读 · 0 评论 -
Android基础-1.Activity篇章
一.Activity生命周期1.activity的4种状态 running(处于activity栈顶的状态,活动状态)/paused(失去焦点,被一个非全屏的activity占据,用户操作屏幕,没反应)/stopped(这个Activity被另外一个完全覆盖,这个被覆盖的处于这个状态,是不可见的)/killed(被系统回收)2.activity生命周期的分析activity启动的时候,——原创 2018-01-17 20:29:03 · 266 阅读 · 0 评论 -
android studio 真机调试 点击Run 都是Debug模式 修正方法
在连接手机调试的时候,点击Run或Debug运行,结果手机全是Debug调试。 此时只需将手机中开发者选项关闭、重新开启就ok了或者关闭开发者选线中的 USB调试(魅族手机)原创 2017-05-17 17:46:11 · 1271 阅读 · 0 评论 -
避免Android中Context引起的内存泄露--binbinyang
今天在写代码的时候,提交代码给同事,同事检查了我的代码 ,当时就犯了个错误,会引起内存泄漏单例引起的内存泄露单例是我们比较简单常用的一种设计模式,然而如果单例使用不当也会导致内存泄露。 比如这样一个例子,我们使用饿汉式初始化单例,AppSettings我们需要持有一个Context作为成员变量,如果我们按照下面的实现其实是有问题。public class AppSett原创 2017-04-24 22:33:13 · 2603 阅读 · 0 评论 -
binbinyang---Android 屏幕适配
Android Phone屏幕适配 (不可转载)原理: 筛选适配方法 将不同手机屏幕进行划分,通过分辨率+屏幕尺寸划分屏幕种类,如下:常见分屏幕辨率:320*480 、480*800、480*854、540*960、720*1280、1080*1920 常见的屏幕尺寸:2.4、2.8、3.5、原创 2015-12-16 13:59:05 · 427 阅读 · 0 评论 -
binbinyang---Android js 与安卓互相调用
android 中的java代码调用webview里面的js脚本webview中的js脚本调用本地的java代码java调用js并传递参数先看代码功能一android中调用webview中的js脚本非常方便,只需要调用webview的loadUrl方法即可(注意开启js支持)/** * 初始化 */ @SuppressLin原创 2016-03-29 10:19:58 · 748 阅读 · 0 评论 -
binbinyang---Android 常用控件
在开发中.发现还是用到了很多常用控件.比如日期选择器...比如 时间选择器 比如单选 比如反选 在我的团购模块里面 就用到了单选 反选 日期 时间选择器等所以今天没事 就写下这一块的..当然GITHUB上有很多高大上的代码,我就不跟他们比了1.日期选择器public class MainActivity extends AppCompatActivity { private原创 2016-04-20 17:57:43 · 448 阅读 · 0 评论 -
binbinyang---关于开发中用到的侧拉---SlidingMenu
关于开发中用到的侧拉---SlidingMenu-首先用的最多的是就是github上面的 首先把这2个下载下来做成依赖包1、在Activity中通过SlidingMenu构造方法,直接设置侧滑菜单public class MainActivity extends Activity { SlidingMenu slidingMenu; @Override p原创 2016-04-21 15:18:40 · 311 阅读 · 0 评论 -
binbinyang---Android自动检测更新功能的实现--杨彬
今天来说说 安卓开发中任何APP都会要用到的升级 更新的问题首先写了一个 在通知栏弹出 一个简单的 带有图片.文字的 更新提示public class MainActivity extends Activity implements OnClickListener{ public static final int NOTIFICATION_ID = 24; private Button b原创 2016-04-24 17:17:29 · 499 阅读 · 0 评论 -
binbinyang---Android App 隐藏标题栏+状态栏
很久没记录东西。。。前阵子一直在找工作。。很幸运。进入了魅族深圳分公司了。。白天在弄一个东西的时候。试过4台手机public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { su原创 2016-06-24 15:20:26 · 479 阅读 · 0 评论 -
binbinyyang---接着上一篇文章 说锁屏上显示Activity
在Android中,有些比较强的提醒,需要用户紧急处理的内容。需要唤醒屏幕,甚至在锁定屏幕的情况下,也要显示出来。例如,来电界面和闹钟提醒界面。这是怎样实现的呢?其实,实现起来非常简单。只要给Activity的Window添加如下属性即可: @Overrideprotected void onCreate(Bundle savedInstanceState) { super.原创 2016-06-28 14:31:31 · 379 阅读 · 0 评论 -
binbinyang-----Android获取验证码后倒计时程序--注册模块
倒计时Button帮助类倒计时Button帮助类public class CountDownButtonHelper { // 倒计时timer private CountDownTimer countDownTimer; // 计时结束的回调接口 private OnFinishListener listener; priv原创 2016-08-05 10:55:52 · 997 阅读 · 2 评论