- 博客(88)
- 资源 (1)
- 收藏
- 关注
原创 ffmpeg 添加多轨道
使用ffmpeg修改默认的音频轨道ffmpeg-i input.mkv -map 0:0 -map 0:1 -map 0:2 -c copy-disposition:a:0default -y output.mp4输入文件包含一个视频轨道,两个音频轨道0:0 表示视频轨道0:1 表示第一个音频轨道0:2 表示第二个音频轨道-c copy 复制编码,也即是编码不变最关键的,-disposition:a:0 default设置音频轨道的第一个为默认值。...
2022-01-17 17:05:11
4396
3
原创 android freeform模式定制桌面系统
本文基于android9.0来写的。一、产品需求:如下图,类似mac的桌面系统(1)区域1是系统标题栏。(2)区域2是长显示的窗口。(3)区域3 普通app显示的窗口。(4) 区域4 也是一个上显示的窗口,主要用于应用的点击启动。二、下图是根据Android系统特性画的草图:(1)区域1是系统statusBar。(2)区域2是长显示的窗口,用WindowMana...
2019-05-08 17:27:00
13700
11
转载 转载:高德地图加载不出来,有高德的logo,但地图一片空白
按照高德官网的文档配置地图加载,在地图上有高德的logo,但是始终加载不到地图,那么你可能遇到这个问题了,请看下面解决办法。第一步查看:项目的build.gradle中配置的编译版本、运行版本、是不是高于27的版本。那么你的的问题肯定是因为高版本不支持http这种不加密的协议,需要使用https加密。有两种解决办法:第一种:将构建所用的版本调低,即可解决。第二种:在An...
2019-04-24 18:56:25
4445
原创 Android视频采集方案
需求:视频录制、30秒保存一个mp4文件。一、采用MediaRecord录制优点:使用方便,得到就是编码和封装好的音视频文件,可以直接使用。缺点:无法获取原始数据,从而无法对原始数据添加一些自己的处理。最重要的是如果30秒保存一次文件,就需要关闭MediaRecord,然后再重新打开。这样一关一开就会造成帧数据丢失。二、硬编码,通过camera、openGL、mediacodec...
2019-04-16 17:47:11
2513
原创 recyclerview item 吸顶实现的方法
直接上代码RecyclerView.SmoothScroller smoothScroller = new LinearSmoothScroller(context) { @Override protected int getVerticalSnapPreference() { return LinearSmoothScroller.SNAP_TO_START; //item 置...
2018-03-30 20:55:07
1533
原创 glide 设置head
GlideUrl cookie = new GlideUrl(qrCodeImageUrl, new Headers() { @Override public Map<String, String> getHeaders() { return Util.getHeaders(PayActivity.this); }});GlideApp.wi...
2018-03-29 17:51:45
647
转载 在Android上实现HttpServer
在最近的项目中因为要用Android作为一个服务器去做一个实时接收数据的功能,所以这个时候就要去做一个Android本地的微型服务器。那么此时我首先想到了spring boot,因为他是一个服务器的框架。但是实际上我们根本用不到这么大型的服务器框架,配置这些都太麻烦。所以,我又找到了Ijetty、NanoHttpd和AndroidAsync这三个框架,都是比较微型的,适用于Android的
2017-08-15 10:46:09
2261
1
转载 Android Glide 优化用户体验
版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]在上篇文章中,我们介绍了 Glide 怎样加载图片以及处理加载的图片,这篇文章我会从用户的体验角度来介绍 Glide。不过 Glide 提供的优化体验的方法,并不适用所有情况,所以根据实际情况选择到底用不用以及怎么用。placeholder()默认图片在没有加载图片前,界面会
2017-04-20 10:59:30
436
原创 欢迎使用优快云-markdown编辑器
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
2016-11-21 15:12:37
295
转载 《C语言深度剖析》笔记
《C语言深度剖析》笔记1.在c语言中,凡不加返回值类型限定的函数,就会被编译器作为返回整形处理。 2.register 变量必须是一个单个的值,并且其长度应小于或等于整型的长度。而且 register 变量可能不存放在内存中, 所以不能用取址运算符 “&”来获取 register变量的地址。 3. int main() { char a[1000]; int
2016-01-14 11:33:44
457
转载 Android的Recovery中font_10x18.h字库文件制作
原文:http://blog.youkuaiyun.com/kangear/article/details/10011849任务是要汉化Android中的Recovery,就了解了bootable/recovery/minui/font_10x18.h这个英文字库的来历,最终汉化的时候并没有自己汉字字库,用的github上现成的,但font_10x18.h来历短暂的留存在脑子里边不
2016-01-05 11:24:02
1648
转载 使用位图字体工具BMFont从图片生成自定义字体
上一篇转了别人的一篇文章,讲了BMFont的基本用法。对BMFont比较陌生的同学请点击这里先去学习:http://blog.youkuaiyun.com/keshuiyun/article/details/9960589。本篇讲解如何利用美工提供的字符图形来生成自定义字体。美术提供的字体经常是下面这样的:或者这样的:这时候我们就要借助BMFont了,首
2016-01-05 11:17:42
771
转载 ubuntu系统下创建新用户
在Ubuntu中创建新用户,通常会用到两个命令:useradd和adduser。虽然作用一样,但用法却不尽相同: 1. 使用useradd时,如果后面不添加任何参数选项,例如:#sudo useradd test创建出来的用户将是默认“三无”用户:一无Home Directory,二无密码,三无系统Shell。解决方法: sudo useradd -m -s /bi
2015-11-02 10:47:30
918
转载 Ubuntu下配置支持Windows访问的Samba共享
一、安装Ubuntu samba服务器$ sudo apt-get install samba$ sudo apt-get install smbclient # Linux客户端测试用 二、创建samba配置文件1. 备份原配置文件$ sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
2015-11-02 10:45:24
611
转载 ubuntu 修改默认 shell
如果拥有 root 权限,可以直接修改 /etc/passwd 文件。找到用户 ID 起始的行user:x:1000:112:user,,,:/home/user:/bin/bash最后一个字段为登录后的默认 Shell, /bin/bash 是程序 bash 的主程序路径。 fish 主程序的路径通常为 /usr/bin/fish 。/etc/shells 中列出系统中所有可用
2015-11-02 10:44:04
1613
转载 find命令
find . -name "*.*" | xargs grep "内部存储"1. set命令可以显示出当前shell下所有全局参量定义及其值; 2. 查找并删除当前目录下小文件:find . -type f -size -10k -exec rm {} \;说明: www.2cto.com -type f 查找文件
2015-07-02 10:20:59
432
原创 Android 界面布局
了解Android布局是应用界面开发的关键,在Android中,Android共有五种布局方式。分别是:FrameLayout(框架布 局),LinearLayout (线性布局),AbsoluteLayout(绝对布局),RelativeLayout(相对布局),TableLayout(表格布局).这些布局各有自己的特色。灵活搭配应用这些布局才能做好android界面。一
2015-04-17 13:11:53
482
原创 查看静态库和动态库是32位还是64位
动态库:file ./usr/libexec/sudo_noexec.so静态库:objdump -a libmqapi.a
2015-04-16 09:55:42
3980
1
转载 Linux程序分析工具介绍—ldd,nm
本文要介绍的ldd和nm是linux下,两个用来分析程序很实用的工具。ldd是用来分析程序运行时需要依赖的动态库的工具;nm是用来查看指定程序中的符号表相关内容的工具。下面通过例子,分别来介绍一下这两个工具:1. ldd, 先看下面的例子, 用ldd查看cs程序所依赖的动态库:$ ldd cs linux-gate.so.1 => (0xffffe000) libz.so.1
2015-04-14 17:55:17
647
转载 uinput
#include #include #include #include #include #include #include #include void usage(void){ printf(" Usage : keyboard [key number...]\n"); printf(" keyboard 29 56 32 /* CTRL + ALT +D */\n"); printf(" ke
2015-03-27 15:12:27
791
转载 快速窥探elf格式文件文件的内部信息
Linux的二进制执行文件,通常是ELF格式的。查看这些文件的常用命令有:1、file 显示执行文件的基本信息,包括位数、库等。2、nm -D 显示调用的标准库函数等。3、strings 显示内部的静态字符串列表。4、lsof -p 运行期间执行该命令,可以查看打开的句柄情况。
2014-11-19 16:19:55
446
原创 popen函数执行命令,读取流数据
int Volume::createDeviceNode(const char *path, int major, int minor) { mode_t mode = 0666 | S_IFBLK; dev_t dev = (major << 8) | minor; if (mknod(path, mode, dev) < 0) { if (errno !
2014-11-19 15:06:17
4954
原创 /system/app apk裁剪
以下是system\app:Apollo.apk 音乐播放器 可删AudioEffectSettings.apk 音效设置 可删,可连带删除lib\libaudioeffect_jni.soBasicDreams.apk 基本互动屏保 可删Bluetooth.apk 蓝牙共享 不用蓝牙可删,强烈建议保留BluetoothExt.apk 不清楚 删了没事Browser.apk
2014-11-06 09:38:08
2372
转载 INSTALL_FAILED_CONFLICTING_PROVIDER
Installation error: INSTALL_FAILED_CONFLICTING_PROVIDER 解决方案分类: 报错解决2012-01-08 01:45 5551人阅读 评论(0) 收藏 举报android主要是由于调试的环境中已有一个同名的Provider存在。解决方法是修改AndroidManifest.xml中的
2014-11-05 15:35:46
568
转载 清理/data/data目录下的本地文件
在android里面第三方应用一般是没有对系统文件的读写权限,那如何进行/data/data目录下缓存的清理工作呢?主要有两种思路:一种通过ActivityManager的方法clearApplicationUserData()来完成,系统setting程序就是这么做的:setting 源码中:ManageApplications类-->InstalledApp
2014-10-29 16:22:42
5231
转载 使apk具有system权限
使apk具有system权限的方法:方法一: 1. 在应用程序的AndroidManifest.xml中的manifest节点中加入 android:sharedUserId="android.uid.system"这个属性。 2. 修改Android.mk文件,加入LOCAL_CERTIFICATE := pl
2014-10-28 17:09:13
773
转载 android framework增加新的系统服务
[android]Framework新增系统服务分类: android2014-04-24 17:21 638人阅读 评论(0) 收藏 举报在android源码中增加一项系统服务,如在android.app包下增加DevInfoManager.java,按如下进行处理:1、在frameworks/base/core/java/android/app/目录下增加DevIn
2014-10-16 11:46:36
3083
转载 android设置系统默认语言
一、先搞清4个系统属性 只读默认语言[ro.product.locale.language]:[en][ro.product.locale.region]: [US] 用户改变语言设置后修改的值[persist.sys.language]: [zh][persist.sys.country]: [CN]这两个会以文件的形式存在
2014-10-16 09:56:27
5872
转载 android属性系统全面分析
Android System Property一 System Property 代码中大量存在:SystemProperties.set()/SystemProperties.get();通过这两个接口可以对系统的属性进行读取/设置,顾名思义系统属性,肯定对整个系统全局共享。通常程序的执行以进程为单位各自相互独立,如何实现全局共享呢?System Propert
2014-10-15 17:07:54
595
转载 linux下javah生成jni本地方法
建立一个XX.java的文件,在当前目录下用javac -d . XX.java生成 XX.class文件。因为生成包含软件包的需要以下操作:1.在工程目录下,建立一个bin文件夹,将刚才生成com.android.test的拷贝在bin路径下,退回上一路径,用javah -classpath ./bin -jni com.android.test.test生成.h头文件,
2014-09-23 14:44:59
707
原创 android Ibinder 体系
IBinder体系中得到一个服务的过程分析:ServiceManager是管理所有服务(如音频,相机)的一个进程,它的handle是0一、总的来说:得到一个service很简单,分成两步,1,得到一个默认的serviceManager;2,然后使用serviceManger->getService(service名称)得到具体的service二、详细分析参照网上一些资料
2014-09-11 16:38:19
487
转载 CC(caption close)的高级说明
CC字幕(caption close)是电视、电影和计算机图像解说的文本版本。开发CC字幕的目标是为了给听力有障碍的人士使用,通常是出现在屏幕的下方,但如今它在各种各样的情况下都非常有用。如在像机场等声音嘈杂的环境中,或者在像医院一样需要安静的地方,当听不到声音时就可以读字幕。 CC字幕的信息是编码在录像信号之中的,是场消隐期(VBI)的21线。只有在使用CC解码器时,CC字幕的
2014-08-06 15:06:53
1351
转载 fstab文件中挂载/dev/mtdblock设备不行
在fstabl文件中加入红色部分时:# /etc/fstab: static file system information. ▽ /dev/root / ext2 rw,noauto 0 1proc /proc proc
2014-07-29 17:51:31
3337
转载 wifi
一、系统架构 Android WiFi系统引入了wpa_supplicant,它的整个WiFi系统以wpa_supplicant为核心来定义上层用户接口和下层驱动接口。整个WiFi系统架构如下图所示: 一切尽在上图中,下面将对每部分进行详细分析。二、WifiService 由SystemServer启动的时候生成的ConnecttivityService
2014-06-10 17:12:39
464
1
转载 recovery 原理 可见一斑
一、Recovery是如何构成的 说recovery的构成并不贴切,应该说recovery.img的构成,它是由boot_img_hdr + zImage + recovery-ramdisk构成。boot_img_hd是个结构体它描述了很多重要的信息。 1 struct boot_img_hdr 2 { 3 unsigned char magic[BOOT_MA
2014-05-12 16:45:44
706
转载 linux 进程间通信之套接字
先上一个代码服务端:[cpp] view plaincopy//s_unix.c #include #include #include #include #define UNIX_DOMAIN "/tmp/UNIX.domain" int main(void) { so
2014-05-06 18:16:04
604
转载 个人整理的Linux Shell语法速查表(用C语言语法来作对比)
虽然学过Linux Shell编程,但由于编写Shell脚本的机会实在是比较少(通常在项目初期搭建开发环境时编写得比较多一些),所以一些语法久而久之就会忘了,一个简单的语法去翻书效率实在是慢,所以就个人整理了一个表格,由于我用的编程语言是C/C++,所以在编程的时候往往脑海里面首先浮现的是用C语言怎么去编写它,所以我干脆拿C语言的语法来和Shell编程的语法作个对比表,这样查起来就方便了,哈:
2014-05-04 15:19:17
461
原创 dos coy 命令
copy /B 1+2+nvram+header+ucos+boot+sto+dyncfg+permcfg nor4m.bin
2014-04-22 17:27:16
486
原创 linux posix_spawn
一,进程概念,为什么是多进程而不是多线程进程是由操作系统创建的工作单元。值得注意的是进程和程序未必是等同的。一个程序可能由多个任务组成,而每个任务可以和一个或多个进程相关联。程序是由程序员创建的,而进程是由操作系统创建的。一个工作单元要想被称作进程,它必须要有操作系统指派给他的地址空间,必须拥有进程ID,必须拥有状态和进程表中的表项。进程和线程之间最大的区别是进程有着自己的地址空间,而线程
2014-03-26 16:27:02
12891
Android开发艺术探索pdf,带目录
2019-01-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人