Android
Android_gjw
不与人比,只求超越自我
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Java 8 language support, as requested by 'android.enableD8.desugaring= true' in your gradle.properti
最近在集成网易云信的即时通讯,被迫迁移到androidx,记录其中的问题。迁移到andoridx。和tinker的冲突和kotlin的冲突。kotlin之前不需要写findviewbyid,直接写的的,现在找不到了。整个项目基本都需要改,所有的界面,所有的viewmodule费了好大功夫改完了包名,一运行都没有打开app就奔溃了所有xml文件中的v4-v7控件都要更改,清...原创 2019-12-21 17:11:16 · 1027 阅读 · 0 评论 -
RecyclerView的神器BaseQuickAdapter(BaseRecyclerViewAdapterHelper)
RecycleView早已代替ListView,说是方便,但是代码量一点也没有较少,还没有监听效果。每次写RecycleView都要写一堆ViewHolder,getView等一堆,真是麻烦。 现在发现一个神器BaseQuickAdapter。现在项目用的真是一个字,爽!真是太简单了,代码量省去了一大半。省去了ViewHolder、getCount、getItem,BaseQuickAdapter原创 2017-10-31 15:03:45 · 1418 阅读 · 0 评论 -
Android中解决包冲突的问题(简单暴力)
其他人都是解决V4什么之类的包冲突,其实我之前也遇到过,还有个快捷键可以搜索冲突的类被哪些jar包引用(非ctrl+h)。最简单暴力的方法,注释下这句代码(防止是公用类),然后更改你引用的包的访问权限compile改为provided compile fileTree(include: ['*.jar'], dir: 'libs')原创 2017-06-09 23:58:33 · 926 阅读 · 0 评论 -
android有关WebView的所有
WebSettings webSettings = regis.getSettings(); // 设置WebView属性,能够执行JavaScript脚本 webSettings.setJavaScriptEnabled(true); // 设置可以访问文件 webSettings.setAllowFileAccess(true);原创 2017-09-30 08:43:13 · 287 阅读 · 0 评论 -
如何生成二维码
将输入的文字,生成相应的二维码。 这个需要个zxing.jar包 代码还是比较简单的。 xml文件中只需要三个控件,一个输入框,一个按钮,一个ImageView,这个里面放二维码。 看下面代码。package com.example.day0215;import java.util.Hashtable;import com.google.zxing.BarcodeFormat;impor原创 2016-02-16 17:28:36 · 490 阅读 · 0 评论 -
屏幕适配与布局适配
屏幕尺寸:分为广义的大小:小(small), 正常(normal) 大 (large) 和超大 (extra—large) 屏幕像素密度:dpi(每英寸点数,越高越清) 分为六大广义:低(low),ldpi-120 36*36 (0.75x) 中(medium) mdpi-160 (基本1个dp) 48*48(1x)原创 2016-07-11 23:03:08 · 531 阅读 · 0 评论 -
Error:(16) Error: "days" is not translated in "en" (English) [MissingTranslation]
添加微信分享后,用Androidstudio编译后报的错。 需要在App下的builder里面添加一段代码 buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard原创 2016-09-10 13:56:54 · 366 阅读 · 0 评论 -
E/RecyclerView: No adapter attached; skipping layout
报错的原因: 1:是否设置了LinearLayoutManager;linearLayoutManager.setOrientation(OrientationHelper.VERTICAL);recyclerView.setLayoutManager(linearLayoutManager);2: 你如果是异步获取数据,是否直接赋值给list,例如:list=myApplication.get原创 2017-03-30 15:45:55 · 7434 阅读 · 0 评论 -
通过TypeFace设置字体样式
android开发中通常需要根据客户的需要设置字体的样式,如微软雅黑,仿宋,楷体等; 首先你需要一个TTF文件,从网上下载即可。 然后在项目中新建assets文件夹,再在assets下面新建fonts文件夹,将下载的TTF文件放到建好的fonts文件下即可 通过代码引用 Typeface typeFace; typeFace = Typeface.createFromAss原创 2016-05-25 14:59:38 · 954 阅读 · 0 评论 -
Error:Failed to complete Gradle execution. Cause: The version of Gradle you are using (2.14.1) does
androidstduio更新到3.0版本后就报这个错。好像要更新Gradle版本到3.5原创 2017-05-28 16:24:48 · 3958 阅读 · 3 评论 -
性能优化技巧
1.更改冷启动白屏的问题,在appliciton中设置启动 <style name="Theme.AppCompat.Light.NoActionBar"> <item name="windowActionBar">true</item> <item name="windowNoTitle">tru原创 2018-03-22 10:09:26 · 337 阅读 · 0 评论 -
#83948 SIGSEGV(SEGV_MAPERR) #01 pc 0075de71 /vendor/lib/libllvm-glnext.so [armeabi-v8]
#83948 SIGSEGV(SEGV_MAPERR)#01 pc 0075de71 /vendor/lib/libllvm-glnext.so [armeabi-v8]最近新上项目,有的机型会报这个错误。主要集中在8.1.0系统的手机上。问题待解决,先记录...原创 2019-09-05 08:58:04 · 2468 阅读 · 5 评论 -
Android8.0 Oreo新特性
历经一年多的开发和数月以来开发者与早期用户的反复测试,Android 8.0 Oreo 终于正式面向全球发布。Android 8.0 为用户带来了诸如画中画 (Picture in picture)、自动填充 (Autofill)、免安装应用 (Instant Apps)、Google Play 保护机制 (Google Play Protect) 以及更快的启动时间等诸多新功能。我们会在今天向原创 2017-11-10 10:58:33 · 1210 阅读 · 0 评论 -
Android版本更新(适用于6.0/7.0)
版本更新需要注意的点 1.选择弹窗进度条更新还是通知栏下载更新(根据需求定。本文是通知栏更新) 2.xml文件的配置 3.权限问题,(Android7.0引入“私有目录被限制访问”)版本更新的大的步骤 1.创建一个service(在xml中注册常驻广播,保证应用没有杀死处于更新状态) 2.在service启动的时候创建一个广播接受者,用于接受下载完成的广播 3.当BroadcastRec原创 2017-11-30 17:05:30 · 5273 阅读 · 0 评论 -
SharedPreferences保存数据
通过ShredPreferences来保存数据 可以用在引导页,或者当你正在编辑时有程序进来打断编辑,用这个来保存数据它使用XML格式提供一种永久的数据存储方式。存在文件系统的data/data/你的项目名称/*.xml下public class MainActivity extends Activity { private SharedPreferences sp; privat原创 2016-07-05 21:01:46 · 349 阅读 · 0 评论 -
自定义Progress进度条
在xml中定义,完了在通过进度条加载<layer-list xmlns:android="http://schemas.android.com/apk/res/android" > <!-- 在layer-list中加载图片 并设置其属性动画是rotate旋转 设置旋转的度和中心轴 --> <item> <rotate android:dr原创 2016-06-08 00:39:46 · 348 阅读 · 0 评论 -
简单的音乐播放
使用MediaPlayer,代码不全,按钮没有初始化public class startvideo extends Activity implements OnClickListener, OnPreparedListener, OnErrorListener, OnCompletionListener { private Button btplay, btpause, btn原创 2016-06-06 22:11:29 · 434 阅读 · 0 评论 -
内存管理技巧、高性能编程技巧
1.使用Service风险,不容易被kill,就会导致进程变得非常消耗内存 官方推荐使用IntentService,可以在执行完任务后关闭进程,避免service内存泄漏 2.当界面不可见时释放内存 重写onTrimMemory 3.避免bitmap使用过度 4.使用优化过的数据集合 如SparseArray,SparseArray, 5.内原创 2016-07-10 20:55:06 · 512 阅读 · 0 评论 -
MD5加密
MD5加密就是将你写好的文本经行生成数字或者英文字母组合等,当生成的组合发生变化时,就可以判定是该文本发生的改动。 核心API是MessageDigest 今天尝试了两种生成加密文档,一种全部生成的是数字,另一种生成的是数字加英文字母的。看下面代码,先定义一个MD5类,在这个类里面封装好生成加密的步骤package com.example.day0216md5;import java.io.Un原创 2016-02-16 18:08:40 · 292 阅读 · 0 评论 -
webService
webService 需要用到的IPA 1.SoapObject:这个用来设置webService的接口,里面放网页地址,几你需要的请求的选项; 2.SoapSerializationEnvelope:生成调用WebService方法的SOAP请求信息,并指定SOAP的版本; 3.HttpTransportSE:调用webService 调用webService的主要步骤: 1.定义地址原创 2016-03-07 09:58:23 · 278 阅读 · 0 评论 -
防止handler内存泄漏
内存泄漏:程序运行会用到内存,在退出程序的时候,占用内存的数据没有释放,那么当数据越来越多的时候,就会产生内存泄漏。 handler为什么会内存泄漏呢,handler是个内部类,内部类会持有外部类的引用,内部类需要依赖外部类。handler需要定义为静态类,当你推出Activity,handler还在工作, 下面是引起内存溢出的:Activity已经finish,但handler还在工作publ原创 2016-05-21 13:54:00 · 620 阅读 · 0 评论 -
访问网络图片资源并显示
通过url地址,在通过handler将图片显示在ImageView上public class MainActivity extends Activity { private ImageView iv; private myhandler handler=new myhandler(this); private final int LOAD_SUCCESS=0; /**原创 2016-05-21 14:09:05 · 536 阅读 · 0 评论 -
Service
服务需要在清单文件中注册 Started service 1.服务同时只会被创建一次,可以通过外部调用Stopservice来终止服务 2.当执行一个已启动的服务,会直接调用onStartCommand方法来执行业务 3.默认情况下服务与主线程在同一线程下,所有会执行主线程,服务里面调用线程 4.使用startService启动的服务,如果不关闭,会一直在后台运行onStartCo原创 2016-07-05 23:13:59 · 273 阅读 · 0 评论 -
BroadcastReceiver—普通广播
它是用来接收来自系统的和应用中的广播 如开机产生广播,网络发生广播, 如电池电量发生改变 广播的类型: 1:Normal broadcasts 默认广播 发送一个默认的广播 context.sendBradcast()方法,普通广播对于多个接收者来说完全异步的, 通常每个接收者都无需等待即可以接收广播,接收者互相之间不会有影响。对于原创 2016-07-06 22:57:59 · 497 阅读 · 0 评论 -
BroadcastReceiver-有序广播
Order broadcasts 有序广播 使用:context.sendOrderBradcast() 有序广播比较特殊,它每次只发送到优先级较高的接收者那里 然后由高到低,高的可以阻止低的 短信拦截 在注册广播的时候可以使用优先级android:priority属性 这个属性的范围在 -1000到1000, 数值越大优先级越高原创 2016-07-06 23:05:01 · 379 阅读 · 0 评论 -
获取图片,视频,音频
待完善public class MainActivity extends Activity{ public static final int MEDIA_TYPE_IMAGE = 1; public static final int MEDIA_TYPE_VIDEO = 2; private MediaRecorder mr; private boolean preppa原创 2016-07-09 19:07:17 · 373 阅读 · 0 评论 -
Android日常积累
1.Edittext背景为白色时,光标不显示设置android:textCursorDrawable="@null2.自定义toast LayoutInflater inf=inflater.from(context); View view=inf.inflate(R.layout.include_toast,null); TextView tv=(TextVi原创 2017-03-14 08:34:09 · 656 阅读 · 0 评论 -
Android中ContentValues用法
ContentValues用来存储数据,key只能是String类型,values只能存储基本类型的数据,像string,int之类的,不能存储对象这种东西。ContentValues 常用在数据库中的操作。 ContentValues cv = new ContentValues(); cv.put("CATInId", InID);/原创 2016-05-27 09:56:42 · 3479 阅读 · 0 评论
分享