Skip to content

Commit 74db442

Browse files
committed
地址修改为本地地址
1 parent cf969d8 commit 74db442

File tree

107 files changed

+176
-176
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

107 files changed

+176
-176
lines changed

AdavancedPart/1.热修复实现(一).md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99

1010
方案有很多种,我就只说明下我想到的方式,也就是`Instant Run`的方式:
11-
分拆到不同的`dex`中,然后通过`classloader`来进行加载。但是在之前[`InstantRun`详解](https://github.com/CharonChui/AndroidNote/blob/master/SourceAnalysis/InstantRun%E8%AF%A6%E8%A7%A3.md)中只说到会通过内部的`server`去判断该类是否有更新,如果有的话就去从新的`dex`中加载该类,否则就从旧的`dex`中加载,但这是如何实现的呢? 怎么去从不同的`dex`中选择最新的那个来进行加载。
11+
分拆到不同的`dex`中,然后通过`classloader`来进行加载。但是在之前[`InstantRun`详解](./SourceAnalysis/InstantRun%E8%AF%A6%E8%A7%A3.md)中只说到会通过内部的`server`去判断该类是否有更新,如果有的话就去从新的`dex`中加载该类,否则就从旧的`dex`中加载,但这是如何实现的呢? 怎么去从不同的`dex`中选择最新的那个来进行加载。
1212

1313
讲到这里需要先介绍一下`ClassLoader`
1414

@@ -722,7 +722,7 @@ protected void onResume() {
722722
- [当你准备开发一个热修复框架的时候,你需要了解的一切](http://www.zjutkz.net/2016/05/23/%E5%BD%93%E4%BD%A0%E5%87%86%E5%A4%87%E5%BC%80%E5%8F%91%E4%B8%80%E4%B8%AA%E7%83%AD%E4%BF%AE%E5%A4%8D%E6%A1%86%E6%9E%B6%E7%9A%84%E6%97%B6%E5%80%99%EF%BC%8C%E4%BD%A0%E9%9C%80%E8%A6%81%E4%BA%86%E8%A7%A3%E7%9A%84%E4%B8%80%E5%88%87/)
723723

724724

725-
[1]: https://github.com/CharonChui/AndroidNote/blob/master/SourceAnalysis/InstantRun%E8%AF%A6%E8%A7%A3.md "InstantRun详解"
725+
[1]: ./SourceAnalysis/InstantRun%E8%AF%A6%E8%A7%A3.md "InstantRun详解"
726726

727727

728728
---

AdavancedPart/2.热修复实现(二).md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ But,最近遇到困难了,所在项目要做插件化,同事在开发过
8888
- [当你准备开发一个热修复框架的时候,你需要了解的一切](http://www.zjutkz.net/2016/05/23/%E5%BD%93%E4%BD%A0%E5%87%86%E5%A4%87%E5%BC%80%E5%8F%91%E4%B8%80%E4%B8%AA%E7%83%AD%E4%BF%AE%E5%A4%8D%E6%A1%86%E6%9E%B6%E7%9A%84%E6%97%B6%E5%80%99%EF%BC%8C%E4%BD%A0%E9%9C%80%E8%A6%81%E4%BA%86%E8%A7%A3%E7%9A%84%E4%B8%80%E5%88%87/)
8989

9090

91-
[1]: https://github.com/CharonChui/AndroidNote/blob/master/SourceAnalysis/InstantRun%E8%AF%A6%E8%A7%A3.md "InstantRun详解"
91+
[1]: ./SourceAnalysis/InstantRun%E8%AF%A6%E8%A7%A3.md "InstantRun详解"
9292

9393

9494
---

AdavancedPart/3.热修复_addAssetPath不同版本区别原因(三).md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -384,7 +384,7 @@ const ResTable* AssetManager::getResTable(bool required) const
384384

385385
也就是说在Android5.0及以上的系统中native层的addAssetPath方法会再调用appendPathToResTable去解析,所以在5.0及以上系统通过反射调用addAssetPath方法就不会有问题。
386386

387-
解决方案就是根据Google [Instant Run](https://github.com/CharonChui/AndroidNote/blob/master/SourceAnalysis/InstantRun%E8%AF%A6%E8%A7%A3.md)实现的原理:创建一个新的AssetManager,然后加入完整的新资源包,替换掉原有的AssetManager。
387+
解决方案就是根据Google [Instant Run](./SourceAnalysis/InstantRun%E8%AF%A6%E8%A7%A3.md)实现的原理:创建一个新的AssetManager,然后加入完整的新资源包,替换掉原有的AssetManager。
388388

389389
具体可参考:[深度理解Android InstantRun原理以及源码分析](https://blog.csdn.net/nupt123456789/article/details/51828701)中的`2.2 monkeyPatchExistingResources`部分
390390

AdavancedPart/Android WorkManager.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -156,7 +156,7 @@ public final class PeriodicWorkRequest extends WorkRequest {
156156

157157

158158
到了这里突然有了一个大胆的想法。看到没有它能保证任务的执行。
159-
我们之前写过一篇文章[Android卸载反馈](https://github.com/CharonChui/AndroidNote/blob/master/AdavancedPart/Android%E5%8D%B8%E8%BD%BD%E5%8F%8D%E9%A6%88.md)
159+
我们之前写过一篇文章[Android卸载反馈](./AdavancedPart/Android%E5%8D%B8%E8%BD%BD%E5%8F%8D%E9%A6%88.md)
160160
里面用到了`c`中的`fork`来保证存活,达到常驻内存的功能,如果`PeriodicWorkRequest`的最小间隔时间比较短不是15分钟的话,那这里是不是也可以用`WorkManager`来实现? 好了,不说了。
161161

162162

AdavancedPart/Android卸载反馈.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ void Java_com_charon_uninstallfeedback_MainActivity_initUninstallFeedback(
132132
有关如何在[Android Stuido中进行ndk开发请看][1]。
133133
134134
135-
[1]: https://github.com/CharonChui/AndroidNote/blob/master/AndroidStudioCourse/AndroidStudio%E4%B8%AD%E8%BF%9B%E8%A1%8Cndk%E5%BC%80%E5%8F%91.md "Android Stuido中进行ndk开发"
135+
[1]: ./AndroidStudioCourse/AndroidStudio%E4%B8%AD%E8%BF%9B%E8%A1%8Cndk%E5%BC%80%E5%8F%91.md "Android Stuido中进行ndk开发"
136136
137137
---
138138

AdavancedPart/Android开发中的MVP模式详解.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -591,7 +591,7 @@ public void getTask(@NonNull final String taskId, @NonNull final GetTaskCallback
591591

592592

593593

594-
[1]: https://github.com/CharonChui/AndroidNote/blob/master/JavaKnowledge/MVC%E4%B8%8EMVP%E5%8F%8AMVVM.md "MVC、MVP、MVVM介绍"
594+
[1]: ./JavaKnowledge/MVC%E4%B8%8EMVP%E5%8F%8AMVVM.md "MVC、MVP、MVVM介绍"
595595

596596
---
597597

AdavancedPart/屏幕适配之百分比方案详解.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
屏幕适配之百分比方案详解
22
===
33

4-
`Android`设备碎片化十分严重,在开发过程中的适配工作也非常很繁琐,有关屏幕适配的介绍请看之前的文章[屏幕适配](https://github.com/CharonChui/AndroidNote/blob/master/BasicKnowledge/%E5%B1%8F%E5%B9%95%E9%80%82%E9%85%8D.md)
4+
`Android`设备碎片化十分严重,在开发过程中的适配工作也非常很繁琐,有关屏幕适配的介绍请看之前的文章[屏幕适配](./BasicKnowledge/%E5%B1%8F%E5%B9%95%E9%80%82%E9%85%8D.md)
55

66
最近看到`DrawerLayout``support v4`中提供的类,想到对`google`提供的这些支持库,自己一点都不熟悉,想着看看`Google`提供的支持库都有什么内容。结果看着看着在最后忽然看到了`Percent Support Library`。寻思怎么还百分比呢?仔细一看介绍,我擦,真是太有用了。
77
> Percent Support Library

BasicKnowledge/Android动画.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -378,7 +378,7 @@ void exitReveal() {
378378

379379
```
380380

381-
有关如何提高动画性能请看:[通过Hardware Layer提高动画性能](https://github.com/CharonChui/AndroidNote/blob/master/Android%E5%8A%A0%E5%BC%BA/%E9%80%9A%E8%BF%87Hardware%20Layer%E6%8F%90%E9%AB%98%E5%8A%A8%E7%94%BB%E6%80%A7%E8%83%BD.md)
381+
有关如何提高动画性能请看:[通过Hardware Layer提高动画性能](./Android%E5%8A%A0%E5%BC%BA/%E9%80%9A%E8%BF%87Hardware%20Layer%E6%8F%90%E9%AB%98%E5%8A%A8%E7%94%BB%E6%80%A7%E8%83%BD.md)
382382

383383
---
384384

Dagger2/1.Dagger2简介(一).md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ Dagger2简介(一)
77
88
`Dagger`是一个依赖注入(`Dependency Injection`,简称`DI`)框架,`butterknife`也是一个依赖注入框架。但是`Dagger2``Butterknife`更强大的多,它的主要作用,就是对象的管理,其目的是为了降低程序耦合。
99

10-
有关注解和`ButterKnife`的解析请看之前的文章:[注解使用](https://github.com/CharonChui/AndroidNote/blob/master/AdavancedPart/%E6%B3%A8%E8%A7%A3%E4%BD%BF%E7%94%A8.md)[ButterKnife源码解析](https://github.com/CharonChui/AndroidNote/blob/master/SourceAnalysis/butterknife%E6%BA%90%E7%A0%81%E8%AF%A6%E8%A7%A3.md)
10+
有关注解和`ButterKnife`的解析请看之前的文章:[注解使用](./AdavancedPart/%E6%B3%A8%E8%A7%A3%E4%BD%BF%E7%94%A8.md)[ButterKnife源码解析](./SourceAnalysis/butterknife%E6%BA%90%E7%A0%81%E8%AF%A6%E8%A7%A3.md)
1111

1212
那么神马是依赖注入,其实我们一直在用:
1313

@@ -65,10 +65,10 @@ public class ClassA {
6565
说了这么久,也不知道到底这货有什么用,这里举个例子,比如有个类`A`,他的构造函数需要传入`B,C`;然后代码里有10个地方实例化了`A`,那如果功能更改,`A`的构造函数改成了只有`B`,这个时候,你是不是要去这10个地方一个一个的改?如果是100个地方,你是不是要吐血?!如果采用`dagger2`,这样的需求只需要改1-2个地方。这是真的吗?听起来好像挺牛逼的样子。
6666

6767

68-
也有人怀疑`Dagger2`利用注解是不是采用了反射,会影响性能,这个问题其实在之前的文章[ButterKnife源码解析](https://github.com/CharonChui/AndroidNote/blob/master/SourceAnalysis/butterknife%E6%BA%90%E7%A0%81%E8%AF%A6%E8%A7%A3.md)就已经介绍过了。`Dagger2`、`ButterKnife`这类依赖注入框架都已经采用了`apt`代码自动生成技术,其注解是停留在编译时,可以不用考虑性能的问题。
68+
也有人怀疑`Dagger2`利用注解是不是采用了反射,会影响性能,这个问题其实在之前的文章[ButterKnife源码解析](./SourceAnalysis/butterknife%E6%BA%90%E7%A0%81%E8%AF%A6%E8%A7%A3.md)就已经介绍过了。`Dagger2`、`ButterKnife`这类依赖注入框架都已经采用了`apt`代码自动生成技术,其注解是停留在编译时,可以不用考虑性能的问题。
6969

7070

71-
下一篇:[2.Dagger2入门demo(二)](https://github.com/CharonChui/AndroidNote/blob/master/Dagger2/2.Dagger2%E5%85%A5%E9%97%A8demo(%E4%BA%8C).md)
71+
下一篇:[2.Dagger2入门demo(二)](./Dagger2/2.Dagger2%E5%85%A5%E9%97%A8demo(%E4%BA%8C).md)
7272

7373
---
7474

Dagger2/2.Dagger2入门demo(二).md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -264,7 +264,7 @@ public class CoffeeApp {
264264
}
265265
```
266266

267-
下一篇:[3.Dagger2入门demo扩展(三)](https://github.com/CharonChui/AndroidNote/blob/master/Dagger2/3.Dagger2%E5%85%A5%E9%97%A8demo%E6%89%A9%E5%B1%95(%E4%B8%89).md)
267+
下一篇:[3.Dagger2入门demo扩展(三)](./Dagger2/3.Dagger2%E5%85%A5%E9%97%A8demo%E6%89%A9%E5%B1%95(%E4%B8%89).md)
268268

269269
---
270270

0 commit comments

Comments
 (0)