自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 资源 (7)
  • 收藏
  • 关注

原创 线上调试方法(Android)

昨天有个项目出现了和硬件驱动参数相关的的问题,需要查看一些参数信息,驱动没有提供命令行获取的接口,应用这端的打印比少,我原本想着提供一个加了日志的包来查看,但是万一更新之后不能复现岂不是事大了。正好这个驱动我们已经封装了jni接口出来,我们只需要反射获取下这个类,然后就可以通过这些方法拿到全部的参数。// 获取应用的上下文 Context asrContext = this.createPackageContext("com.xxx.xxx", CONT

2022-04-22 11:57:04 2227

原创 AudioRecord一个设备只创建一个线程

不要太相信方法名,尤其是那种看起来很简单的方法名。在很多博客下面都已经讲过AudioRecord的创建流程,从android_media_AudioRecord.cpp--->AudioRecord--->AudidPolicyService--->AudioPolicyManager--->AudioFlinger其中过程就不细讲,其中最关键的方法就是getInputForAttr()前面的调用不提,最终会调用到AudioPolicyManager.cpp的getInp

2022-04-14 15:12:33 694

原创 AudioPolicyService的类图和native的典型binder通信方式

AudioPolicyService:native binder:

2022-03-22 17:03:44 225

原创 客户端调用bindService怎么让服务端的binder回调过来的?

使用的是plantUML生成的,脚本如下:@startumlautonumbertitle bindService之拿到服务端的binderApp绑定服务 -> ContextImp: bindService// 服务端的binder对象最终回调到onServiceConnected中ContextImp -> ContextImp: bindServiceCommonContextImp -> LoadedApk:getServiceDispatcher():I...

2022-03-03 11:20:32 840

原创 MediaSession和MediaSessionService的交互流程梳理

黄色的部分是外部暴露的接口,我们一般使用MediaSessionManager的createSession方法得到一个MediaSession,随后我们可以使用MediaSession的setActive和release方法。所以这个流程图的看法是从黄色块开始,随着箭头往里面看。...

2022-02-24 16:49:13 2605

原创 母牛生小牛问题

问题:设有一头小母牛,从出生第四年起每年生一头小母牛,按此规律,第N年时有几头母牛?我看网上有两种解答:1 使用面向对象的方式添加到list中,最后统计list的长度2 使用f(n) = f(n-1) + f(n-3)第一种的大家伙很厉害,但是我是用C语言,不适合第二种网站上的解答要么是直接丢一个公式,要么是用表格把数据列出来找规律。我想要从逻辑上理一下这个公式,所以用这个博客记录一下。前三年,第一头母牛都还没长大,所以都是1f(1)=1f(2)=1f(3)=1

2021-12-06 14:03:25 2262

原创 Program type already present: com.x.x

最近调整项目架构的时候报了这个问题,原因是引用的包冲突了:A moudle引用了tts.jarB moudle引用了tts.jar,同时引用了A moudle解决方法:删除B moudle的tts.jar,然后把A引用tts的implementation改为api,然后把implementationA的地方也改成api,就可以实现没有编译错误,且没有引用重复...

2021-09-02 18:07:17 216

原创 Activity实现系统Dialog(系统级的悬浮窗)

1 创建一个style <style name="customDialog" parent="Theme.AppCompat.Light.Dialog"> <item name="windowNoTitle">true</item> <!--背景透明--> <item name="android:windowIsTranslucent">true</item> &lt

2021-07-23 16:14:09 2378

原创 自定义日志记录系统 UWP

自定义日志系统 UWP背景代码总结背景之前做了一个UWP的软件,和驱动要进行RPC通信。为了记录用户的操作以及方便定位是驱动的问题还是UWP的问题。我原本的单纯的使用写文件功能容易出现文件占用然后日志记录不全的问题,后面想了一下多线程的消费者生产者模式,有点类似这种模式写的日志,在0.1s写N多的情况下,没有漏记,没有崩溃,下面是代码代码public class WriteThread { static Queue<string> logStrQue = new Q

2020-07-20 09:57:25 356

原创 winform显示器适配(解决字体模糊,界面错乱,多屏适配)

最近做的一个软件,内部测试的时候有人把显示器放大了300%,导致界面空间重叠错乱了,之前在双屏幕运行的时候也有出现字体模糊的问题,就一起解决了。步骤如下:1. (我所有控件都包含到一个panel里面)将这个form设置缩放为取消缩放(或者像素缩放),并且子控件要么别设置,要么请一定将缩放模式和窗口的缩放模式相同:this.AutoScaleMode = AutoScaleMode.None;this.AutoScaleMode = AutoScaleMode.Dpi;2 设置字的单位是.

2020-05-29 15:36:08 2230

原创 记录一些w常用的命令(Windows cmd, linux, adb)

常用的bat命令背景windows普通bat命令字符串查找字符串截取其他简单命令附上我这次的卸载脚本,有删除自身文件夹,删除注册表,删除服务,卸载dll等ADB命令Linux命令背景最近这段时间工作中用了一些之前接触很少的Windows命令,所以写一个博客记录一下,有windows的纯bat命令,另外附加一点adb命令。windows普通bat命令字符串查找这个地方是直接借用一个网友的一...

2020-03-19 11:41:03 220

原创 记录一次大量数据导致页面ANR的解决(Greendao,RxJava)

记录一次大量数据导致页面ANR的解决问题开始解决办法问题开始最开始测试的时候只有几十条数据,无所谓。到了昨天测得时候导入了2000条,这两千条要下拉搜索,也可以输入搜索。界面差不多这样在主界面获取了这个下拉数据保存之后,再进入页面用Greendao取出去,甚至实时搜索。在滑动下拉的时候出现了数据不全,多输几次就卡死的情况。解决办法解决问题的时候,我在想,数据显示不全是什么原因。(找原...

2019-08-01 11:11:48 979

原创 sublime Text在Windows环境下安装ctags插件

怕后续忘掉了,所以做个笔记下次安装。步骤如下:https://github.com/SublimeText/CTags 这个地址去clone插件,放到Sublime Text\Data\Packages下在网上找ctags.exe文件,配置环境变量第一步完成之后,首选项–>插件设置—>ctags—>把鼠标默认的那个文件复制一遍设置到鼠标用户那个文件里,然后在use...

2019-06-26 10:04:54 293

原创 技巧记录(个人笔记)

switch-case中的case用变量的时候,要给这个变量加上final,AS的提示不会告诉要用final修饰。对象引用,在某些情况下,建议复写实体类的clone方法,将浅复制改为深复制。(在香远中遇见)...

2019-06-24 10:11:33 133

原创 重构的经历

年初入职了一家公司,公司原本Android开发只有一个人,我去了算两个。刚开始,他给我介绍了一种目录结构,和后台用业务,模块分类类似,接触之后觉得太方便了,分享记录一下:包名模块包名MVP{View,Presenter}(接口类)ActivityPresenter重构原因这种愉悦的感觉并没有维持很久,当我和这位同事共同开发一个项目的时候,我进入项目的时候,他已经做了一段时间了(也许...

2019-06-17 15:02:15 136

原创 关于项目中的NFC使用的流程

关于项目中的NFC使用的流程第一次做NFC,主要是做一个记录。初始化的时候是这样:nfcUtils = new NfcUtils(this,getApplicationContext());------------------------------------------------------ /** * 构造函数,用于初始化nfc */ public N...

2019-03-09 14:15:32 1598

原创 赛码网股神算法解析

好久没做这种题目,有点忘了做的格式,然后就去看了下答案,结果有的是直接公式,我都不知道公式怎么算的。我个人用N的时间复杂度AC了,成就感还是有的。分析:这个题是有周期性的,每个周期也是定增加的,采用循环(第一天的股价已定,从第2天的时候开始循环),判断这一天是该增加还是该减少,然后得到第N天的股价,具体的操作步骤如下:    1. 股价初始价格为1,所以money初始化为1    2. 计算每个周...

2018-04-23 23:43:18 488

原创 spring中存oracle的clob类型数据

spring中存oracle的clob类型数据

2017-09-08 11:06:57 950

原创 form表单submit提交后台无反应、前端不报错

form表单submit提交后台无反应、前端不报错

2017-09-06 10:36:28 31309 1

原创 注解(笔记)

注解,自定义注解

2017-08-10 17:36:36 289

原创 sql索引原理及应用

我们都知道,I/O读取是很耗时间的。如果我们读更少的磁盘可以节省时间。关系数据库表中数据是按链表或是顺序结果进行存储的,如果我们把数据库每一行数据作一个数据块,我们要查找某个用户名为“XXX”的用户详细信息,要读取全部的块来查找。

2017-08-02 15:15:22 997

原创 单人在线实践(jsp+java)

单人在线实践(jsp+java)

2017-07-27 15:49:18 273

原创 关于视图动画我的Bug(待解决)

1.用setAnimation(Animation)之后,在另外一个View,Start另外一个Animation会导致两个动画同时在两个View中播放。2.将一个Animation加到另外一个AnimationSet,第一次播放的时候,会导致AnimationSet和某个Animation一起在两个View中播放。大概是GIF文件那样。

2016-06-24 10:10:32 271

原创 Plugin is too old, please update to a more recent version, or set ANDROID_DAILY_OVERRIDE

今天下午打开Android studio,提示有更新,我表示觉得很不想更新(这习惯似乎不好,哈哈),然后我就点了Ignore……,到后面我新建Project之后是酱紫的:16:04:46 Gradle sync failed: Plugin is too old, please update to a more recent version, or set ANDROID_DAILY_OVER

2016-06-20 22:41:53 875

原创 关于OkHttp的使用

从原理角度解析Android (Java) http 文件上传完全解析使用教程

2016-05-16 16:54:58 248

原创 手机号码,正则表达式的校验

移动:134、135、136、137、138、139、150、151、157(TD)、158、159、187、188,178   联通:130、131、132、152、155、156、185、186,176   电信:133、153、180、189、177(1349卫通)

2016-04-16 09:08:03 568

原创 spring mvc + mybatis 整合框架

首先放进去一些包:下面还有几个包是用来使用json的,就可以直接返回字符串在网页上,如果不导入直接访问方法的话,会返回一个字符串名的jsp文件目录如下:接下来就是几个配置文件applicationContext-dao.xml<beans xmlns="http://www.springframework.org/schema/bea

2016-04-05 09:01:45 1561 1

原创 关于xml类型的背景文件的编写

现在我只会用shape来写,把要写的效果放中间,然后选择标签慢慢加入solid:背景颜色:例如:stroke:边框颜色:例如:padding:设置边距:例如:corners:设置圆角:例如:,android:topLeftRadius=""gradient:设置渐变,当solid也在时,谁在后谁起作用,angle用来设置渐变的方向:例如:

2016-03-02 20:30:26 384

原创 关于Git的学习

去年其实就已经在偶尔用下Git,但也没怎么放心上,今年因为一些原因越来越觉得Git很必要,特意学习下。首先是安装,以及命令行的使用:小猪总结好得我自己已经不知道说什么,引用下 小猪总结的

2016-02-19 10:43:22 285

原创 关于8位颜色的一两点理解

8位颜色值,前两位是指透明度,后6位是指颜色值,比如 ff000000 表示完全不透明的颜色值ff的10进制的值是255,后面是黑色,则前面这个颜色是指完全不透明的黑色下面是一些例子:半透明的黑色:7f 00000030%透明的黑色:4d 000000半透明的白色:30%透明的白色:4d ffffff

2016-01-23 15:51:05 1942

原创 工作总结

1.上周完成了音乐APP的界面优化2.网络下载音乐3.上上周帮同学完成了数学建模的代码,上周周一周二继续优化。4.改了项目的一两个bug。

2016-01-11 09:45:59 290

原创 录制音频和在手机系统中获取音频

这里有两种获取音频的方式:1.录音保存获取音频点击开始录音按钮之后的开始录音,设置录音的状态,已经设置stop按钮停止录音按钮可以点击 /* **************************************************************** * * 开始录音 */ private void startAudio() { // 创建录

2015-12-21 16:13:28 3129 2

原创 软件描述

音频软件制作工作描述

2015-12-21 14:23:48 562

原创 重启adb的命令行

首先进入目录时,先直接输盘符,不要每次都忘了然后 cd di(目录) 操作如下d:cd D:\Android\64\adt-bundle-windows-x86_64-20140624\sdk\platform-tools再输入杀死adb的命令adb kill-server然后再输入开启adb的命令:adb start-server出现successful就

2015-10-05 09:26:07 17709

原创 android 设置主页面的方式

<activity android:name=".MainActivity" android:label="@string/app_name" ><!--      package="com.example.myview" 尽量写成全部的目录,免得因为路径的原因导致出错      -->

2015-09-30 20:23:15 3171

原创 自定义控件

关于如何自定义一个控件,首先配置attr文件,在res-->value目录下 这是Java文件,继承自View类,paint一个控件,设置字,或者其他package com.example.myview;import android.content.Context;import android.content.r

2015-09-29 21:45:43 496

转载 设置没有标题的两种方式

1、java编码实现:  requestWindowFeature(Window.FEATURE_NO_TITLE);        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);2、xml编码实现a

2015-09-28 10:18:06 367

react demo改造的五子棋.zip

1、在游戏历史记录列表显示每一步棋的坐标,格式为 (列号, 行号)。(OK) 2、在历史记录列表中加粗显示当前选择的项目。(OK) 3、使用两个循环来渲染出棋盘的格子,而不是在代码里写死(OK)。 4、添加一个可以升序或降序显示历史记录的按钮。(OK) 5、每当有人获胜时,高亮显示连成一线的 3 颗棋子。(OK) 结合react教程的demo来的,https://zh-hans.reactjs.org/tutorial/tutorial.html

2019-07-05

轮播图和轮播网页安卓版本

使用 viewpage做的android版本网页+图片轮播,可以当做学习案例,也可以作为参考。有兴趣的下载。

2017-12-13

sql语句转为java的StringBuilder

先在navicat之类的工具格式化sql!!!!! sql语句写完之后转为美观的java,在sql语句很长了之后有点麻烦。 其实代码逻辑简单,但是有一点就是有时候没时间来写,所以附上源代码和可执行的jar文件

2017-03-13

android 2048游戏

是个自己写的2048游戏,基本的都有,左右滑,上下滑。计算得分,游戏结束等。利用GridLayout.是个很简单的小游戏,值得学习。

2016-02-26

紧急医疗救护站设置问题 最短路径 覆盖城镇

假设有一个县医疗救护中心有一些救护车为全县服务,如果这些救护车平时都放置在县城,那么当偏远地区病人需要紧急运往医院时就不能及时到达现场。所以需要在各乡镇及村庄建立紧急医疗救护站,分散放置这些救护车,以便尽可能使得场全县任何地方有病人时可以在20分钟内到达现。假设一个救护站配备一辆救护车,司机随时值班,需要时即可使用。 1. 设救护站可以设在各乡镇及村庄,那么最少需要设置多少救护站可以使得所有人口位于救护车20分钟车程能够覆盖的范围内?给出各救护站位置。如果救护站只能位于乡(镇)所在地,结果怎样? 2. 假设共有10辆救护车,怎样设置救护站的位置可以使得尽可能多的人口位于救护车20分钟车程能够覆盖的范围内?能覆盖所有人口吗?如果不能,多少人不能被覆盖?如果救护车的数量为7辆,再次回答上述问题。

2016-01-05

android tab案例

eclipse环境下的,tab页面,自己写的,资源分享。

2015-12-18

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除