android
stevefat
这个作者很懒,什么都没留下…
展开
-
Java 使用AES/CBC/PKCS7Padding 加解密字符串
介于java 不支持PKCS7Padding,只支持PKCS5Padding 但是PKCS7Padding 和 PKCS5Padding 没有什么区别,要实现在java端用PKCS7Padding填充,需要用到bouncycastle组件来实现所以需要一个jar 来支持。bcprov-jdk16-139.jar下载地址:http://www.bouncycastle.org/archive/1...原创 2020-01-09 10:44:10 · 1002 阅读 · 0 评论 -
Java 的单例模式写法
volatile关键字的双重校验锁写法public class Singleton { private volatile static Singleton singleton; private Singleton (){} public static Singleton getSingleton() { if (singleton == null) {原创 2017-01-25 08:38:06 · 550 阅读 · 0 评论 -
ListView 的局部刷新的简单实现
一种常用的listview 单条item 刷新private void updateItem(int index) { int visiblePosition = listView.getFirstVisiblePosition(); if (index - visiblePosition >= 0) { //得到要更新的item的view View原创 2017-01-25 08:53:19 · 247 阅读 · 0 评论 -
第二行代码--第一章学习笔记
关于Activity的一些简单记录1.关于团队开发中 Activity 跳转,参数传递的问题: 可以在需要接受参数的Activity 中写好方法: public static void actionStart(Context context,String data1,String data2){ Intent intent = new Intent(context,Se原创 2017-02-24 16:46:25 · 314 阅读 · 0 评论 -
ViewPager 和Fragment 的一点点交互心得
这几天在写viewpager 和fragment 的 一个组合,出现在当前页面的时候,setCurrentItem() 的方法没有起到什么作用。 这是因为 ViewPager 的缓存原因,所以只能另辟他径。在 adapger 中用集合来保存每一个 Fragment 的对象,用到的时候直接从中取出来public class PagerFragmentAdapter extends FragmentS原创 2017-02-24 17:03:11 · 847 阅读 · 0 评论 -
Android --学习笔记记录
广播:–本地广播:发出的广播消息,其他应用接受不到,只有本应用内可以接受,速度快,效率高: 简单例子(本地广播接收器):public class MainActivity extends AppCompatActivity { private IntentFilter mIntentFilter; private LocalBroadcastManager mBroadcastMan原创 2017-02-27 10:20:11 · 273 阅读 · 0 评论 -
android ---批量申请权限
权限最近在写的App 在7.0 的时候需要获取一些危险权限(关于危险权限可以看:https://developer.android.google.cn/guide/topics/security/permissions.html#normal-dangerous) 刚开始写的时候是一个一个的获取,开始觉得没有什么,但是到后期获取的权限多了,就感觉有点麻烦了,并且特别烦人。所以找找看有没有比较简单的原创 2017-02-27 15:13:52 · 3829 阅读 · 0 评论 -
Android -- 通知
通知的使用只是做一下简单的介绍。 笔记而已 Intent intent = new Intent(SecondActivity.this,MainActivity.class); PendingIntent pendingIntent =PendingIntent.getActivity(SecondActivity.this,0,intent,0);原创 2017-02-27 16:18:19 · 516 阅读 · 0 评论 -
android 隐藏底部的 菜单栏
Android 底部的菜单栏隐藏: 不做过多介绍直接代码:隐藏菜单栏/** * 隐藏虚拟按键,并且全屏 */protected void hideBottomUIMenu() { int flags; int curApiVersion = android.os.Build.VERSION.SDK_INT; // This work only for android原创 2017-03-11 09:07:20 · 4846 阅读 · 0 评论 -
获取Navigation Bar 的高度
针对有些手机的的导航栏,无法彻底的隐藏,所以弹出的菜单会和导航栏重叠,介于此种情况,不隐藏导航栏,让菜单直接在导航栏上显示.ps: 这种情况常见于 阅读界面获取导航栏的高度:/** * 获取navigationbar 的高度 * @return */ public int getNavigationBarHeight() { boolean has原创 2017-03-14 14:55:25 · 1730 阅读 · 0 评论 -
apk 上传应用商店加固后手动签名
jarsigner -verbose -keystore xxx.jks -signedjar xxx.apk(签名后的apk名字) xxx.apk(需要签名的apk) xxx(keystore别名)原创 2017-10-25 14:27:13 · 510 阅读 · 0 评论 -
在8.0 以上创建文件夹的时候出现问题
随笔记录一下: 在Android 8.0 以上的手机上创建文件夹或者文件的时候无法创建,后来出现Java.lang.SecurityException: xx.xx.xx was not granted this permission: android.permission.WRITE_SETTINGS. 经过查找说的原因是权限没有获取到,但是在首页已经获取过了,不知道为什么,原创 2018-03-06 14:39:00 · 1876 阅读 · 0 评论 -
简单自定义View 的实现
自定义View的实现开始自定义View 的实现onMeasureMeasureSpec 的mode 解释动手写写 `onMeasure` 函数重写onDraw()自定义属性自定义ViewGroup 布局开始自定义View 的实现我们自定义view 需要重写其中的两个方法:onMeasure() 是测量当前View 的尺寸onDraw() 负责把这个View 绘制出来还得重写至少...原创 2019-03-21 19:17:43 · 433 阅读 · 0 评论 -
关于Android Studio 打包出现 The same input jar is specified twice 的解决办法
关于Android Studio 打包出现 The same input jar is specified twice 的解决办法今天在继承了支付宝App 支付的项目上打包测试的时候出现了Warning:Exception while processing task java.io.IOException: The same input jar [E:\AndroidStudioProjects\*原创 2017-01-06 11:07:15 · 2255 阅读 · 0 评论 -
关于进程守护,拉起问题
之前看了一篇文章说的是进程的守护问题,忘记实在哪里看了,现在有时间吧代码发出来,做下笔记 这一块的问题 常见于推送相关的,因为有的时候系统会把,开启的服务给kill 了,但是服务不会自动启动 1.aidl 文件// IProcessService.aidlpackage com.stevefat.myapplication;// Declare any non-default types he原创 2016-11-15 10:35:44 · 1559 阅读 · 0 评论 -
基于netty 的android Socket 聊天室客户端
公司最近在开发一个移动端的聊天室,c#写的服务端。android 和ios 的客户端,这里用到的socket 通讯,但是socket 的io阻塞导致数据沾包,里一个小伙写了一个解决沾包的问题,但是我看了不是太理想,只有这个项目可以使用,换了其他项目就不能用了。偶然发现netty 这个东西。网上关于这个的资料不多,都是服务端的,android 这边几乎没有发现有用的资料。然后自己写了一个,现在贴出来原创 2015-06-09 15:26:37 · 2956 阅读 · 0 评论 -
Android无需权限显示悬浮窗, 兼谈逆向分析app
作者:Shawon前言最近UC浏览器中文版出了一个快速搜索的功能, 在使用其他app的时候, 如果复制了一些内容, 屏幕顶部会弹一个窗口, 提示一些操作, 点击后跳转到UC, 显示这个悬浮窗不需要申请android.permission.SYSTEM_ALERT_WINDOW权限.如下图, 截图是在使用Chrome时截的, 但是屏幕顶部却有UC的view浮在转载 2016-01-08 17:41:09 · 832 阅读 · 0 评论 -
判断app 在前后台的问题
今天在写推送的时候需要判断app 在前后台的问题。 1.网络上普遍是用的两种方式,不是太好,会时不时的出问题,并且在5.0 + 的系统上回判断错误所以在google 以后找到了一个比较好的的方案。 2.老外博客地址 (在android 4.0+ 以上有个 Application.registerActivityLifecycleCallbacks 当你在Application原创 2016-01-08 18:00:06 · 627 阅读 · 0 评论 -
Android 获取屏幕的宽度和高度
WindowManager wm = this.getWindowManager();int width = wm.getDefaultDisplay().getWidth();int height = wm.getDefaultDisplay().getHeight();原创 2016-02-05 14:27:20 · 401 阅读 · 0 评论 -
Android GridView 的简单例子
也是今天用到的一个东西,就是简单实现九宫格的Demo1.就是定义各种layout 和对应的item 我的:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_par原创 2016-02-05 14:34:58 · 588 阅读 · 0 评论 -
关于重新实现TextView 的超链接点击事件
TextView的超链接重新实现原创 2016-02-02 16:11:33 · 366 阅读 · 0 评论 -
android 获取状态栏的高度
获取状态栏的高度/** * 获取状态栏的高度 * @return */ public int getStatusBarHeight() { int result = 0; int resourceId = getResources().getIdentifier("status_bar_height", "dimen"原创 2016-06-20 14:59:25 · 323 阅读 · 0 评论 -
关于判断当前Activity是否在顶层栈
在Activity 中 有时候需要判断当前在做某些操作的Activity 是否在运行,然后在进行下一步的操作//isFinishing() 这个是Activity 中的一个判断方法,判断Activit 是否关闭if (!isFinishing()) { Intent intent = new Intent(MainActivity.this, OtherActivity.class);原创 2016-08-12 14:47:35 · 862 阅读 · 0 评论 -
关于Android 不居中的上下两个空间的宽度一致的问题
有的时候在使用拼接的布局中容易出现上下两个控价的宽度不一致,例如: 我想把上面的的三角和下面的 a.9.png 的拼成一个对话框 然后超出我的意料,上下居然不能居中对齐,这扔我很困惑,然后就在一致调试,还是不行,我随手一拉上面的控件,左右都拉了下,然后好了,一看xml 的布局,明白了.重点看红色框框中的内容 <TextView android:id="@+id/tv_top原创 2016-10-25 15:25:48 · 553 阅读 · 0 评论 -
Android 使用AES/CBC/PKCS7Padding 加解密字符串
今天项目中要用到这个加解密的东西,找了一天,终于弄好了,现在就记录下来原创 2015-05-26 15:23:20 · 11219 阅读 · 0 评论 -
基于Android Studio 2.0 Preview 8 NDK 开发
基于项目需要用到ndk 开发 ,然后别的依赖包需要 gradle 来构建,所以选择了Android Studio 来开发。配置NDkj 开发环境有点麻烦,现在记录一下。1. 关于Project 的gradle 配置谷歌对应的一个配置图。可以参考2.基于model 的gradle 的配置这个配置一定要注意,否则会有很多的错误配置如上图下面原创 2016-02-04 20:22:21 · 1036 阅读 · 0 评论 -
关于win10 下运行 Genymotion vm virtualbox VERR_PDM_DRIVER_NOT_FOUND 错误
VERR_PDM_DRIVER_NOT_FOUND win 10 下运行Genymotion 会找不到 虚拟机,然后再 vm virtualbox 中直接启动虚拟机或出现无法创建的错误,看详情 会有 VERR_PDM_DRIVER_NOT_FOUND 这个错误。 这个其实是因为我的 win10 是64 的位的系统,而虚拟机的是32位的系统,造成了兼容性错误,所以需要把虚拟机原创 2016-07-06 11:18:26 · 2541 阅读 · 0 评论 -
简单的JNI开发配置与测试--android
这段时间写的一个android项目用到了cfang原创 2014-04-10 11:37:08 · 662 阅读 · 1 评论