我制作了一个应用程序,我正在处理更新,在旧版本中我硬编码了这样的文件路径
"/data/data/my.app.here/troll"
所以现在我正在尝试更新,我正在尝试使用与
类似的东西Context.getFilesDir()
但返回
/data/user/0/my.app.here/files
应用信息存储在troll文件中,当我推送更新时,我不想使用其他路径让他们重新开始他们的信息。解决这种情况的最佳方法是什么?
答案 0 :(得分:2)
有人可以告诉我解决这种情况的最佳方法吗?
在File
返回的getFilesDir()
上调用troll
以获取其父目录。您的/data/user/0/
文件应该在那里。这不是放置文件的好地方,所以YMMV。
如果您关心的是/data/data/
,则会由Android处理,并且当主要用户是运行您应用的用户时,应该映射到Future<Null> checkIsLogin() async {
String _token = "";
// If token exist already, then HomePage
SharedPreferences prefs = await SharedPreferences.getInstance();
_token = prefs.getString("token");
print('get token from prefs: ' + _token);
if (_token != "" && _token != null) {
// already login
print("alreay login.");
isLogin = true;
}
}
void main() {
App.init();
// if we have token then go to HomePage directly otherwise go to LoginPage.
Widget _defaultHome = new LoginPage();
checkIsLogin();
if (isLogin) {
_defaultHome = new HomePage();
}
runApp(new MaterialApp(
debugShowCheckedModeBanner: false,
theme: globalThemeData,
home: _defaultHome
));
}
。