<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Summer Breeze 夏日微风]]></title><description><![CDATA[不断前进，不断反思。]]></description><link>https://blog.csdn.net/jbhand</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; jbhand]]></copyright><item><title><![CDATA[dac_override denied android sepolicy问题处理]]></title><link>https://blog.csdn.net/jbhand/article/details/109776691</link><guid>https://blog.csdn.net/jbhand/article/details/109776691</guid><author>jbhand</author><pubDate>Wed, 18 Nov 2020 16:36:49 +0800</pubDate><description><![CDATA[0. Log：

11-17 20:56:59.504  687  687 W XXX_service: type=1400 audit(0.0:489): avc: denied { dac_override } for capability=1 scontext=u:r:XXX_service:s0 tcontext=u:r:XXX_service:s0 tclass=capability permissive=0

dac_override【自主访问控制（DAC，Discretionary Acc..]]></description><category></category></item><item><title><![CDATA[Exception 'open failed: EACCES (Permission denied)' on Android Q]]></title><link>https://blog.csdn.net/jbhand/article/details/105129591</link><guid>https://blog.csdn.net/jbhand/article/details/105129591</guid><author>jbhand</author><pubDate>Thu, 26 Mar 2020 22:11:10 +0800</pubDate><description><![CDATA[###Exception ‘open failed: EACCES (Permission denied)’ on Android Q
####1.尝试了在AndroidManifest.xml加入权限，问题依然存在；
####2.尝试了runtime时动态请求用户授权，问题依然存在
####3.在stackoverflow上看到如下修改，修改后问题得到解决：
https://stackoverf...]]></description><category></category></item><item><title><![CDATA[手机TAC码介绍]]></title><link>https://blog.csdn.net/jbhand/article/details/78207036</link><guid>https://blog.csdn.net/jbhand/article/details/78207036</guid><author>jbhand</author><pubDate>Wed, 11 Oct 2017 18:56:53 +0800</pubDate><description><![CDATA[手机IMEI码由15-17位数字组成。

第一部分 TAC，Type Allocation Code，类型分配码，由8位数字组成（早期是6位），是区分手机品牌和型号的编码，该代码由GSMA及其授权机构分配。其中TAC码前两位又是分配机构标识（Reporting Body Identifier），是授权IMEI码分配机构的代码，如01为美国CTIA，35为英国BABT，86为中国TAF。

]]></description><category></category></item><item><title><![CDATA[CUSTOM_CONFIG_MAX_DRAM_SIZE的大小换算]]></title><link>https://blog.csdn.net/jbhand/article/details/78094580</link><guid>https://blog.csdn.net/jbhand/article/details/78094580</guid><author>jbhand</author><pubDate>Tue, 26 Sep 2017 14:05:01 +0800</pubDate><description><![CDATA[今天看代码，0x10000000代表1G，0x20000000代表2G，0x40000000代表4G，很疑惑，不清楚是怎么换算的。
原来要和机器字长联系起来计算就可以对上了，以0x10000000代表1G为例：
1G 即 1GB == (2^10) * (2^10) * (2^10)B == 2^30B
0x10000000换算成二进制即2^28，然后根据CPU的字长为32位（4字节）或者6]]></description><category></category></item><item><title><![CDATA[wildcard  notdir  patsubst  eval]]></title><link>https://blog.csdn.net/jbhand/article/details/78085971</link><guid>https://blog.csdn.net/jbhand/article/details/78085971</guid><author>jbhand</author><pubDate>Mon, 25 Sep 2017 15:47:14 +0800</pubDate><description><![CDATA[1 1.wildcard : 扩展通配符

2 2.notdir ： 去除路径

3 3.patsubst ：替换通配符


例子：
建立一个测试目录，在测试目录下建立一个名为sub的子目录
$ mkdir test
$ cd test
$ mkdir sub

在test下，建立a.c和b.c2个文件，在sub目录下，建立sa.c和sb.c2 个文件

建立一个简单]]></description><category></category></item><item><title><![CDATA[TypeError: 'NoneType' object is not iterable]]></title><link>https://blog.csdn.net/jbhand/article/details/77918900</link><guid>https://blog.csdn.net/jbhand/article/details/77918900</guid><author>jbhand</author><pubDate>Sat, 09 Sep 2017 23:15:57 +0800</pubDate><description><![CDATA[今天在验证scrapy官网tutorial的例子时遇到了这个报错，例子的链接如下：
https://docs.scrapy.org/en/latest/intro/tutorial.html

example代码如下，去掉图中箭头处的‘，’（逗号），  该问题得到解决，不知道是官网例子的代码有问题，还是我的编译环境和官网使用的不同导致




执行命令：
scrapy crawl]]></description><category></category></item><item><title><![CDATA[Python yield 使用浅析]]></title><link>https://blog.csdn.net/jbhand/article/details/77918428</link><guid>https://blog.csdn.net/jbhand/article/details/77918428</guid><author>jbhand</author><pubDate>Sat, 09 Sep 2017 22:17:31 +0800</pubDate><description><![CDATA[本文转自：https://www.ibm.com/developerworks/cn/opensource/os-cn-python-yield/，感谢作者分享



Python yield 使用浅析


您可能听说过，带有 yield 的函数在 Python 中被称之为 generator（生成器），何谓 generator ？

我们先抛开 generator，以一个常见的]]></description><category></category></item><item><title><![CDATA[Anaconda是什么？]]></title><link>https://blog.csdn.net/jbhand/article/details/77883457</link><guid>https://blog.csdn.net/jbhand/article/details/77883457</guid><author>jbhand</author><pubDate>Thu, 07 Sep 2017 16:34:17 +0800</pubDate><description><![CDATA[Anaconda是一个用于科学计算的Python发行版，支持 Linux, Mac, Windows系统，提供了包管理与环境管理的功能，可以很方便地解决多版本python并存、切换以及各种第三方包安装问题。Anaconda利用工具/命令conda来进行package和environment的管理，并且已经包含了Python和相关的配套工具。

这里先解释下conda、anaconda这些概念的]]></description><category></category></item><item><title><![CDATA[Sublime插件]]></title><link>https://blog.csdn.net/jbhand/article/details/77814915</link><guid>https://blog.csdn.net/jbhand/article/details/77814915</guid><author>jbhand</author><pubDate>Sun, 03 Sep 2017 08:48:44 +0800</pubDate><description><![CDATA[Sublime插件使用记录


Python：
代码补全
SublimeCodeIntel
Jedi - Python autocompletion


Python编译
Tools->Build System->Python
然后Ctrl+B就可以编译当前python文件了]]></description><category></category></item><item><title><![CDATA[Sublime Text3 绑定鼠标右键方法]]></title><link>https://blog.csdn.net/jbhand/article/details/77787055</link><guid>https://blog.csdn.net/jbhand/article/details/77787055</guid><author>jbhand</author><pubDate>Sat, 02 Sep 2017 02:03:37 +0800</pubDate><description><![CDATA[Sublime Text3 绑定鼠标右键方法


将以下内容拷贝到txt文件中，并将txt后缀修改为reg，双击运行即可


Windows Registry Editor Version 5.00


[HKEY_CLASSES_ROOT\*\shell\SublimeText3]


@="用 SublimeText3 打开"


"Icon"="E:\\Prog]]></description><category></category></item><item><title><![CDATA[多个库需要提交时自动生成repo提交脚本]]></title><link>https://blog.csdn.net/jbhand/article/details/77775931</link><guid>https://blog.csdn.net/jbhand/article/details/77775931</guid><author>jbhand</author><pubDate>Fri, 01 Sep 2017 18:23:45 +0800</pubDate><description><![CDATA[在维护android代码时，如果有大量修改，比方合入google释放的patch，将可能会有几十个git库同时提交，挨个来太费事了，可以根据repo status命令生成的结果进行整体提交
repo结果一般如下形式：
project frameworks/base/packages/SettingsLib/   (*** NO BRANCH ***)
 -m res/xml-ar/timez]]></description><category></category></item><item><title><![CDATA[Python字符串操作]]></title><link>https://blog.csdn.net/jbhand/article/details/77771713</link><guid>https://blog.csdn.net/jbhand/article/details/77771713</guid><author>jbhand</author><pubDate>Fri, 01 Sep 2017 13:13:24 +0800</pubDate><description><![CDATA[原文地址：http://www.cnblogs.com/huangcong/archive/2011/08/29/2158268.html

去空格及特殊符号

s.strip().lstrip().rstrip(',')


复制字符串

#strcpy(sStr1,sStr2)
sStr1 = 'strcpy'
sStr2 = sStr1
sStr1 = 'strcpy2'
]]></description><category></category></item><item><title><![CDATA[Sublime Text3 手动安装Package Control]]></title><link>https://blog.csdn.net/jbhand/article/details/77771197</link><guid>https://blog.csdn.net/jbhand/article/details/77771197</guid><author>jbhand</author><pubDate>Fri, 01 Sep 2017 11:40:22 +0800</pubDate><description><![CDATA[手动安装Package Control

可能由于各种原因，无法使用代码安装，那可以通过以下步骤手动安装Package Control：

1.点击Preferences > Browse Packages菜单

2.进入打开的目录的上层目录，然后再进入Installed Packages/目录

3.下载Package Control.sublime-package https:]]></description><category></category></item><item><title><![CDATA[checkSelfPermission总是返回PERMISSION_GRANTED]]></title><link>https://blog.csdn.net/jbhand/article/details/77748215</link><guid>https://blog.csdn.net/jbhand/article/details/77748215</guid><author>jbhand</author><pubDate>Thu, 31 Aug 2017 16:16:40 +0800</pubDate><description><![CDATA[今天在实现录音功能的权限申请时遇到了问题，然后网上找资料，基本都是分割线下面的解决方法，但是在我的Smartisan OS V3.7.0.2（android 6.0  23）, 项目中target sdk version设置为了22。
令人疑惑的是 录音权限在设置为每次询问时，PermissionChecker#checkSelfPermission总是返回PERMISSION_GRANTED，]]></description><category></category></item><item><title><![CDATA[Unsupported major.minor version 52.0]]></title><link>https://blog.csdn.net/jbhand/article/details/77574338</link><guid>https://blog.csdn.net/jbhand/article/details/77574338</guid><author>jbhand</author><pubDate>Fri, 25 Aug 2017 15:14:49 +0800</pubDate><description><![CDATA[Android N版本制作OTA升级包时出现如下异常：
Exception in thread "main" java.lang.UnsupportedClassVersionError: com/android/signapk/SignApk : Unsupported major.minor version 52.0

原因是使用的是JDK1.7版本，需要切换为JDK1.8版本

]]></description><category></category></item><item><title><![CDATA[解决Connection to https://dl-ssl.google.com refused]]></title><link>https://blog.csdn.net/jbhand/article/details/77471034</link><guid>https://blog.csdn.net/jbhand/article/details/77471034</guid><author>jbhand</author><pubDate>Tue, 22 Aug 2017 09:44:26 +0800</pubDate><description><![CDATA[本文转自：http://www.cnblogs.com/yc-755909659/p/4073415.html  感谢作者分享
1.启动 Android SDK Manager ，打开主界面，依次选择「Tools」、「Options...」，弹出『Android SDK Manager - Settings』窗口；


2.在『Android SDK Manager - Settings』窗口中]]></description><category></category></item><item><title><![CDATA[shell eval命令使用]]></title><link>https://blog.csdn.net/jbhand/article/details/73274721</link><guid>https://blog.csdn.net/jbhand/article/details/73274721</guid><author>jbhand</author><pubDate>Thu, 15 Jun 2017 09:38:34 +0800</pubDate><description><![CDATA[本文转自：http://blog.csdn.net/w_ww_w/article/details/7075867
感谢作者分享
本文将会讲解一些linux中命令的使用与技巧希望对新手给予帮助
一 e v a l命令将会首先扫描命令行进行所有的置换，然后再执行该命令。该命令适用于那些一次扫描无法实现其功能的变量。该命令对变量进行两次扫描。这些需要进行两次扫描的变量有时被称为复杂变量。不过这些变]]></description><category></category></item><item><title><![CDATA[Jack(Java Android Compiler Kit)]]></title><link>https://blog.csdn.net/jbhand/article/details/72903993</link><guid>https://blog.csdn.net/jbhand/article/details/72903993</guid><author>jbhand</author><pubDate>Wed, 07 Jun 2017 21:13:32 +0800</pubDate><description><![CDATA[本文转自：http://www.cnblogs.com/pengdonglin137/articles/5407183.html

Jack (Java Android Compiler Kit)







阅读目录(Content)

Jack (Java Android Compiler Kit) 

The Jack toolchainThe .jack li]]></description><category></category></item><item><title><![CDATA[理解 Android Build 系统]]></title><link>https://blog.csdn.net/jbhand/article/details/72723094</link><guid>https://blog.csdn.net/jbhand/article/details/72723094</guid><author>jbhand</author><pubDate>Thu, 25 May 2017 10:38:06 +0800</pubDate><description><![CDATA[本文转自：https://www.ibm.com/developerworks/cn/opensource/os-cn-android-build/
感谢作者分享，如有禁止转载要求，请通知我，邮箱：freejinbao@163.com，谢谢
Android Build 系统是用来编译 Android 系统，Android
 SDK 以及相关文档的一套框架。众所周知，Android 是一个开源]]></description><category></category></item><item><title><![CDATA[git命令总结]]></title><link>https://blog.csdn.net/jbhand/article/details/53669905</link><guid>https://blog.csdn.net/jbhand/article/details/53669905</guid><author>jbhand</author><pubDate>Thu, 15 Dec 2016 14:20:52 +0800</pubDate><description><![CDATA[1.使用repo命令批量提交多个库的修改
repo forall project1 project2 -c git add -A


repo forall project1 project2 -c git commit -m '


repo forall project1 project2 -c 'git push $REPO_REMOTE HEAD:refs/for/$REPO]]></description><category></category></item></channel></rss>