android-开发
xubaipei柏培
学无止境...
展开
-
C C++ Java 打印byte char 为16进制数调试
C C++ Java 打印byte char 为16进制数调试C & C++void byteToHex(int num,char* buf){ const char array[] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'}; int d1 = num / 16; int d2 = num % 16; sprintf(buf," 0x%c%原创 2021-12-08 10:29:36 · 1247 阅读 · 0 评论 -
开发细节记录
Android Q 新增api 接口需要先执行下面的编译命令make api-stubs-docs-update-current-api原创 2021-09-18 14:16:20 · 183 阅读 · 0 评论 -
显示相关源码位置
显示相关源码位置Surface.javaandroid\frameworks\base\core\java\android\view\Surface.javaCanvas.javaandroid\frameworks\base\libs\hwui\hwui\Canvas.javaandroid\frameworks\base\libs\hwui\hwui\BaseCanvas.javaandroid\frameworks\base\libs\hwui\SkiaCanvas.cppandr原创 2021-02-20 14:58:47 · 159 阅读 · 0 评论 -
V4L2 Video 学习笔记
V4L2 Video 学习笔记使用到的头文件#include <stdio.h>#include <stdlib.h>//#include <string.h>//#include <assert.h>#include <getopt.h> /* getopt_long() */#include <fcntl.h> /* low-level i/o */#includ原创 2020-12-25 10:47:35 · 295 阅读 · 0 评论 -
Android 判断是否有导航栏,华为小米手机通用
根据realsize 与size 判断 另外部分机型如华为P20 pro上亲测也可以public static boolean isHasNavigationBar(Activity activity) { Point size = new Point(); Point realSize = new Point(); activity.getWindowManage...原创 2019-11-05 11:21:00 · 1196 阅读 · 3 评论 -
Android文件操作的总结
1、使用文件如何对数据进行存储Activity提供了openFileOutput()方法可以用于把数据输出到文件中,具体的实现过程与在JAVA SE环境中保存数据到文件中是一样的。public class FileActivity extends Activity { @Override public void onCreate(Bundle savedInsta转载 2016-08-25 18:03:38 · 267 阅读 · 0 评论 -
Window 下Android 模拟器的tcp udp 通信Connect Refuse 解决
Android 开发中用到两台模拟器会出现IP地址相同的情况,无法正常的进行udp 和 tcp 的网络通信解决办法如下:1:打开模拟器5554(作为服务端)2:找到路径下的文件,用记事本打开文件,获得文件的内容 获得token:我的是(aDMHeoVz4+itnxlr)c:\Users\<current_user>\.emulator_console_auth_tok...原创 2018-08-14 09:53:49 · 499 阅读 · 0 评论 -
ndk 命令编译C或c++代码生成android 动态so库和可执行程序
NDK 命令ndk-build 会检查当前执行的目录下Jni 目录有没有Application.mk 和Android.mk 文件所以首先要写好这两个构建脚本Application.mkAPP_STL := gnustl_static#APP_CPPFLAGS := -frtti -fexceptionsAPP_CPPFLAGS +=-std=c++11 #允许使用c++11的函数等功...原创 2018-08-21 17:49:26 · 2787 阅读 · 0 评论 -
FFmpeg 编译以及添加X264 支持 android
网上抄的一个脚本,一直提示:No working C compiler found.在网上找了很久,把脚本的前后空格都删除了还是不行,后来看到可以查看日志 gedit config.log 看到./configure: 行 158: /home/hong/Public/android-ndk-r14b/toolchains/arm-linux-androideabi-4.8/prebuil...转载 2018-09-13 17:00:04 · 3541 阅读 · 3 评论 -
音视频开发转载
Android 音视频开发学习之路灰色飘零 鸿洋 今天本文作者 作者:灰色飘零链接:https://www.cnblogs.com/renhui/p/7452572.html本文由作者授权发布。 一直欠大家一篇音视频入门之路的文章,这篇文章是我见过写的最详细的一篇了,今天算还了哈。作者从入门、进阶、探究分别编写了一系列文章。 Android 音视频开发这...转载 2018-09-11 09:30:55 · 294 阅读 · 0 评论 -
最简单好用的 Android 阴影 shadow xml 写法
1:先看效果图要制造出这种效果的阴影这里提供三种思路重点推荐第三种1:CardView desgin 包中的控件,自带阴影效果 通过 属性控制阴影浓度app:cardElevation在API >= 21 可以直接通过使用android:elevation2:通过点九图,让美工给你加好阴影之后直接设置为控件背景3: 通过android 图层 xml...原创 2018-11-08 16:53:22 · 6374 阅读 · 1 评论 -
Rxjava2-Mvp-Dagger2-Retrofit 实现真正解耦的mvp 架构,可用于初始项目框架
git地址:https://github.com/PearceXu/Rxjava2-mvp-dagger2-retrofitRxjava2-mvp-dagger2-retrofit实现真正解耦的mvp 架构,可用于初始项目框架觉得好用的同学请右上角随手star 一下,谢谢!将retorfit2 与 rx2 进行封装 提供自带 progress 的 Observermvp解耦具体实现请下...原创 2018-12-27 13:37:59 · 510 阅读 · 0 评论 -
JNI动态注册
NativeInterface.h//// Created by xubaipei on 2018/3/21.//#ifndef OPDEMO_NATIVEINTERFACE_H#define OPDEMO_NATIVEINTERFACE_H#include <jni.h>#include "NativeRender.h"#include "L.h"#endif ...原创 2020-09-21 17:09:08 · 136 阅读 · 0 评论 -
Android Camera2 参数调节关键字翻译集合,常用关键字解析
black_level_lock黑电平补偿是否锁定当前值,或者可以自由更改。color_correction_aberration_mode色差校正算法的运算方式。color_correction_gains适用于拜尔原料色通道的白平衡。color_correction_mode模式控制选择图像数据从传感器的原始颜色为线性sRGB色彩转换。color_correction_transform颜色的...原创 2018-02-28 14:56:46 · 15464 阅读 · 15 评论 -
android 双卡开发获取sim卡默认数据卡,获取sim卡信息,sim1卡,sim2卡 2G/3G/4G信号强度
1:默认数据卡private int getDefalutDataID(){ SubscriptionManager subscriptionManager = (SubscriptionManager)getContext().getSystemService(Context.TELEPHONY_SUBSCRIPTION_SERVICE); int subscriberI原创 2018-01-03 17:50:44 · 12434 阅读 · 7 评论 -
android h5 js 混合开发解决webview加载白屏,不加载网页的问题(硬件加速网页渲染,优化体验)
android h5 js 混合开发解决webview加载白屏,不加载网页的问题(硬件加速网页渲染,优化体验)原创 2016-11-23 14:58:21 · 17368 阅读 · 9 评论 -
自定义viewgroup
要做成这种效果首先自定义一个viewgrup,让左边的view,位于右边圆圆心为起点,可伸缩package com.xubaipei.viewlib;import android.content.Context;import android.graphics.Canvas;import android.util.AttributeSet;import android.原创 2016-10-07 22:52:15 · 289 阅读 · 0 评论 -
自定义圆形Imageview
1:学习一定要善于总结,和敢于使用新的知识2:一直使用的都是别人写好的控件,今天趁着国庆放假有时间,尝试自己写经常要用到的框架3:知识总结:一:用于创建canvas的bitmap不能是已经存在的bitmap 二:这个自定view中遇到一个坑就是图片的大小和遮罩大小不匹配是,需要我们对bitmap做伸缩处理,这个用到bitmapshader渲染器,它的使用很简单,只需原创 2016-10-07 00:00:00 · 435 阅读 · 0 评论 -
自定义控件-时钟
1:做这个控件让自己对自定义控件的概念更加熟悉,总结一下canvas.save(); 和canvas.restore();这两个方法要是没有用到还好,用到了却没能了解这个用法,会让很多人搞不明白,这两个的作用究竟是什么,首先最最重要的一点是这两个函数是配对使用的,没错,假如使用了save,那么restore后就能回到save前的canvas状态,如果直接restore而不save,那么canv原创 2016-10-05 21:09:37 · 342 阅读 · 0 评论 -
万能RecyclerView 支持多viewholder适配器,从重复中解脱出来!
1:ComAdapter2:ComHolder原创 2016-09-19 22:47:16 · 933 阅读 · 0 评论 -
BottomSheetDialog高度不足够显示全部内容的解决办法
1首先在style文件中:<style name="BottomSheetDialog" parent="Theme.Design.Light.BottomSheetDialog"> <item name="bottomSheetStyle">@style/bottomSheetStyleWrapper</item></style...原创 2016-09-12 17:05:15 · 6956 阅读 · 1 评论 -
android 内存泄漏篇——OOM问题的解决办法总结
android 内存泄漏篇——OOM问题的解决办法总结首先先介绍几个概念:1:强引用:拥有声明的引用,jvm宁愿抛出OOM(内存溢出)都不会进行 GC回收的声明类型; 2:软引用:SoftReference 等 声明的引用,当jvm中内存不足时会被回收的声明类型; 3:弱引用:WeakReference 等声明的引用,当GC轮询到时会立即回收; 4:虚引用:这个不太理解再介绍几个an原创 2016-08-04 14:39:33 · 619 阅读 · 0 评论 -
Android 6.0动态权限申请的处理
1:检查权限: if (ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) { //申请WRITE_EXTERNAL_STORAGE权限原创 2016-07-29 09:39:11 · 1012 阅读 · 1 评论 -
Android 如何编写基于编译时注解的项目---转载张鸿洋博文
转载张鸿洋博文转载 2016-07-27 17:21:26 · 1278 阅读 · 1 评论 -
findFragmentById返回为null的分析
findFragmentById返回为null的分析今天遇到一个问题,在原本可以运行的项目中加入了android.support.design包后项目中的findFragmentByid返回值为null,原本可以运行的项目,导入design支持包后竟然运行报错。……原因是什么呢?很遗憾还没有找到,希望有人知道的可以告知一下,下面是对于这个问题的解决办法,无意中发现。由于在我是在fragment中调用原创 2016-07-25 14:10:31 · 1673 阅读 · 2 评论 -
recyclerview分割线 -总结
1 首先 算出跨度分割线占用的区域 @Override public void getItemOffsets(Rect outRect, View view, RecyclerView parent, RecyclerView.State state) { super.getItemOffsets(outRect, view, parent, state);原创 2016-10-08 00:11:54 · 315 阅读 · 0 评论 -
Android 自带人脸检测API 解析
使用FaceDetectionListener进行人脸检测package com.emptech.biocollection.fragment;import android.Manifest;import android.content.pm.PackageManager;import android.graphics.ImageFormat;import android原创 2017-12-29 14:49:49 · 2205 阅读 · 0 评论 -
MatirialDesign新控件总结
Material Design简介 Material Design设计语言鼓励大家使用充满活力的鲜艳色彩,并在同一界面建议使用三种色调,并保障有一个强色调,强色一般处于处于视图最底层,例如状态栏或者actionbar。通过强色调形成鲜明的对比,更容易突出内容的重要性。对于文字色彩的取值,Material Design建议在浅色背景上采用黑色,在深色背景上采用白色。重要信息和标题原创 2016-08-13 15:37:13 · 879 阅读 · 0 评论 -
我使用的android 资源文件命名规则
1:shape类id_01_radius_5_stock_00ff00_1_sloid_ff0000 // id为1,弧度为5;边界为宽度1的绿色边界;填充为红色id_02_radius_5_stock_00ff00_1_sloid_ff0000 // id为1,弧度为5;边界为宽度1的绿色边界;填充为红色有出现以size 和gradient的资源id_03_gradien原创 2016-11-02 13:35:05 · 399 阅读 · 0 评论 -
Android 6.0 扫描wifi 列表获取的权限问题
1:Android m中获取wifi列表的方法public static final List getWifiList(Context context){WifiManager wifiManager = (WifiManager)context.getSystemService(Context.WIFI_SERVICE); if (!wifiManager.isWifiEnabl原创 2016-10-18 15:56:22 · 11480 阅读 · 0 评论 -
Android studio java 注解处理器调试配置
1:gradle.propertiesorg.gradle.daemon=trueorg.gradle.jvmargs=-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=50052:Edit Configuration...添加remote 然后Apply 默认确定,到gradle 任务列表中原创 2017-08-14 15:53:31 · 999 阅读 · 0 评论 -
fragment 的生命周期的补充说明--特别要注意的四点
大家都知道正常的Fragment生命周期如下 :觉得在使用使用fragment开发过程中还有生命周期特别要注意的四点1:第一次加载fragment时,并不会执行onHiddenChangeed();当使用hide() 和show()执行fragment切换的时候才会执行这个函数@Override public void onHiddenChanged(boolean原创 2017-08-04 16:25:52 · 273 阅读 · 0 评论 -
Android 屏幕适配简易版
如何做好Android 屏幕适配呢,我就拿我觉得比较说一下我认为比较简单的方式,主要分为以下几个步骤:一:确定好设计图的尺寸ui设计图出图到你手上,首先你要做的是看一下设计图的尺寸,是不是通用尺寸,如果图的大小是735*888,,这种图明显不是常见的设备最好是 让设计师重新做一个比较合适的尺寸比如720*1280,当然要是他不肯改,那也没办法那就继续往下走吧二:确定好图后原创 2017-05-16 13:53:45 · 727 阅读 · 0 评论 -
seletor 字体颜色,选择状态修改中的遇到的坑
1:修改字体颜色的用法:text_seletor.xmlxml version="1.0" encoding="utf-8"?>xmlns:android="http://schemas.android.com/apk/res/android"> android:state_selected="false" android:state_pressed="false原创 2016-09-21 23:44:11 · 345 阅读 · 0 评论 -
永不闪退的app
package com.emptech.nigeriafinancial.utils;import android.content.Context;import android.content.pm.PackageInfo;import android.content.pm.PackageManager;import android.os.Build;import android.os原创 2017-02-22 15:26:00 · 795 阅读 · 0 评论 -
Eclipes项目怎么转成android studio版
Eclipes项目怎么转成android studio版.前段时间转了一个eclipes项目,费了好一段时间,百度谷歌无数,终于搞定,但是事实上转一个项目并没有那么难,说一下转的思路1:最麻烦的办法就是把,先在androidstudio中新建一个项目,然后java文件,res文件,库文件,清单文件,一个一个的拷过去,并修该,这样做实在太坑爹了 2:后面发现原来eclipse 中已经提供了这样的方法原创 2016-07-27 14:43:03 · 462 阅读 · 0 评论