![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android
邱小琪Yogi
假如不把将日积月累的宝贵经验,以及不断涌现的的智慧记录下来的话,可说是天地下最浪费的事情了。假如没有写日记,就好像将每天贵重的财产丢弃一样。
展开
-
记录一下Android Studio设置模拟器的安装位置
模拟器越用,所占的空间也越大,Android Studio默认把模拟器安装在C:\Users\Administrator.android下。我看了一眼,都快10G了。搜索了一下方法,有的可能版本太老了,已经不适用了。我现在用的是Android Studio4.2.1。在这里记录一下,方便后来人。设置环境变量ANDROID_SDK_HOME,再重启即可具体操作是:右键”此电脑“-”管理“-”高级系统设置“-”环境变量-“新建系统变量”根据以上步骤,新建系统环境变量ANDROID_SDK_HOME原创 2021-05-30 15:05:35 · 5622 阅读 · 2 评论 -
Android平台上,如何通过SecureCRT等终端通过命令控制机顶盒,发送键值
作者:Yogi前言:项目中与人合作的时候,遇到问题:客户没有来到公司,但是想操作一下Android机顶盒,就是说想远程操作机顶盒,如何实现呢?环境搭建1.在公司的笔记本上安装好SecureCRT工具,连接上我们的机顶盒。 2.与客户开启QQ的远程控制以及视频聊天 3.把笔记本对准机顶盒连接的电视机 接下来的就是客户如何在我们笔记本上的SecureCRT上随心所欲地操作机顶盒了原创 2016-03-25 17:52:03 · 6430 阅读 · 0 评论 -
【Android问题集】ListView的item的listSelector在第一次时不起作用
作者:Yogi前言:在项目调试中,碰到第一次显示该界面时,其listSelector不起作用的情况,后面则其作用了。背景介绍listSelector.xml的代码如下<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android"> <item原创 2016-03-18 17:44:03 · 2070 阅读 · 0 评论 -
【Android】Eclipse上string.xml发生Found text“ ” where item tag is expected错误,如何解决
作者:Yogi前言:因为项目需要增加对中文繁体的支持,所以利用谷歌翻译,将项目原有的中文简体翻译成中文繁体,但是直接将谷歌翻译后的内容拷贝到string.xml中,遇到问题:Found text“ ” where item tag is expected导致apk无法正常编译。此篇文章告诉你如何解决此问题。背景下图表示了我是如何把中文简体变成中文繁体的过程: 在第3步之后,我直接把拷贝到的内容贴到原创 2016-05-24 14:27:45 · 1483 阅读 · 0 评论 -
Android切换语言后,Launcher并没有相应更新语言
作者:Yogi前言:这个Launcher是我们公司自己开发的。在上一篇【Android问题记录】Android在设置中切换语言后,回到Lanucher为什么会白屏 中,讲述了如何在切换语言后,不导致Launcher重启的方法,但是后续发现,确实达到了切换语言不重启的目的,可是Launcher上的语言也并没有更新为系统语言。此篇讲述,如何在不重启Launcher的情况下,也能更新显示系统语言以及为何重原创 2016-05-05 11:54:38 · 6634 阅读 · 1 评论 -
经验证的为第三方应用签名,成系统应用
方法11.找到platform.pk82.找到platform.x509.pem3.准备未签名的应用unsigned.apk4.把这3个文件放在同一个文件夹signtest,进入这个文件夹,执行下面的命令第一句openssl pkcs8 -inform DER -nocrypt -in platform.pk8 -out platform.pem第二句openssl pkcs12 -export ...原创 2018-02-26 14:05:22 · 457 阅读 · 0 评论 -
AndroidTV语音搜索
1.android.intent.action.search:告诉搜索服务,这个可以被搜索 /** * Builds an entire list (suitable for display) of * activities that are searchable, by iterating the entire set of * ACTION_S原创 2018-03-16 14:37:34 · 1249 阅读 · 0 评论 -
Android Studio如何把so库编译进apk中
1.在build.gradle的android里,加上sourceSets { main { jniLibs.srcDirs = ['libs'] } }2.把so库放在libs下就可以了原创 2018-03-16 14:41:14 · 3338 阅读 · 0 评论 -
【AndroidTV】如何自定义屏保、更改屏保时长
目录目录系统屏保源码有哪些在设置中显示的屏保选项有哪些屏保选项是如何获得的多久出现屏保系统屏保源码有哪些如果要自定义屏保可以参考这里的源码,清晰易懂,比网上教程好 屏保 源码位置 BasicDream packages\screensavers下 PhotoTable packages\screensavers下 WebView package\screensa原创 2018-03-02 16:16:36 · 4253 阅读 · 1 评论 -
视频源4:3 16:9与显示模式的关系
4:3、16:9原创 2018-04-02 16:39:10 · 1508 阅读 · 0 评论 -
Android7如何获取当前运行的Activity的包名
到了Android6.0版本,即Marshmallow(api level 23)时,获取TopApp的方法改变了。原创 2018-04-24 17:06:19 · 2121 阅读 · 0 评论 -
【Android】如何获取TextView的控件宽度以及字体宽度
作者:Yogi前言:当在界面观察时,明明看到TextView上的字体已经超出显示范围,却不发生自滚动。但是,你看到它超出,不一定真的超出哦。此篇文章告诉你,如何看实实在在的TextView的显示范围以及文本所占宽度。TextPaint paint = mTvProgramName.getPaint();paint.setTextSize(mTvProgramName.getTextSize());原创 2016-05-25 17:41:08 · 5430 阅读 · 0 评论 -
【Android】如何通知MediaScanner扫描出指定文件
作者:Yogi前言:如果要扫描u盘的话,通过发送广播的方式,则会扫描整个u盘,若文件多,那是相当耗时的。这里教你如何扫描指定的文件夹,若知道文件名,当然也可以扫描指定文件。扫描之后,我们就可以在媒体数据库查询到新添加的文件了。原理用MediaScannerConnectionClient来通知MediaScanner更新单个文件,不需要用广播的方式,也就不需要系统权限(android:sharedU原创 2016-06-30 15:03:28 · 3209 阅读 · 0 评论 -
【Android】熟悉Android Studio以及其快捷键
作者:Yogi前言:公司之前一直用eclipse进行开发,近期换成了Android Studio来开发,从eclipse迁移过来,总有一些不顺利,不熟悉的地方,我在边熟悉的工程中总结了一些非常有帮助的东西,希望能够帮到大家。(Windows版哦)快捷键使用ctrl + alt +s 打开设置(也可File-Settings)。搜索keyMap,可以查看当前的快捷键定义。你也可以自己定义快捷键。也可以原创 2016-06-30 15:58:11 · 620 阅读 · 0 评论 -
【Android技巧】通过am完成发送开机广播等操作
作者:Yogi前言:许多应用都有接收开机广播,进行一些操作的功能,每次调试这些功能总是要重启机器很麻烦,庆幸的是,我们可以在终端通过安卓自带的am命令来发送开机广播,省去了等待的时间。发送开机广播的命令如下am broadcast -a android.intent.action.BOOT_COMPLETED类似的,我们可以使用 am broadcast -a xxaction来发送广播后续,我将原创 2016-03-17 17:14:52 · 5230 阅读 · 0 评论 -
【Android问题集】ListView不响应onItemClick事件
作者:Yogi前言:在机顶盒的直播应用项目中遇到listview完全不响应onItemClick事件,但是响应onItemSelected事件,这个问题该怎么解决呢?解决思路listView不响应onItemClick事件,有以下几个原因 1.应用卡死了 2.根本就没有setOnItemClickListener 3.listview没有获取到焦点 4.click事件被list原创 2016-03-18 10:48:58 · 1096 阅读 · 0 评论 -
如何反编译APK修改成自己想要的并打包运行
作者:Yogi原理利用解压缩工具获得源码的classes.dex文件; 通过dex2jar工具将classes.dex文件转换成jar包,并用jd_gui工具查看源码; 确定要改的位置后,在对应的smali文件中做修改; 修改完smali文件后再把smali文件打包成classes.dex,并通过压缩工具将原apk的classes.dex替换; 最后通过签名工具,重新生成新的可用的apk。原创 2016-03-14 14:23:12 · 6868 阅读 · 3 评论 -
Android应用如何做到多尺寸,多语言适配,为什么尺寸对了,表现却不对
作者:Yogi前言:前一阵子,因为应用需要在不同分辨率,不同语言的机器上跑,所以新增了一些尺寸适配的经验,在这里记录一下,供参考。代码编写建议为了不给以后造成麻烦,建议把所有跟尺寸相关的,都写到dimens.xml文件中。 即使现在不需要做多尺寸,但是我们永远也不知道以后会发生什么,所以为了不做重复工作,前期就把该做的做好。 另外,在代码中用到的尺寸,最好也写到dimens.xml中。适配语言的原创 2016-04-26 14:50:12 · 784 阅读 · 0 评论 -
为什么明明安装了这个Android应用,却找不到
作者:Yogi前言:这里讲的是,通过adb push方式安装应用的问题。有时候,我们明明把应用push到了设备上,却总也找不到这个应用,这篇文章教你怎么应对。你确定安装成功了吗?首先要确定应用真的安装成功了,因为我们是通过 adb push XX.apk /data/app 或者 adb push xx.apk /system/app到设备中的,所以不能看到应用是否安装成功的信息。那么如何判原创 2016-04-26 15:17:39 · 13178 阅读 · 0 评论 -
【Android问题记录】Android在设置中切换语言后,回到Lanucher为什么会白屏
作者:Yogi前言:在项目中遇到一个问题,当在设置中切换语言成功后回到Lanucher时,Lanucher会走onDestroy方法,从而界面会出现白屏现象,这显然是不好的,下面给出解决办法。在主Activity中加入 android:configChanges=”locale|layoutDirection”就能够达到语言切换,而不需重启Launcher的目的,从而,也就不会走onDestr原创 2016-04-27 16:15:15 · 2278 阅读 · 3 评论 -
Launcher与开机广播,究竟谁先起
作者:Yogi前言:因为最近想要在Launcher中使用自定义的服务,开始时理所当然地认为系统应该先发送开机广播,再把Launcher启动,所以把服务的启动放在开机广播接收者中,这样在Launcher中使用服务时,拿到的对象总是空的。结论:Launcher先启动后,系统再发送开机广播。验证方法: 1.在Launcher的启动Activity的onCreate()方法中添加打印 2.在Launch原创 2016-04-18 11:24:18 · 1997 阅读 · 0 评论 -
如何查看Android系统当前发送了什么广播
作者:Yogi前言:在开发的时候,我们有时想知道我们定义的广播是否成功发送,或者想知道做了某个操作,系统是否会发送广播,并且发送了什么广播。如果说能够直接查看到,那是非常好的,这样就不需要google,百度,也不需要深入底层看源码。此篇文章就是告诉你这个调试的小技巧,非常实用哦。查看Android系统广播发送记录这条命令是 dumpsys |grep BroadcastRecord敲入这条命原创 2016-05-23 14:01:20 · 14398 阅读 · 0 评论 -
Android上如何让TextView上的字体放大且自滚动
作者:Yogi前言:此篇文章告诉你如何让TextView的字体放大且能够自滚动。背景TextView是listView上item的一个控件,要求如下: 1.当未被选中时,正常字体大小,若不能完全显示,则自滚动 2.当被选中时,字体放大一定倍数,若不能完全显示,则自滚动。解决办法解决要求1针对要求1,我们可以继承TextView,定义一个超出显示范围则自滚动的控件,并在layout文件中使用这个控原创 2016-05-23 14:43:51 · 3166 阅读 · 0 评论 -
【Android】如何设置应用强制横屏或竖屏
作者:Yogi前言:有时候我们想让应用保持在一个状态:横屏或者竖屏。那么应该怎么做呢?方法1setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);//强制竖屏写在setContentView()之后即可方法2在AndroidManifest.xml的activity节点中添加如下片段: android:screenOri原创 2016-06-30 15:35:53 · 49695 阅读 · 1 评论 -
AndroidManifest.xml缺少application标签,也能编译通过
作者:Yogi前言:做framework的同事为了测试某个功能,移植了某个工程的代码后,在记事本中修改了AndroidManifest.xml文件,之后便在源码中编译,并运行。但是运行效果(接收到开机广播会有打印)并不如预想。为了方便查看工程代码,我把同事的代码放在eclipse上查看,这时就很容易看出问题了:AndroidManifest.xml文件少了application标签。加上applic原创 2016-03-16 10:27:19 · 869 阅读 · 0 评论