Closed TakWolf closed 6 years ago
https://github.com/TakWolf/CNode-Material-Design/blob/1.4.0/app/src/main/java/org/cnodejs/android/md/util/FormatUtils.java#L72
这种自增策略是错误的。
最开始这样实现的目的是,希望可以共用部分 RequestCode,减少定义代码。 但是 RequestCode 必须为常量,这种使用动态生成的值(虽然也是 static final),有可能因为应用回收后恢复,而导致值发送变化,从而导致判断逻辑错误。
最佳实践应该是:除了部分全局通用的值外,RequestCode 应该由启动方提供,并由其自己管理分配。
fix at https://github.com/TakWolf/CNode-Material-Design/commit/4aee8c4295610c80f3482d71d64f19608fc7e2b8
https://github.com/TakWolf/CNode-Material-Design/blob/1.4.0/app/src/main/java/org/cnodejs/android/md/util/FormatUtils.java#L72
这种自增策略是错误的。
最开始这样实现的目的是,希望可以共用部分 RequestCode,减少定义代码。 但是 RequestCode 必须为常量,这种使用动态生成的值(虽然也是 static final),有可能因为应用回收后恢复,而导致值发送变化,从而导致判断逻辑错误。
最佳实践应该是:除了部分全局通用的值外,RequestCode 应该由启动方提供,并由其自己管理分配。