- 博客(157)
- 资源 (4)
- 收藏
- 关注
原创 android studio ndk开发遇到的问题
1. ndk版本和api版本不一致导致无法编译2.as2.3 最低支持api25 3. jni文件下 必须有2个以上c文件 否则编译无法通过
2018-07-26 08:50:59
365
原创 android studio 2.3 cmake ndk开发第一个项目运行
勾选support c++的ndk配置创建项目 添加defaultConfig { ndk{ moduleName "HelloJni" //so文件: lib+moduleName+.so abiFilters "armeabi", "armeabi-v7a", "x86" //cpu的类型 ...
2018-07-26 08:49:08
328
原创 python 3.6.4 win10 安装 pycrypto模块的坑
需要VC++在VC++的命令行里运行下面网址里的命令 安装即可https://blog.zengrong.net/post/2655.html
2018-05-14 15:26:40
598
原创 python socket 2018年5月8日 看的需要注意的点
1.socket的 send方法的 data参数 是 byte数组类型 不是字符串类型 send时要调用encode方法将字符串转变为字节数组该方法默认为utf-8编码 decode方法是将byte数组转化为string类型 2.send方法和sendall方法 send方法是超过最大长度不会发送,比如最大传输单元为1000可是send了2000的数据,那么只会传输小于1000的数...
2018-05-08 20:56:47
385
原创 用到过的网站 记一下 2018年5月8日
http://www.xicidaili.com/nn/ 国内高匿代理IP 用于python爬虫代理????
2018-05-08 14:56:37
320
原创 Android 软键盘上面 输入框弹起 计算软键盘高度法实现
大概方法: OnGlobalLayoutListener方法监听window的变化 如果可见屏幕的高度小于屏幕高度的80% 则说明弹出了这种方式通常是在 默认的弹出冲突了 或者已经使用了默认的弹出方式的情况下使用。。 public void addOnSoftKeyBoardVisibleListener(Activity activity) { final View dec...
2018-05-01 08:45:31
1553
原创 python初安装出现的一点问题(pycharm无法安装第三方模块,pip无法升级等)
今天安装pyCharm准备熟悉下环境,安装很顺利,找个激活码什么的,但是当我想导入一个第三方模块的时候就出现了问题,问题如下图所示对于一个刚入门的我来说,比较难过,看描述意思是模块pip没有main属性,描述的很清楚,但。。。怎么解决呢。。。还好网上有一篇文章讲了这个问题。。https://www.cnblogs.com/Fordestiny/p/8901100.html找到安装目录下 helpe...
2018-04-23 17:37:46
4264
转载 监测软键盘的弹出和收起
boolean isVisiableForLast = false; int keyboardHeight = 0; public void addOnSoftKeyBoardVisibleListener(Activity activity) { final View decorView = activity.getWindow().getDecorView()...
2018-04-17 09:15:53
399
原创 android studio 导入他人项目的坑
android studio 导入别人项目时总会由于gradle的版本不同产生一系列问题 很无语对于不能翻墙的我来说 很难受一般来说导入他人项目 最好能和他的gradle版本一致(我的不一致,搞了半天没搞好,于是新下了个和他版本一致的as。。。)新下了之后 gradle版本一致了 又缺少tool 于是点击下载 死活下不开 弹还出个提示说 不能下载 上网百度了一番 原来是我 之前没重新下载...
2018-04-11 02:15:58
1585
原创 RecyclerView notifyItemRemoved 的坑
RecyclerView 的 notifyItemRemoved 方法 可以 实现 带动画的 删除 先设置 recyclerView.setItemAnimator(new DefaultItemAnimator()); 这样可以带有 添加和删除的动画 然后 更新的时候 不要使用 notifyDataSetChanged 方法 使用 notifyItemRemo
2017-04-27 19:47:54
2029
原创 关于最下方 EditText 获取焦点 界面上移的问题
1.当正常的activity 没有设置adjustpan 时 界面中 没有 ListView时 界面不会上移2.当activity 设置了 adjustpan 会自动上移 3.当activity没设置 adjustpan 界面中有 ListView 并且Listview设置了 scrollbar=none时 会上移很奇怪 把scrollbar
2017-04-12 21:45:07
2682
原创 Android Studio lint工具所提示的需要注意的内容简要记录
Android lint部分:Duplicated icons under different names 相同的icon 用了不同的名字 FrameLayout can be replaced with tag FrameLayout 可以被替换成 merge标签 Handler reference leaks handler的内存溢出问题 替换成静态 + 弱引用 Hardcode
2016-12-22 18:55:24
2987
原创 React-Native 原生跳转不同的RN界面的实现思路
最近在研究React-Native开发App,准备把RN运用到自己的毕业设计中,因为以前做过一个购物社交类的App,但是没有做完,所以就想把它完善一下作为毕业设计,而RN可以热更新,所以对于购物类app中的一些时常变化的商品介绍列表就准备用一下RN来试试了。 既然要使用RN和Native混合使用,就得考虑原生如何向RN跳转的问题了,之前做过的RN项目都是直接一个Activity进入index.an
2016-12-20 15:51:49
6442
转载 Android 默认水波纹的使用和去除
actionBarItemBackground 5.0以上超出边界圆形水波纹 selectableItemBackground 5.0以上边界内圆形水波纹 style=”?android:attr/borderlessButtonStyle” 无效果 这两个属性在5.0以下是默认的灰色效果,个人觉得也很唯美大笑用法 Android:background=”?android:attr/
2016-11-08 16:03:04
10030
原创 Android ViewPager + Fragment 懒加载数据 可操作控件版
ScrollView + ViewPager + Fragment 懒加载数据 和 动态Fragment高度问题
2016-11-07 17:28:54
497
原创 Android 反编译XML 代码乱码问题 解决
今天在写一个布局的时候 出了点小问题 原本已经完成的布局让我一不小心改掉了,由于修改回去比较麻烦,一想我自己手机上安装的是没修改以前的,因此也就想着反编译一下取回当时的代码了。首先我把apk直接解压了,在res文件夹下 打开布局文件,可是却是乱码,不可读。 以前的时候是eclipse写的apk 反编译用的是Androidfby 直接反编译apk可以得到正确的xml布局,可对于as apk就
2016-11-02 16:23:51
7676
原创 Android MediaRecorder 录制视频出现的问题及解决
1. 报错这种情况一般是由于 初始化顺序不对 或者是设置了分辨率手机不兼容 需要设置为CamcorderProfile profile = CamcorderProfile.get(CamcorderProfile.QUALITY_HIGH); mediaRecorder.setVideoSize(profile.videoFrameWidth, profile.vid
2016-10-10 16:34:00
7407
3
原创 Android EditText 自动获取焦点问题
只需要在 EditText的父布局 自动获取焦点即可 android:focusable="true" android:xxtouchxxfocusable="true"
2016-09-21 15:31:11
1016
原创 Android 布局优化
Android布局优化是性能优化的一个方面,主要是选择适合的布局 尽量减少嵌套的层数。使用工具检查嵌套层数如何减少布局的嵌套层数呢,一种是我们写代码的时候自行注意,还可以使用工具来检查布局的层数 如果你是使用AS开发的话,你可以在 AS 工具栏中点击 Tools–>Android–>Android Device Monitor–>Hierarchy View 但是这个工具 如果使用的真机不能使
2016-08-22 16:56:50
409
原创 Android 自定义可自动扩大缩小的ViewPager
前些天看到蘑菇街的主页上有一个效果 左右滑动照片,控件可以随着照片的大小放大缩小 于是就自己试着实现了以下 我是使用ViewPager实现的 在其基础上进行了简单的改造。 代码如下:public class ScaleViewPager extends ViewPager { interface ScalePagerChangedListener { publi
2016-08-17 14:54:46
2048
原创 Android ViewPager 无限循环左右滑动(可自动) 实现
对于ViewPager 广告页 这个功能 很多APP都有这个功能 在网上也看过一些资料,我就在这把我自己完整的实现方法写出来吧 Demo放在最下面 基础的ViewPager:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android
2016-08-17 14:43:51
15218
1
转载 Android 自定义ViewPager 过渡效果
Android 实现个性的ViewPager切换动画 实战PageTransformer(兼容Android3.0以下)其中 -1,0 表示左边的页面 0,1表示 右边的页面
2016-08-08 19:46:58
424
原创 Java 泛型的好处及实现原理
做笔试模拟题遇到这样一个问题,平时常用泛型,好处也差不多知道,但是让写出来就不大写的出来了,所以在这边整理一下,以后也可以回顾回顾首先先总结一下好处: 简单易用 消除强制类型转换 保证类型安全 泛型好处:泛型简单易用 类型安全 泛型的主要目标是实现java的类型安全。 泛型可以使编译器知道一个对象的限定类型是什么,这样编译器就可以在一个高的程度上验证这个类型消除了强制类型转换 使得
2016-08-02 11:29:10
16588
原创 Android Allocation Tracker和TraceView的使用
在介绍这两个工具之前,我们要先知道这两个工具的作用 Allocation Tracker : 分析内存占用情况 在Monitors 的 memory中 可以看出各个成员在内存中所占的大小 追踪对象在内存创建的过程TraceView : 分析方法执行的性能 在 ADM 中 可以知道方法执行的时间 次数等 这两个工具的使用很简单 :Allocation Track
2016-07-31 15:40:37
799
原创 Android Studio +MAT 分析内存泄漏实战
对于内存泄漏,在Android中如果不注意的话,还是很容易出现的,尤其是在Activity中,比较容易出现,下面我就说下自己是如何查找内存泄露的。首先什么是内存泄漏?内存泄漏就是一些已经不使用的对象还存在于内存之中且垃圾回收机制无法回收它们,导致它们常驻内存,会使内存消耗越来越大,最终导致程序性能变差。 其中在Android虚拟机中采用的是根节点搜索算法枚举根节点判断是否是垃圾,虚拟机会从GC R
2016-07-29 20:45:10
20989
2
原创 Android 热补丁技术的探索与简单实战----Qzone方案
Android app客户端与Web app相比的有一个劣势在于web app有更新不需要重新安装程序,而Android app如果有更新则需要重新下载最新版本安装完成更新,这个缺点无疑会给用户带来不小的麻烦与流量的浪费。 那么有没有办法解决这个问题呢? 热补丁技术的出现就是为了解决这个问题,现今我所知道的热补丁技术有淘宝的Dexposed、支付宝的AndFix以及Qzone的超级热补丁方案。下
2016-07-28 13:36:41
1947
转载 javassit框架的使用---动态改变字节码
原文地址: Javassist简单应用小结 概述 Javassist是一款字节码编辑工具,可以直接编辑和生成Java生成的字节码,以达到对.class文件进行动态修改的效果。熟练使用这套工具,可以让Java编程更接近与动态语言编程。 下面一个方法的目的是获取一个类加载器(ClassLoader),以加载指定的.jar或.class文件,在之后的代码中会使用到。private stat
2016-07-26 22:38:07
4551
原创 Android Studio 更新后一直停在Refreshing gradle project问题解决
解决办法: 1. 查看自己android studio 安装路径下的 gradle 下的 gradle版本 比如 我的路径F:\android_studio\gradle\gradle-2.10 版本号就是 2.10 2. 查看正在refreshing的项目的目录下的 \gradle\wrapper\gradle-wrapper.properties文件 比如我的 路
2016-07-25 17:47:21
40316
原创 MySql 保存大文件
JDBC实现MySql批处理业务场景: 当需要向数据库发送一批SQL语句执行时,应避免向数据库一条条的发送执行,而应采用JDBC的批处理机制,以提升执行效率。 实现批处理有两种方式第一种方式:Connection conn = null;Statement st = null;ResultSet rs = null;try {conn = JdbcUtil.getConnection()
2016-07-22 19:51:43
8468
原创 内存对齐的规则
为什么要内存对齐对于CPU从内存读取数据,并不是我们想象的那样,直接前去读取对应的大小,为了提升效率和速度,CPU会按照内存读取粒度的大小来读取内从中的数据,比如说如果内存读取粒度是4个字节,那么CPU会一次读取4个字节的内存,就算读取char类型的数据,虽然它只占1个字节,但是CPU依然会读取4个字节,然后从四个字节中取出char类型的数据,因此就产生了内存对齐这样的问题,也就是在结构体这样的类型
2016-07-21 07:08:45
389
原创 JVM内存结构
jvm管理的内存分为程序计数器、虚拟机栈、本地方法栈、堆、方法区 其中前三个个事线程私有的 程序计数器: 程序计数器是一块很小的区域,这部分区域的作用是存放当前线程所执行字节码的行号,它是线程私有的区域虚拟机栈: 虚拟机栈也就是我们常说的栈空间,它也是线程私有的,每个方法执行的时候都会产生一个栈帧,它用来存储局部变量表、操作数栈、动态链接、方法出口等信息,每一个方法从调用到执行完成的过程,
2016-07-21 07:08:19
281
原创 JVM中对象的创建过程
为什么要内存对齐对于CPU从内存读取数据,并不是我们想象的那样,直接前去读取对应的大小,为了提升效率和速度,CPU会按照内存读取粒度的大小来读取内从中的数据,比如说如果内存读取粒度是4个字节,那么CPU会一次读取4个字节的内存,就算读取char类型的数据,虽然它只占1个字节,但是CPU依然会读取4个字节,然后从四个字节中取出char类型的数据,因此就产生了内存对齐这样的问题,也就是在结构体这样的类型
2016-07-21 07:07:15
1730
原创 Android SwitchCompat 自定义颜色 及使用
在Android 5.0 中 Switch 更新了样式 变得 比较好用了 但是在5.0 以下的版本 还是老样子 不实用 因此 就有了 SwitchCompat 来兼容 它是v7 包中的 因此可兼容到 2.1 使用时 写一下布局即可。。 <android.support.v7.widget.SwitchCompat android:id="@+id/switch
2016-06-20 12:53:27
14308
原创 软件设计——原则
约束是强加给我们的 而原则是我们为了标准化和一致性而采用的 开发原则编码标准和规范 自动化单元测试 静态分析工具 等等 架构原则分层策略 业务逻辑的位置 高内聚 低耦合 SOLID 无状态组件 存储过程 域模型。。 HTTP会话的使用 始终一致和最终一致 如果你经常构建大型企业软件系统,那么你可能考虑过上述的这些原则,但是要小心,即使是善意的原则 有时候也会起到意
2016-06-13 23:20:06
576
原创 软件设计——约束
作为软件开发者 我们设计的每一个软件都存在于现实生活中,所以一定会存在约束条件的 约束可以驱动 塑造和影响软件系统的架构 你工作的组织和环境都会给你强加一些约束 影响你的架构1.时间和预算的约束 也就是时间和金钱 这两者我们都很熟悉 而且通常不够。。。2.技术约束 通俗来说 也就是 你所能达到的技术 你肯定不可以接收一个你的技术达不到的项目 或者说某个功能你的技术达不到
2016-06-13 22:51:35
37360
原创 软件设计——质量属性(非功能性需求)
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
2016-06-13 20:40:08
13439
原创 软件设计——开始设计前的准备
最近在看<<程序员必读之软件架构>> 这本书 ,主要是想规范一下自己开发软件的流程 这本书看了三分之一了 发现对于自己来说 看这本书还是有点早的,对于我一个还没毕业经验不是很丰富的程序员来说 里面大多讲的东西距离我还有一段距离,但是其中设计软件这一部分对于我来说还是正合适的 我就先在这里 总结一下 这一部分所学的东西吧 不总结我怕我回过头就忘记了 哈哈 对于软件设计来说 有很多东西是需要我
2016-06-13 17:31:25
714
原创 Android 输入法弹出界面上移的问题
在 AndroidMainifest 中对应activity中加入android:windowSoftInputMode=”adjustPan” 加入此句可使界面不变化 android:windowSoftInputMode activity主窗口与软键盘的交互模式,可以用来避免输入法面板遮挡问题,Android1.5后的一个新特性。 这个属性能影响两件事情: 【一】当有焦点产生时,软键
2016-06-07 17:17:17
5896
原创 Android 关于ScrollView的子布局无法设置高度的问题
由于Scrollview 的作用是滑动显示 所以他的子布局 必须设置 wrap。。。。。 而且只能有一个 之后可以随意布局
2016-06-07 17:15:35
1493
BinderPool的小Demo
2016-05-14
ContentProvider实现IPC的简单Demo
2016-05-14
AIDL的简单实现(一个应用开启了2个进程)
2016-05-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人