- 博客(104)
- 资源 (37)
- 收藏
- 关注
原创 Android音频播放
在Android中播放音频文件一般使用MediaPlayer类来实现,他对多种格式的音频文件提供了非常全面的控制方法,从而使得播放器变得十分简单。File file = new File(Environment.getExternalStorageDirectory(), "456.mp3");mediaPlayer.setDataSource(file.getPath()); // 指定音频文件的路径mediaPlayer.prepare(); // 让MediaPlaye...
2020-06-30 23:36:08 2809 7
原创 通知Notification的基本使用
1.介绍 通知是android系统中比较有特色的功能之一,当某个应用程序希望向用户发出一些提示信息的时候,而应用程序又不在前台运行,可以借助通知来实现。发出一条通知后手机通知栏会显示一条通知消息。 通知可以在活动、广播、服务里创建。虽然通知在活动里创建比较少,但是为了演示方便还是选择了在活动里创建。2.举例2.1 发送通知点击发送通知。NotificationManager manager = (NotificationMana...
2020-06-30 22:33:48 1447 2
原创 适配android7.0 FileUriExposeException
当android7.0以上打开相机拍一张照片,存储的时候崩溃,报FileUriExposeException异常。原因是7.0以后直接使用本地路径的uri被认为是不安全的。具体解释:https://developer.android.google.cn/reference/android/os/FileUriExposedException.html翻译一下: 当应用程序file://Uri向其他应用程序公开时引发的异常。不推荐这种方法,因为接收方的应用程序可能无...
2020-06-28 20:52:43 323 2
原创 Android数据存储_LitePal
LitePal是一款开源的Android数据库框架,它采用了对象关系映射(ORM)的模式,并将我们平时开发时最常用到的一些数据库功能进行了封装,使得不用编写一行SQL语句就可以完成各种建表、増删改查的操作。并且LitePal很“轻”,jar包只有100k不到,而且近乎零配置,这一点和Hibernate这类的框架有很大区别。目前LitePal的源码已经托管到了GitHub上,地址是https://github.com/LitePalFramework/LitePal。...
2020-06-15 21:51:32 589 2
原创 Android数据存储_SQLite数据库存储
Android数据存储的方式有种,主要有三种。分别为:文件存储,SharedPreference存储,以及数据库存储。
2020-06-11 22:06:25 820 2
原创 Android数据存储_SharedPreference存储
Android数据存储的方式有种,主要有三种。分别为:文件存储,SharedPreference存储,以及数据库存储。这篇主要讲SharedPreference存储。1.基本据介绍SharedPreference是使用键值对来存储的。当保存数的时候需要提供一个对应的建,装在读取的时候就可以把对应的值取处来了。同时还支持多种不同的数据类型存储,如果存储的数据类型是整型,那么取出来的也是整型。Android中一共提供了3中方法用于得到SharedPreference对象。1.1、Contex
2020-06-10 18:00:54 767 2
原创 Android广播机制(一)
Android 应用与 Android 系统和其他 Android 应用之间可以相互收发广播消息,这与发布-订阅设计模式相似。这些广播会在所关注的事件发生时发送。举例来说,Android 系统会在发生各种系统事件时发送广播,例如系统启动或设备开始充电时。再比如,应用可以发送自定义广播来通知其他应用它们可能感兴趣的事件(例如,一些新数据已下载)。 应用可以注册接收特定的广播。广播发出后,系统会自动将广播传送给同意接收这种广播的应用。 一般来说,广播可作为跨应用和普通用户流之外的消息...
2020-06-05 15:47:22 450 2
原创 Android Intent的使用
Intent 是一个消息传递对象,可以用来从其他应用组件请求操作。其中主要有三种,1.启动Activity;2.启动服务;3.传递广播。Intent有显示和隐示之分
2020-05-07 15:45:56 1155 9
原创 Android序列化
你真的会使用android序列化吗?目录1.Serializable接口。User类序列化反序列化完整代码:布局自动检测serialVersionUID结果:2.parcelable自动生成Parcelable相关代码3.Parcelable和Serializable的优缺点1.Serializable接口。Serializable接口...
2019-11-07 17:42:57 424 2
原创 C语言的学习二
今天学习什么是指针指针是什么?指针是一块内存空间(内存地址)咱们用代码理解一下#include<stdio.h>main(){ int i ;//申请一块内存空间,空间大小的4byte ;给这个内存空间去一个名字i i=3;//把一个int类型数据为3,放到i的内存空间里面 //int i 创建出来存放int类型的数据 ;double d...
2019-07-28 16:35:24 248 2
原创 C语言的学习一
学使用JNI就需要了解一下C语言的知识了。C语言的数据类型首先回顾一下java语言的数据类型 对比看一下C语言的数据类型int 4byte 32位 4byte 32位byte 1byte 8...
2019-07-23 19:20:07 307 2
原创 JNI入门
基于Androidstudio 学习JNI。 最近项目需要,遂开始学习JNI。什么是JNI?java native interface(java本地接口),通过使用java本地接口去调用C代码,用C代码去控制Android中的java实现和界面显示为什么使用JNI?复用很多优秀的c/c++代码 - ffmpeg 多媒体播放器 - opencv 图形识别引...
2019-07-04 22:59:56 287 2
原创 androidStudio升级以及遇到的问题
目前使用的版本3.0.1升级的版本3.4.1一、升级流程1.选择File > Settings菜单2.选择左侧的Appearance & Behavior > System Settings > Updates菜单3.选择需要更新的android studio版本,各版本介绍如下: Stable Channel(稳定版) Beta Channe...
2019-06-18 10:58:54 1943 2
原创 HTML 基础学习
html的基础学习。如何新建一个html文件?1.1第一步先新建一个txt文本文件。1.2第二步 八下面的代码写进去。这是固定格式 <html> <head> <title> </title> </head> <bo...
2019-04-02 22:45:54 408 2
原创 Activity的工作过程
首先感谢《Android开发艺术探索》然后感谢http://sigechuizi.cn/article/47基于android8.0 源码解析Activity是android的四大组件之一,主要用于向用户展示一个界面,并可以接收用户的输入信息进行交互。因为系统对其做了很好的封装,所以我们在使用的时候简单了很多。导致我们很少注意他的内部实现流程,今天通过阅读源码的方式来认识一下acti...
2019-03-26 11:23:28 744 2
原创 android修改包名、生成签名文件、Android Studio获取开发版SHA1值和发布版SHA1值
不常用。但是每次用的时候都要百度,所以自己记录一下。仅供参考。一。修改包名1.修改自己文件的包名。如果没有完全打开包结构,把包全部展开。 然后点击要修改的包名右键Refactor->Rename或者shift+F6然后选择 Rename package修改好包名。选择refactor然后选择Do Refactor2 .查看清单文件的包名 这...
2018-11-22 10:52:11 1752 2
原创 问题汇总
开发过程中遇到的问题记录。1.Error:Execution failed for task ':comparablelist:processDebugAndroidTestResources'.> No slave process to process jobs, aborting解决方案A:重启studio 直接点击 File>Invalidate Caches...
2018-09-17 13:15:51 240 2
原创 高德地图SDK 总结记录
项目中用的高德地图SDK以前也用过不过没有这么多功能。现在开始整理记录一下,帮助自己也帮助他人。1.展示所有的marker在屏幕上 //创建一个 经纬度坐标矩形区域的生成器。 LatLngBounds.Builder boundsBuilder = new LatLngBounds.Builder(); //将经纬度转换成LatLng 并存入矩形区域 LatLng latlng =...
2018-09-06 16:46:06 678 1
原创 Textview水平、竖直分散对齐
Textview是一个android里面很基础的控件。使用起来也很方便单是也有一定的局限性。前几天UI设计了一个分散对齐的文本。这个在显示的时候就很不好调了。所以直接定义一个textview吧。这里首先感谢:https://github.com/ywanhzy/AlignedTextView。根据他的水平分散对齐来自己实现了垂直的分散对齐。效果如下: 其实原...
2018-09-03 10:31:00 1999 1
原创 Android常见的三种弹框
Android在开发中经常会遇到有弹框的需求。经常使用的有Dialog 弹框,Window弹框,Activity伪弹框这三种。感谢http://sigechuizi.cn/article/107今天主要是讲解Dialog的使用:Dialog继承Object,异步调用,不会阻塞UI线程。以下是对他的整体框架:最常用的还是AlertDialog.今天主要是讲他的用法。AlertDi...
2018-04-01 17:13:13 116123 43
原创 Android Activity生命周期
最近在面试。总是会遇到这个问题。现在来系统的总结一下:首先是返回栈:android是使用任务(Task)来管理activity(活动)的。一个任务就是一组存放在栈里的activity的集合也叫返回栈(Back Stack)。栈是一种先进先出的的数据结构。在默认的情况下我们启动一个新的activity,他会在返回栈的栈顶。当被销毁的时候会从栈顶出栈。这时前一个activity会处于返回栈的栈顶。系统...
2018-03-15 21:01:53 332 1
原创 Android中emoji的处理以及和iOS端互通
因为项目中有第三方登录,微信昵称有带有emoji 。想要完美的展示出来就需要重新编码,而且还要考虑到和iOS 的互通。首先是拿到字符串判断有没有emoji表情。有的话对其进行编码。展示的时候先要判断有没有编码后的emoji,有的话还原在展示。在判断的时候先要对字符串转换成字符数组。每一个字符在转化成Unicode编码(toCodePoint)拿着这个编码和emoji的Unicode
2018-01-23 17:39:44 4374 1
原创 Android解决65535问题
Error:Error converting bytecode to dex:Cause: com.android.dex.DexIndexOverflowException: Cannot merge new index 66125 into a non-jumbo instruction!Android应用以DEX文件的形式存储字节码文件,在Dalvik字节码规范里,方法引用索引met
2018-01-22 18:49:46 442 1
原创 kotlin 不可逆加密
这里说的不可逆加密有MD5 SHA1 SHA256/** * 消息摘要 * 不可逆 */object MessageDigetUtil { /** * 用户登录用的比较广泛 */ fun md5(input: String): String { val digest = MessageDigest.getInstance("MD5
2018-01-08 14:19:41 1252 2
原创 kotlin 数字签名
数字签名(又称公钥数字签名、电子签章)是一种类似写在纸上的普通的物理签名,但是使用了公钥加密领域的技术实现,用于鉴别数字信息的方法。一套数字签名通常定义两种互补的运算,一个用于签名,另一个用于验证。数字签名,就是只有信息的发送者才能产生的别人无法伪造的一段数字串,这段数字串同时也是对信息的发送者发送信息真实性的一个有效证明。数字签名是非对称密钥加密技术与数字摘要技术的应用。
2018-01-08 14:15:03 680 1
原创 RSA非对称加密解,分段加密解密
RSA公钥加密算法是1977年由罗纳德·李维斯特(Ron Rivest)、阿迪·萨莫尔(Adi Shamir)和伦纳德·阿德曼(Leonard Adleman)一起提出的。1987年7月首次在美国公布,当时他们三人都在麻省理工学院工作实习。RSA就是他们三人姓氏开头字母拼在一起组成的。RSA是目前最有影响力和最常用的公钥加密算法,它能够抵抗到目前为止已知的绝大多数密码攻击,已被ISO推荐为公钥数据...
2018-01-04 15:02:22 2431 1
原创 AES /DES 加密使用 CBC/ECB 工作模式
算法/工作模式、填充模式AES DES 是加密算法CBC ECB 是工作模式后面的是 填充模式加密的工作模式有ECB、CBC、CFB、OFB其中:CBC 和 ECB 比较常用ECB 电子密码本模式:Electronic codebook 每块堵路加密 优点:分块处理 并行处理缺点:同样的原文得到相同的密文 容易被攻击
2018-01-03 18:41:11 7221 1
原创 kotlin AES加密
高级加密标准(英语:Advanced Encryption Standard,缩写:AES),在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。经过五年的甄选流程,高级加密标准由美国国家标准与技术研究院(NIST)于2001年11月26日发布于FIPS PUB 197,并在2002年5月26日成为有效
2018-01-02 14:50:34 2707 1
原创 kotlin DES加密
des对称加密,对称加密,是一种比较传统的加密方式,其加密运算、解密运算使用的是同样的密钥,信息的发送者和信息的接收者在进行信息的传输与处理时,必须共同持有该密码(称为对称密码),是一种对称加密算法。也就是说加密和解密用的是同一把钥匙。用一个单利模式来写/** * Created by wjs 2018/1/2 */object DESCrypt { //de
2018-01-02 14:38:59 1129 1
原创 studio 不能创建class
Unable to parse template "Class" Error message: This template did not produc... 更换了sdk后突然不能创建类了。接口也不行直接报上面的错经过查看file->settings->Editor->File and Code Templates 里面的模板都是空白的当然可以把#if (${PACKAG
2017-12-06 14:15:34 1219 3
原创 Android使用glide实现毛玻璃效果
因为需求 需要对图片做毛玻璃效果。查询了很多,有好多是引用compile 'jp.wasabeef:glide-transformations:2.0.1' 而我不想引用好多包,毕竟已经有glide了。嗨哟啊换好麻烦的。最后还是用的 BlurTransformation 这个3.0的glide代码/** * 毛玻璃效果 * Created by wjs
2017-11-20 18:20:53 3787 1
原创 android获取手机通讯录和sim卡通讯录
获取手机通讯录1 权限android:name="android.permission.READ_CONTACTS"/>注意6.0还需要动态权限 demo会有详细的2.获取手机通讯录// 获取手机联系人Cursor phoneCursor = resolver.query(ContactsContract.CommonDataKinds.Phone.C
2017-11-13 18:04:28 3015 1
MyCollapsingToolbarLayout.zip
2020-08-22
MySwipeRefreshLayout.zip
2020-08-22
MyCardView.zip
2020-08-19
MyFloatingActionButton.zip
2020-08-11
MyDrawerLayout.zip
2020-08-10
MyToolBar.zip
2020-08-09
MyDownload.zip
2020-08-01
MyBroadcastReceiver1.zip
2020-06-05
MyFragment4.zip
2020-05-31
MyFragment3.zip
2020-05-31
MyFragment2.zip
2020-05-30
MyFragment1.zip
2020-05-30
MyTextview
2018-09-03
Unity2Android_2018_4_30.zip
2021-07-02
unityplugin.zip
2021-07-02
unityplugin.zip
2021-07-02
MyEditTextDemo1.zip
2020-12-03
MyService.zip
2020-07-26
MyAsyncTaskDemo.zip
2020-07-16
MyThred.zip
2020-07-15
MyOkHttpDemo.zip
2020-07-12
MyHttpURLConnection.zip
2020-07-12
MyVoice.zip
2020-06-30
MyAudio.zip
2020-06-30
MyNotification.zip
2020-06-30
MySave4.zip
2020-06-16
MySave3.zip
2020-06-11
MySave2.zip
2020-06-10
MySave1.zip
2020-06-10
MyBroadcastReceiver.zip
2020-06-08
android广播机制(二)
2020-06-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人