clean cache by type
This commit is contained in:
parent
bdf1b12034
commit
7caad393c2
|
@ -388,6 +388,28 @@ func setDownloadRunning(status bool) {
|
||||||
downloadRunning = status
|
downloadRunning = status
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func cleanNetworkCache() error {
|
||||||
|
err := network_cache.RemoveAll()
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
notifyExport("清理结束")
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func cleanImageCache() error {
|
||||||
|
notifyExport("清理图片缓存")
|
||||||
|
err := comic_center.RemoveAllRemoteImage()
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
notifyExport("清理图片文件")
|
||||||
|
os.RemoveAll(remoteDir)
|
||||||
|
utils.Mkdir(remoteDir)
|
||||||
|
notifyExport("清理结束")
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
func clean() error {
|
func clean() error {
|
||||||
var err error
|
var err error
|
||||||
notifyExport("清理网络缓存")
|
notifyExport("清理网络缓存")
|
||||||
|
@ -571,6 +593,10 @@ func FlatInvoke(method string, params string) (string, error) {
|
||||||
case "deleteViewLog":
|
case "deleteViewLog":
|
||||||
comic_center.DeleteViewLog(params)
|
comic_center.DeleteViewLog(params)
|
||||||
return "", nil
|
return "", nil
|
||||||
|
case "cleanNetworkCache":
|
||||||
|
return "", cleanNetworkCache()
|
||||||
|
case "cleanImageCache":
|
||||||
|
return "", cleanImageCache()
|
||||||
case "clean":
|
case "clean":
|
||||||
return "", clean()
|
return "", clean()
|
||||||
case "autoClean":
|
case "autoClean":
|
||||||
|
|
|
@ -360,6 +360,16 @@ class Method {
|
||||||
return GameInfo.fromJson(json.decode(data));
|
return GameInfo.fromJson(json.decode(data));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// 清理网络缓存
|
||||||
|
Future cleanNetworkCache() {
|
||||||
|
return _flatInvoke("cleanNetworkCache", "");
|
||||||
|
}
|
||||||
|
|
||||||
|
/// 清理图片缓存
|
||||||
|
Future cleanImageCache() {
|
||||||
|
return _flatInvoke("cleanImageCache", "");
|
||||||
|
}
|
||||||
|
|
||||||
/// 清理缓存
|
/// 清理缓存
|
||||||
Future clean() {
|
Future clean() {
|
||||||
return _flatInvoke("clean", "");
|
return _flatInvoke("clean", "");
|
||||||
|
|
|
@ -3,6 +3,7 @@ import 'dart:async';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:pikapi/basic/Channels.dart';
|
import 'package:pikapi/basic/Channels.dart';
|
||||||
import 'package:pikapi/basic/Method.dart';
|
import 'package:pikapi/basic/Method.dart';
|
||||||
|
import 'package:pikapi/screens/components/FitButton.dart';
|
||||||
import 'components/ContentLoading.dart';
|
import 'components/ContentLoading.dart';
|
||||||
|
|
||||||
// 清理
|
// 清理
|
||||||
|
@ -47,37 +48,59 @@ class _CleanScreenState extends State<CleanScreen> {
|
||||||
),
|
),
|
||||||
body: ListView(
|
body: ListView(
|
||||||
children: [
|
children: [
|
||||||
MaterialButton(
|
|
||||||
onPressed: () async {
|
|
||||||
try {
|
|
||||||
setState(() {
|
|
||||||
_cleaning = true;
|
|
||||||
});
|
|
||||||
await method.clean();
|
|
||||||
setState(() {
|
|
||||||
_cleanResult = "清理成功";
|
|
||||||
});
|
|
||||||
} catch (e) {
|
|
||||||
setState(() {
|
|
||||||
_cleanResult = "清理失败 $e";
|
|
||||||
});
|
|
||||||
} finally {
|
|
||||||
setState(() {
|
|
||||||
_cleaning = false;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
},
|
|
||||||
child: Container(
|
|
||||||
padding: EdgeInsets.all(20),
|
|
||||||
child: Text('清理'),
|
|
||||||
),
|
|
||||||
),
|
|
||||||
Container(
|
Container(
|
||||||
padding: EdgeInsets.all(8),
|
padding: EdgeInsets.all(8),
|
||||||
child: _cleanResult != "" ? Text(_cleanResult) : Container(),
|
child: _cleanResult != "" ? Text(_cleanResult) : Container(),
|
||||||
)
|
),
|
||||||
|
Container(
|
||||||
|
height: 50,
|
||||||
|
child: FitButton(
|
||||||
|
text: '清理网络缓存',
|
||||||
|
onPressed: () {
|
||||||
|
processCleanAction(method.cleanNetworkCache);
|
||||||
|
},
|
||||||
|
),
|
||||||
|
),
|
||||||
|
Container(
|
||||||
|
height: 50,
|
||||||
|
child: FitButton(
|
||||||
|
text: '清理图片缓存',
|
||||||
|
onPressed: () {
|
||||||
|
processCleanAction(method.cleanImageCache);
|
||||||
|
},
|
||||||
|
),
|
||||||
|
),
|
||||||
|
Container(
|
||||||
|
height: 50,
|
||||||
|
child: FitButton(
|
||||||
|
text: '清理全部缓存',
|
||||||
|
onPressed: () {
|
||||||
|
processCleanAction(method.clean);
|
||||||
|
},
|
||||||
|
),
|
||||||
|
),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Future processCleanAction(Future Function() action) async {
|
||||||
|
try {
|
||||||
|
setState(() {
|
||||||
|
_cleaning = true;
|
||||||
|
});
|
||||||
|
await action();
|
||||||
|
setState(() {
|
||||||
|
_cleanResult = "清理成功";
|
||||||
|
});
|
||||||
|
} catch (e) {
|
||||||
|
setState(() {
|
||||||
|
_cleanResult = "清理失败 $e";
|
||||||
|
});
|
||||||
|
} finally {
|
||||||
|
setState(() {
|
||||||
|
_cleaning = false;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue