<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Android开发]]></title><description><![CDATA[android开发, 一门艺术]]></description><link>https://blog.youkuaiyun.com/computer30000</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; computer30000]]></copyright><item><title><![CDATA[Mac pip 安装pytorch后 Pycharm打开python项目后闪退]]></title><link>https://blog.youkuaiyun.com/computer30000/article/details/136152700</link><guid>https://blog.youkuaiyun.com/computer30000/article/details/136152700</guid><author>computer30000</author><pubDate>Sun, 18 Feb 2024 15:33:36 +0800</pubDate><description><![CDATA[#最终方案: 重装了Mac电脑系统 - > 安装anaconda, Pycharm, 至此,之前的python项目运行恢复正常. 但依赖包还是得安装, 如pytorch.再次打开之前能运行良好的python项目,进入项目时Pycharm会闪退回到项目列表页(即Pycharm的运行起始页(可以new project的)). 非常奇怪.个人推测,问题产生与pip 安装依赖包有关,尤其torch. 或者是pip 与 anaconda安装有一定冲突,导致Pycharm不可用.]]></description><category></category></item><item><title><![CDATA[java.lang.IllegalArgumentException: Scrapped or attached views may not be recycled. isScrap:false is]]></title><link>https://blog.youkuaiyun.com/computer30000/article/details/119907100</link><guid>https://blog.youkuaiyun.com/computer30000/article/details/119907100</guid><author>computer30000</author><pubDate>Wed, 25 Aug 2021 15:21:53 +0800</pubDate><description><![CDATA[开发中发现app内wishlist页面中心愿单商品，两个及以上时，同时取消关注，刷新列表会导致页面Crash。log如下：


08-24 16:09:28.138 14091 14091 E AndroidRuntime: Process: com.cider, PID: 14091
08-24 16:09:28.138 14091 14091 E AndroidRuntime: java.lang.IllegalArgumentException: Scrapped or attached views ]]></description><category></category></item><item><title><![CDATA[报错：java.lang.IllegalArgumentException: Parameter ‘directory‘ is not a directory in android]]></title><link>https://blog.youkuaiyun.com/computer30000/article/details/119328236</link><guid>https://blog.youkuaiyun.com/computer30000/article/details/119328236</guid><author>computer30000</author><pubDate>Mon, 02 Aug 2021 16:34:44 +0800</pubDate><description><![CDATA[Android项目rebuild时遇到报错：

java.lang.IllegalArgumentException: Parameter 'directory' is not a directory in android

解决方案：

1.删除项目根目录下.gradle文件夹；

2.点击File-&gt;Invalidate Caches/Restart...如下图：



3.按提示重启Android Studio，重新rebuild项目。

亲测有效。


...]]></description><category></category></item><item><title><![CDATA[2021-06-07]]></title><link>https://blog.youkuaiyun.com/computer30000/article/details/117651705</link><guid>https://blog.youkuaiyun.com/computer30000/article/details/117651705</guid><author>computer30000</author><pubDate>Mon, 07 Jun 2021 10:25:08 +0800</pubDate><description><![CDATA[#1. 由淘宝小程序框架说起
最近我负责的APP接入淘宝小程序，所以对它的原理简单了解了下。淘宝小程序采用了原生响应式UI框架。
首先需要提到Reactor，Reactor 是使用 C++开发的响应式框架。
##核心功能

Reactor的核心功能包含了组件化、状态管理、表达式运算、模板解析、CSSOM、节点构建6个部分，
组件化：实现组件的组合与扩展
状态管理：实现响应式更新
表达式运算：实现数据绑定
模板解析: 解析模板结构和渲染指令
CSSOM：管理样式表/实现选择器
节点构建：展开生成节点树
##能]]></description><category></category></item><item><title><![CDATA[Error:Cause: buildToolsVersion is not specified.]]></title><link>https://blog.youkuaiyun.com/computer30000/article/details/87367151</link><guid>https://blog.youkuaiyun.com/computer30000/article/details/87367151</guid><author>computer30000</author><pubDate>Fri, 15 Feb 2019 16:00:41 +0800</pubDate><description><![CDATA[将某Library作为一个工程依赖集成时，您的工程app中可能碰到如下报错：Error:Cause: buildToolsVersion is not specified. 如图：

解决方案：
在app下的build.gradle中添加buildToolsVersion，如下图：


...]]></description><category></category></item><item><title><![CDATA[java.io.FileNotFoundException: /Users/yuemq/linkfaceDemo/MyOCRProject/app/build/intermediates/symbo]]></title><link>https://blog.youkuaiyun.com/computer30000/article/details/87367027</link><guid>https://blog.youkuaiyun.com/computer30000/article/details/87367027</guid><author>computer30000</author><pubDate>Fri, 15 Feb 2019 15:59:04 +0800</pubDate><description><![CDATA[将某Library作为一个工程依赖集成时，您的工程app中可能碰到如下报错：
Error:Execution failed for task ‘:app:processDebugAndroidTestResources’.

java.io.FileNotFoundException: /Users/yuemq/linkfaceDemo/MyOCRProject/app/build/interme...]]></description><category></category></item><item><title><![CDATA[Warning:The specified Android SDK Build Tools version (25.0.3) is ignored, as it is below the minimu]]></title><link>https://blog.youkuaiyun.com/computer30000/article/details/87366883</link><guid>https://blog.youkuaiyun.com/computer30000/article/details/87366883</guid><author>computer30000</author><pubDate>Fri, 15 Feb 2019 15:57:07 +0800</pubDate><description><![CDATA[将某Library作为一个module导入集成时，报错
Warning:The specified Android SDK Build Tools version (25.0.3) is ignored, as it is below the minimum supported version (26.0.2) for Android Gradle Plugin 3.0.1.
Android SD...]]></description><category></category></item><item><title><![CDATA[Conflict with dependency 'com.android.support:support-annotations' in project ':app'. Resolved versi]]></title><link>https://blog.youkuaiyun.com/computer30000/article/details/87366754</link><guid>https://blog.youkuaiyun.com/computer30000/article/details/87366754</guid><author>computer30000</author><pubDate>Fri, 15 Feb 2019 15:55:30 +0800</pubDate><description><![CDATA[
将某library作为一个module导入集成时，报错
Error:Execution failed for task ‘:app:preDebugAndroidTestBuild’.


Conflict with dependency ‘com.android.support:support-annotations’ in project ‘:app’. Resolved versions ...]]></description><category></category></item><item><title><![CDATA[Error:(30, 0) Could not find method implementation() for arguments [directory 'libs'] on object of t]]></title><link>https://blog.youkuaiyun.com/computer30000/article/details/87366302</link><guid>https://blog.youkuaiyun.com/computer30000/article/details/87366302</guid><author>computer30000</author><pubDate>Fri, 15 Feb 2019 15:49:50 +0800</pubDate><description><![CDATA[将某Library作为一个工程依赖集成时，您的工程app中可能碰到如下报错：
Error:(30, 0) Could not find method implementation() for arguments [directory ‘libs’] on object of type org.gradle.api.internal.artifacts.dsl.dependencies.Defaul...]]></description><category></category></item><item><title><![CDATA[解决Android Studio的SSL peer shut down incorrectly报错]]></title><link>https://blog.youkuaiyun.com/computer30000/article/details/87362038</link><guid>https://blog.youkuaiyun.com/computer30000/article/details/87362038</guid><author>computer30000</author><pubDate>Fri, 15 Feb 2019 14:51:45 +0800</pubDate><description><![CDATA[将某一library作为工程依赖集成时，可能碰到Android Studio的SSL peer shut down incorrectly报错。
问题分析：可能由于项目的Gradle版本问题引起。
解决方案：
第一步：

第二步：


...]]></description><category></category></item><item><title><![CDATA[ARouter组件化之路遇到的坑]]></title><link>https://blog.youkuaiyun.com/computer30000/article/details/82843131</link><guid>https://blog.youkuaiyun.com/computer30000/article/details/82843131</guid><author>computer30000</author><pubDate>Tue, 25 Sep 2018 18:23:49 +0800</pubDate><description><![CDATA[ARouter组件化之路遇到的坑Activity跳转
Activity跳转
跳转时需要添加转入转出动画，调用withTransition(int enterAnim, int exitAnim)方法，在调用navigation（）时，若设置的效果未起效，则在navigation（）添加参数，如navigation（LoginActivity.this）即可。

...]]></description><category></category></item><item><title><![CDATA[Mac 安装protobuf2.6.1（亲自安装步骤）]]></title><link>https://blog.youkuaiyun.com/computer30000/article/details/81904849</link><guid>https://blog.youkuaiyun.com/computer30000/article/details/81904849</guid><author>computer30000</author><pubDate>Tue, 21 Aug 2018 11:36:28 +0800</pubDate><description><![CDATA[官方下载地址：https://developers.google.com/protocol-buffers/docs/downloads

若无法翻墙，则百度“protobuf2.6.1下载”，总能找到一个免费的下载地址。


下载protobuf2.6.1


解压:



tar -zxf  protobuf-2.6.1.tar.gz
cd protobuf-2.6.1

设置编译目录:


...]]></description><category></category></item><item><title><![CDATA[Android studio 引入butterknife使用时： Error:Execution failed for task ':app:javaPreCompileDebug'.]]></title><link>https://blog.youkuaiyun.com/computer30000/article/details/81904658</link><guid>https://blog.youkuaiyun.com/computer30000/article/details/81904658</guid><author>computer30000</author><pubDate>Tue, 21 Aug 2018 11:29:14 +0800</pubDate><description><![CDATA[Android studio 引入butterknife使用时： 
Error:Execution failed for task ‘:app:javaPreCompileDebug’.


  Annotation processors must be explicitly declared now.  The following dependencies on the compile clas...]]></description><category></category></item><item><title><![CDATA[Unity编译Android的原理解析和apk打包分析]]></title><link>https://blog.youkuaiyun.com/computer30000/article/details/79941165</link><guid>https://blog.youkuaiyun.com/computer30000/article/details/79941165</guid><author>computer30000</author><pubDate>Sat, 14 Apr 2018 16:03:49 +0800</pubDate><description><![CDATA[转载自 
https://www.cnblogs.com/qcloud1001/p/6650023.html 
最近由于想在Scene的脚本组件中，调用Android的Activity的相关接口，就需要弄明白Scene和Activity的实际对应关系，并对Unity调用Android的部分原理进行了研究。

本文主要探讨Scene和Activity之间的关系，以及Unity打包apk和Androi...]]></description><category></category></item><item><title><![CDATA[JAVA虚拟机、Dalvik虚拟机和ART虚拟机简要对比]]></title><link>https://blog.youkuaiyun.com/computer30000/article/details/79941151</link><guid>https://blog.youkuaiyun.com/computer30000/article/details/79941151</guid><author>computer30000</author><pubDate>Sat, 14 Apr 2018 16:02:38 +0800</pubDate><description><![CDATA[https://blog.youkuaiyun.com/jason0539/article/details/50440669 
1、什么是JVM？

JVM本质上就是一个软件，是计算机硬件的一层软件抽象，在这之上才能够运行Java程序，JAVA在编译后会生成类似于汇编语言的JVM字节码，与C语言编译后产生的汇编语言不同的是，C编译成的汇编语言会直接在硬件上跑，但JAVA编译后生成的字节码是在JVM上跑，需要由...]]></description><category></category></item><item><title><![CDATA[导致view树重新遍历的常见时机]]></title><link>https://blog.youkuaiyun.com/computer30000/article/details/79809948</link><guid>https://blog.youkuaiyun.com/computer30000/article/details/79809948</guid><author>computer30000</author><pubDate>Wed, 04 Apr 2018 17:50:24 +0800</pubDate><description><![CDATA[1.5.导致view树重新遍历的常见时机： 
导致view树重新遍历的主要原因有三个：一，View树中增加或删除了View对象；二，视图本身内部状态变化；三，View本身的大小或可见性变化。 
setVisibility（）； 
setEnable（）； 
setSelected（）； 
以上三个函数会导致调用invalidate()。 
Invalidate（）； 
requestFocus（）...]]></description><category></category></item><item><title><![CDATA[Invalidate和postInvalidate]]></title><link>https://blog.youkuaiyun.com/computer30000/article/details/79809980</link><guid>https://blog.youkuaiyun.com/computer30000/article/details/79809980</guid><author>computer30000</author><pubDate>Wed, 04 Apr 2018 17:50:12 +0800</pubDate><description><![CDATA[1.4.Invalidate和postInvalidate 
API的描述：Invalidate the whole view. If the view is visible, onDraw(Canvas) will be called at somepoint in the future. This must be called from a UI thread. To call from an...]]></description><category></category></item><item><title><![CDATA[Inflate到performTraversals]]></title><link>https://blog.youkuaiyun.com/computer30000/article/details/79810001</link><guid>https://blog.youkuaiyun.com/computer30000/article/details/79810001</guid><author>computer30000</author><pubDate>Wed, 04 Apr 2018 16:50:44 +0800</pubDate><description><![CDATA[时序图: 
]]></description><category></category></item><item><title><![CDATA[View绘制原理(时序图)]]></title><link>https://blog.youkuaiyun.com/computer30000/article/details/79810054</link><guid>https://blog.youkuaiyun.com/computer30000/article/details/79810054</guid><author>computer30000</author><pubDate>Wed, 04 Apr 2018 16:50:29 +0800</pubDate><description><![CDATA[1.View绘制原理(时序图): 
1.1.Android 系统View 的填充过程: 
参见: ViewInflate.bmp: 
 
1.2.onMeasure-&amp;gt;onLayout-&amp;gt;onDraw的过程. 
参见: performTraversals.bmp: 
 
View的Measure.bmp: 
  
-&amp;gt; View的Layout.bmp: 
 
 -&amp;gt; Vie...]]></description><category></category></item><item><title><![CDATA[View相关工具]]></title><link>https://blog.youkuaiyun.com/computer30000/article/details/79809934</link><guid>https://blog.youkuaiyun.com/computer30000/article/details/79809934</guid><author>computer30000</author><pubDate>Tue, 03 Apr 2018 21:57:44 +0800</pubDate><description><![CDATA[2.View相关工具: 
2.1.Hierarchyviewer 
Hierarchy Viewer是随AndroidSDK发布的工具，位置在tools文件夹下，名为hierarchyviewer.bat，双击即可运行。它是Android自带的非常有用而且使用简单的工具，可以帮助我们更好地检视和设计用户界面(UI)。 
具体来说主要功能有2个： 
1. 从可视化的角度直观地获得UI布局设计结构和各...]]></description><category></category></item></channel></rss>