Android
genius汪汪汪
这个作者很懒,什么都没留下…
展开
-
Android全屏界面,弹窗显示时会拉起导航栏
在一个全屏界面,使用WindowManager显示弹窗后,会拉起底部导航栏。原创 2023-06-02 14:08:18 · 764 阅读 · 0 评论 -
小米手机 安装AndroidAuto后连接车机,提示android auto出现错误 通信错误16
小米手机 安装AndroidAuto后连接车机,提示android auto出现错误 通信错误16。原创 2023-05-25 10:11:27 · 6966 阅读 · 0 评论 -
Java 中的 Unicode 编码
(.java)和编译后的 .class 文件的编码并不一样。源文件 .java 可以采用多种编码格式,如之所以有(可以有)原创 2022-11-04 13:39:40 · 4033 阅读 · 0 评论 -
Android自定义seekbar
android seekbar progressdrawable使用原创 2022-06-01 21:03:14 · 383 阅读 · 0 评论 -
Android解决分屏情况下背景拉伸问题
Android解决分屏情况下背景拉伸问题原创 2021-12-16 14:45:41 · 2147 阅读 · 0 评论 -
Android RecyclerView,ListView的滚动条基本方法,始终显示
记录下滚动条的基本方法:始终显示滚动条:android:scrollbarFadeDuration="0"android:fadeScrollbars="false"滚动条宽度:android:scrollbarSize="17dp"滚动条显示位置:android:scrollbarStyle="outsideOverlay"滚动条背景:android:scrollbarTrackVertical="@color/scroll_bar_bg"滚动条滑块:android:scro原创 2021-04-02 10:12:29 · 1011 阅读 · 0 评论 -
Android RecyclerView报错No adapter attached; skipping layout/No layout manager attached
RecyclerView的初始化通常要调用以下2个方法,不然不会显示recycleView.setLayoutManager(manager1);recycleView.setAdapter(adapter);一个是设定RecyclerView的布局,一个是绑定Adapter。layoutsetLayoutManager简单初始化可以如下:LinearLayoutManager manager1 = new LinearLayoutManager(getApplication());mana原创 2021-02-26 13:50:33 · 3068 阅读 · 0 评论 -
Android切换语言
设置Android系统语言需要用反射的方式切换系统语言,需要传入Locale实例public void setLanguage(Locale lan) { try { Object objIActMag; Class clzIActMag = Class.forName("android.app.IActivityManager"); Class clzActMagNative = Class原创 2021-02-25 17:12:05 · 513 阅读 · 0 评论 -
android 各国语言对应的缩写2
Language English Name Chinese Name Code GB...转载 2021-02-25 14:55:35 · 538 阅读 · 0 评论 -
android 各国语言对应的缩写
android资源文件夹的写法规则语言缩写-国家地区缩写 语言缩写藏语:bo_CN en英文 en_US英文 (美国) ar阿拉伯文 ar_AE阿拉伯文 (阿拉伯联合酋长国) ar_BH阿拉伯文 (巴林) ar_DZ阿拉伯文 (阿尔及利亚) ar_EG阿拉伯文 (埃及) ar_IQ阿拉伯文 (伊拉克) ar_JO阿拉伯文 (约旦) ar_KW阿拉伯文 (科威特) ar_LB阿拉伯文 (黎巴嫩) ar_LY阿拉伯文 (利比亚) ar_MA阿拉伯文 (摩洛哥) ar_OM阿拉伯文转载 2021-02-25 14:50:37 · 1881 阅读 · 0 评论 -
Android的SimpleDateFormat进行日期格式化
代码简单的代码如下: private String getTime(boolean is24) { String DATE_TO_STRING_DETAIL_PATTERN = ""; if (is24) { DATE_TO_STRING_DETAIL_PATTERN = "dd.MM.yyyy HH:mm"; } else { DATE_TO_S原创 2021-02-25 14:12:40 · 1424 阅读 · 0 评论 -
Android需求:点击父布局区域,2个子view有press状态,且ACTION_UP时要有select状态
需求点击父布局区域,2个子view有press状态,且ACTION_UP时要有select状态大概就是上面这个图的状态解决xml布局 <RelativeLayout android:id="@+id/rl_device" android:focusableInTouchMode="true" style="@style/tab_item_layout"> <ImageButton原创 2021-01-30 17:08:53 · 283 阅读 · 0 评论 -
Android seekbar拖动的时候显示一个小圆点
问题Android seekbar拖动的时候显示一个小圆点解决需要在xml文件seekbar里加个background的属性<SeekBar android:background="@null"/>原创 2020-11-03 16:32:37 · 1008 阅读 · 0 评论 -
Android的VersionCode和VersionName
定义Android的版本可以在androidmainfest.xml中定义,主要有android:versionCode和android:versionNameGoogle为APK定义了两个关于版本属性:VersionCode和VersionName,他们有不同的用途。VersionCode:对消费者不可见,仅用于应用市场、程序内部识别版本,判断新旧等用途。android:versionCode:主要是用于版本升级所用,是INT类型的,第一个版本定义为1,以后递增,这样只要判断该值就能确定是否需要升转载 2020-10-23 09:48:58 · 4507 阅读 · 0 评论 -
Android9 蓝牙开发学习(6)——蓝牙各种广播监听
蓝牙开关状态变化BluetoothAdapter.ACTION_STATE_CHANGEDif (action.equals(BluetoothAdapter.ACTION_STATE_CHANGED)) { int state = intent.getIntExtra(BluetoothAdapter.EXTRA_STATE, BluetoothAdapter.ERROR); switch (state) { case BluetoothAdap原创 2020-09-16 12:00:08 · 2108 阅读 · 0 评论 -
Android9 蓝牙开发学习(5)——BluetoothPbapClient
BluetoothPbapClient主要实现电话簿下载电话号码簿访问协议(Phonebook Access Profile)BluetoothPbapClient初始化// 初始化BluetoothAdapter.getDefaultAdapter().getProfileProxy(context, mProfileListener, BluetoothProfile.PBAP_CLIENT);//还要实现BluetoothProfile.ServiceListener接口,在onServi原创 2020-09-16 10:12:28 · 1719 阅读 · 2 评论 -
Android9 蓝牙开发学习(4)——BluetoothHeadsetClient
BluetoothHeadsetClient主要实现HFP协议,主要实现拨打、接听、挂断电话(AG侧、HF侧)、切换声道功能。AG(Audio Gate)音频网关—音频设备输入输出网关 。HF(Hands Free)免提—该设备作为音频网关的远程音频输入/输出机制,并可提供若干遥控功能。在车载蓝牙中,手机侧是AG,车载蓝牙侧是HF,在android源代码中,将AG侧称为HFP/AG,将HF侧称为HFPClient/HF。BluetoothHeadsetClient初始化// A code blo原创 2020-09-16 09:48:11 · 4101 阅读 · 0 评论 -
Android9 蓝牙开发学习(3)——BluetoothAvrcpController
BluetoothAvrcpController主要控制蓝牙音乐的播放暂停AVRCP全名是Audio Video Remote Cortrol Profile音频/视频bai远程控制配置文件。BluetoothAvrcpController初始化//初始化bluetoothAdapter.getProfileProxy(context, mAvrcpServiceListener, BluetoothProfile.AVRCP_CONTROLLER);//还要实现BluetoothProfile原创 2020-09-15 17:19:56 · 2445 阅读 · 3 评论 -
诡异的bug,Android静态广播getExtra丢失数据
问题最近遇到个诡异的bug,需求是客户的应用开机时通过广播发送数据,我们在接受到广播数据后进行相应的处理。之前用的是静态广播,接受到数据后进行处理,发现概率性处理结果有问题,和客户所发的处理不一致。解决后来开机在静态广播里打印日志,发现客户开机会连发8个广播,...原创 2020-09-15 17:04:39 · 477 阅读 · 0 评论 -
Android9 蓝牙开发学习(2)——BluetoothA2dpSink
BluetoothA2dpSink主要实现a2dp协议及其接口,主要连上后接收音频数据BluetoothA2dpSink初始化// 初始化bluetoothAdapter.getProfileProxy(context, serviceListener, BluetoothProfile.A2DP_SINK);//还要实现BluetoothProfile.ServiceListener接口,在onServiceConnected中获取bluetoothA2dpSink对象 private原创 2020-09-15 16:51:01 · 5984 阅读 · 7 评论 -
Android9 蓝牙开发学习(1)——BluetoothAdapter
BluetoothAdapter是系统的蓝牙适配器,常用功能有1.开关蓝牙2.扫描蓝牙3.获取蓝牙基本信息,如mac地址,蓝牙名字,蓝牙状态BluetoothAdapter初始化bluetoothAdapter = BluetoothAdapter.getDefaultAdapter();BluetoothAdapter打开功能//是否打开bluetoothAdapter.isEnabled();//打开bluetoothAdapter.enable();//关闭bluetoot原创 2020-09-15 16:16:44 · 2098 阅读 · 0 评论 -
android9 sharepreference报错java.lang.IllegalStateException: SharedPreferences in credential encrypted
问题Android9 开机调用shareprederence,报错java.lang.IllegalStateException: SharedPreferences in credential encrypted解决AndroidMenifest.xml里添加属性android:directBootAware="true"代码里修改获取sharepreference的方式final Context storageContext = context.createDeviceProtecte原创 2020-09-14 17:40:57 · 849 阅读 · 0 评论 -
打开activity,报错java.lang.SecurityException: Permission Denial: starting Intent { act=android.intent.ac
问题Android9 机器,一个应用启动另一个应用// 启动代码如下Intent intent = new Intent(Intent.ACTION_MAIN); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.setComponent(new ComponentName(pkg, actName)); intent.addCategory(In原创 2020-09-14 17:08:34 · 6059 阅读 · 0 评论 -
Android获取应用程序的名称,包名,版本号
主要为了获取Android手机端的应用名称,包名,版本号private void listPackages() { ArrayList<PInfo> apps = getInstalledApps(false); /* false = no system packages */ final int max = apps.size(); for (int i=0; i<max; i++) { apps.get(i).p原创 2020-06-15 16:51:36 · 713 阅读 · 0 评论 -
SystemProperties與Settings.System
转载自:https://www.cnblogs.com/wanqieddy/archive/2013/06/09/3128102.html1 使用 SystemProperties.get如果属性名称以“ro.”开头,那么这个属性被视为只读属性。一旦设置,属性值不能改变。如果属性名称以“persist.”开头,当设置这个属性时,其值也将写入/data/property。在c++中就是对应JAVA的两个函数就是property_set, property_get,其实JAVA是通过JNI调用这两个函数转载 2020-05-28 11:03:04 · 348 阅读 · 0 评论 -
Android中ViewPager和PagerAdapter的简单使用
需求使用ViewPager和PagerAdapter简单的做一个当前界面横向滑动可以切换图片的功能。布局activity.xml布局文件只要加入ViewPager和TextView控件即可<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_pa原创 2020-05-14 10:45:45 · 1487 阅读 · 0 评论 -
Android用原生SerialPort开发串口serial读写demo
目标目标是在Android平台上,利用原生SerialPort,开发一个串口demo,对串口进行测试(能收发证明没问题)1.权限因为使用了原生的SerialPort,所以要声明一些权限AndroidManifest.xml里需要声明此权限:因为这个权限是系统级的,所以还要在AndroidManifest.xml添加android:sharedUserId="android.uid.system"另外应用还需要进行系统级别的签名:签名下载地址...原创 2020-05-13 10:56:51 · 4268 阅读 · 5 评论 -
Android 9 Cleartext HTTP traffic to xxx not permitted
问题Android 9 访问网络时报错Cleartext HTTP traffic to xxx not permitted据说是最新版没有Http访问权限解决1把代码里的网址http开头的换成https方法HttpURLConnection换成HttpsURLConnection即可访问相应网络解决2在builder.gradle中将targetSdkVersion降到28以下...原创 2020-01-11 15:42:07 · 325 阅读 · 0 评论 -
Android showSoftInput概率性弹不出键盘
Android中调用系统键盘代码: InputMethodManager imm = (InputMethodManager) editText.getContext().getSystemService(Context.INPUT_METHOD_SERVICE); //显示键盘 imm.showSoftInput(editText, InputMethodManager.SHOW_IMPL...原创 2020-01-07 14:46:20 · 1285 阅读 · 0 评论 -
Android实现textView倒影效果ReflectTextView
代码转载自https://github.com/Dean1990/ReflectTextView by Dean1990效果要实现带倒影效果的textview,效果如下有2种方法,一种是如果是只有数字和字母,让设计切出来相应带倒影效果的文字图片,需要哪张图,就用哪张图显示即可。还有一种就是重写TextView,加上倒影效果。实现ReflectTextView.java话不多说,...转载 2020-01-06 10:51:02 · 710 阅读 · 0 评论 -
Android如何使布局中图(ImageButton)和文字(TextView)同时获得press和selected状态
问题布局中有图片和文字,希望按下时,同时有press状态,并且同时能有select状态。实现需要注意的是,子view需要调用这3个属性,使其不获得焦点,所有状态都给布局LinearLayout,所有的view都需加上对应的selector。 android:clickable="false" android:focusable="false" andro...原创 2020-01-04 11:23:13 · 866 阅读 · 0 评论 -
Android实现检测3s内客户无操作&&界面长按3s弹出隐藏按钮
界面长按3s弹出隐藏按钮在界面里重写onTouchEvent方法,当隐藏按钮不可见时,长按ACTION_DOWN,延时启动隐藏按钮,当检测到其它Action,取消显示隐藏按钮。 @Override public boolean onTouchEvent(MotionEvent event) { if (!Visiable) { ...原创 2019-12-24 12:02:10 · 766 阅读 · 0 评论 -
Android Button实现上图下文字 drawableTop 属性
需求需要实现上面是图片,下面是文字的空间,最简单的办法是直接用Button实现,不需要自定义。实现xml里实现在xml布局文件中直接写//xml<Button android:id="@+id/btn_audio_icon" android:layout_width="wrap_content" ...原创 2019-12-19 17:30:57 · 1870 阅读 · 0 评论 -
代码里设置TextView的color, 使用selector颜色选择器
如果是在xml文件里,直接使用selector即可<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_pressed="true" android:co...原创 2019-11-26 14:38:32 · 995 阅读 · 0 评论 -
Android事件分发
View相关方法@Overridepublic boolean onTouchEvent(MotionEvent event) { switch (event.getAction()){ case MotionEvent.ACTION_DOWN: Log.d("TAG", "You down button"); ...原创 2019-11-13 16:25:29 · 116 阅读 · 0 评论 -
(Android)ADB常用命令
adb remount 重新挂载文件系统adb shell 获取权限,能进入android系统 cd system/etc/dabtuner(进入文件夹) ls(显示文件) cat 在窗口看文件内容#rm -r xxx //删除名字为xxx的文件夹及其里面的所有文件 #rm xxx //删除文件xxx #rmdir xxx //删除xxx的文件夹exit 退出shelladb...原创 2018-11-15 16:14:14 · 408 阅读 · 0 评论 -
(ANDROID)顶部menu隐藏,进入全屏界面,顶部无触摸响应
描述:menu是状态栏,用addView方式添加,在进入一个全屏界面时,需隐藏,用的是View.SYSTEM_UI_FLAG_FULLSCREEN,addView时,layoutParams属性是FLAG_NOT_FOCUSABLElayoutParams属性是FLAG_NOT_FOCUSABLE会导致隐藏的menu顶端无触摸相应解决:将属性改为FLAG_NOT_TOUCHABLE即可触摸相...原创 2018-11-13 16:40:22 · 659 阅读 · 0 评论 -
Android中ListView点击onItemClick不响应,onTouch和onItemLongClick响应
这里先说以下原因,我这里的ListView不能点击,可能是跟线程更新UI有关,与获取焦点之类无关。程序里的ListView设置了点击监听setOnItemClickListener,长按监听setOnItemLongClickListener,触摸监听setOnTouchListener。onTouch返回值作用返回值作用true不能向onItemLongClick,onItemClick传递(不...原创 2018-04-13 18:59:57 · 859 阅读 · 0 评论 -
百度CarLife Android车机端黑屏问题
问题描述手机端与车机端通过carlife连接后,车机端画面与手机同步,在carlife软件内点击退出后,在车机端再次点击APP,车机端黑屏,不能同步手机端画面。2.分析在车机端点击退出时,调用了销毁Activity的方法:getActivity().finish();只有carLife的后台服务还没销毁,当再次启动的时候这个Activity再次启动,新建surfaceView,两次日志比较如下图:...原创 2018-04-18 18:44:15 · 19029 阅读 · 0 评论 -
ListView根据屏幕高度自适应设置Item的高度(Android)
假设一个页面的ListView要显示6个Item,根据屏幕的高度不同,Item的高度也不同。思路:在xml文件里设置ListView高度:android:layout_height="match_parent"在程序里的适配器中的getView函数中获取屏幕的高度,并给每个Item赋高度: @Override public View getView(int position, View v...原创 2018-04-16 19:59:13 · 4635 阅读 · 1 评论