处理 SonarQube 问题:

双重检查锁方式实现的单例,改为使用静态内部类方式
This commit is contained in:
lyr
2021-12-21 16:51:44 +08:00
parent 27f14ac914
commit 9feb4e774a
330 changed files with 828 additions and 885 deletions

View File

@ -261,7 +261,7 @@ public class MainActivity extends BaseActivity {
// checkTinkerPath(); // 看情况是否需要显示补丁弹窗
// 必须放在这里,否则会导致获取 baseActivity 不是本应用包名
DownloadManager.getInstance(this).initDownloadService();
DownloadManager.getInstance().initDownloadService();
ReservationRepository.refreshReservations();
@ -299,7 +299,7 @@ public class MainActivity extends BaseActivity {
// 耗时操作
AppExecutor.getIoExecutor().execute(() -> {
// 上传数据
DataCollectionManager.getInstance(getApplicationContext()).upload();
DataCollectionManager.getInstance().upload();
// 获取默认配置
if (Config.getSettings() == null) {
@ -338,7 +338,7 @@ public class MainActivity extends BaseActivity {
@SuppressLint("CheckResult")
private void getTeenagerMode() {
RetrofitManager.getInstance(HaloApp.getInstance().getApplication())
RetrofitManager.getInstance()
.getApi().getTeenagerMode(HaloApp.getInstance().getGid())
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
@ -373,7 +373,7 @@ public class MainActivity extends BaseActivity {
.flatMap((Function<List<String>, SingleSource<ResponseBody>>) strings -> {
requestMap.put("cache_video_ids", strings);
RequestBody body = ExtensionsKt.toRequestBody(requestMap);
return RetrofitManager.getInstance(HaloApp.getInstance())
return RetrofitManager.getInstance()
.getApi()
.postAttentionVideoRecord(UserManager.getInstance().getUserId(), body);
})
@ -391,7 +391,7 @@ public class MainActivity extends BaseActivity {
//查询到模拟器游戏表中逻辑删除的数据后,删除服务器中的记录
@SuppressLint("CheckResult")
private void deleteSimulatorGame() {
SimulatorGameDao dao = AppDatabase.getInstance(HaloApp.getInstance()).simulatorGameDao();
SimulatorGameDao dao = AppDatabase.getInstance().simulatorGameDao();
dao.getSimulatorGameByDeleted()
.subscribeOn(Schedulers.io())
.subscribe(new BiResponse<List<String>>() {
@ -642,7 +642,7 @@ public class MainActivity extends BaseActivity {
*/
private void redirectGameDetail(String packageName) {
String filterQuery = UrlFilterUtils.getFilterQuery("package", packageName, "type", "package_redirect");
RetrofitManager.getInstance(this).getApi().loadGameDataByPackageName(filterQuery)
RetrofitManager.getInstance().getApi().loadGameDataByPackageName(filterQuery)
.compose(observableToMain())
.subscribe(new Response<List<GameEntity>>() {
@Override
@ -698,7 +698,7 @@ public class MainActivity extends BaseActivity {
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0 && !mMainWrapperFragment.onHandleBackPressed()) {
DownloadEntity downloadEntity = null;
for (DownloadEntity entity : DownloadManager.getInstance(getApplicationContext()).getAllDownloadEntityExcludeSilentUpdate()) {
for (DownloadEntity entity : DownloadManager.getInstance().getAllDownloadEntityExcludeSilentUpdate()) {
if (entity.getStatus().equals(DownloadStatus.done)) {
if (PackageUtils.isInstalled(getApplicationContext(), entity.getPackageName())
&& (!entity.isPlugin()
@ -757,7 +757,7 @@ public class MainActivity extends BaseActivity {
@Override
public void finish() {
// 上传数据
DataCollectionManager.getInstance(getApplicationContext()).statClickData();
DataCollectionManager.getInstance().statClickData();
super.finish();
}
@ -878,7 +878,7 @@ public class MainActivity extends BaseActivity {
private void checkDevice() {
String content = DeviceUtils.getUserDevice(MainActivity.this).toString();
RequestBody body = RequestBody.create(MediaType.parse("application/json"), content);
RetrofitManager.getInstance(this).getApi().checkDevice(body)
RetrofitManager.getInstance().getApi().checkDevice(body)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Response<ResponseBody>() {