相关疑难解决方法(0)

如何清除缓存Android

我需要找到一种方法如何清除我的应用程序存储在缓存中的数据.基本上我使用Fedor(在ListView中的图像延迟加载)惰性列表实现,我想在我加载例如100个图像时自动清除缓存.任何想法怎么做?

编辑: 代码:

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    list=(ListView)findViewById(R.id.list);
    adapter=new LazyAdapter(this, mStrings);
    list.setAdapter(adapter);

    deleteCache(this);
    adapter.notifyDataSetChanged();


}

public static void deleteCache(Context context) {
    try {
        File dir = context.getCacheDir();
        if (dir != null && dir.isDirectory()) {
            deleteDir(dir);
        }
    } catch (Exception e) {}
}

public static boolean deleteDir(File dir) {
    if (dir != null && dir.isDirectory()) {
        String[] children = dir.list();
        for (int i = 0; i < children.length; i++) {
            boolean success = deleteDir(new …
Run Code Online (Sandbox Code Playgroud)

android caching list lazy-evaluation clear

16
推荐指数
1
解决办法
2万
查看次数

如何通过代码清除应用程序的数据缓存

我想清除正在增加的应用程序的数据缓存程序,现在我正在清除Settings-> Applications-> Manage Application-> My Application-> Clear Cache.

但我想通过程序化做,请帮助我.

android

7
推荐指数
2
解决办法
2万
查看次数

Android HTTP请求在模拟器中工作但不在磨损设备上

我正在制作一个简单的Android Wear应用来控制我的恒温器,我正在用Volley发送POST请求来控制它们.Android Wear模拟器中的一切都运行良好(请求有效),但是,当应用程序在我的Moto 360上加载时,凌空请求被调用,但总是超时.

为什么我的截击请求会在我的手表失败但是在模拟器上工作?其他应用程序的请求在我的手表上成功(例如,内置天气应用程序可以在大约3秒内加载天气数据).而且,最奇怪的部分:我的应用程序在我的手表上工作(成功发出截击请求),并且,在我从Android Studio安装到我的手表大约一天之后,它突然停止加载数据,原因并非明显.

到目前为止我尝试过的:

  • 我已经请求了我的互联网许可manifest.xml.
  • 我已将超时时间增加到30秒(请参阅下面的代码),这并没有改变任何内容.
  • 我试过通过蓝牙将我的计算机和模拟器连接到手机的连接上(将我的物理手表的蓝牙连接复制到我的手机上),模拟器仍然成功地提出请求(虽然延迟了两秒),排除了蓝牙太慢的可能性.
  • 我确保API级别足够低,以便我的Marshmallow运行手表(我的手表和应用程序都是API级别23).
  • 在我使用恒温器数据向公司服务器发出请求之前,我尝试向Google做一个快速测试请求,当Google请求在模拟器中返回网站的HTML代码时,它会在我的手表上超时(请求启动后30秒) .
  • 我尝试将一些虚拟数据放入应该加载的回收器视图数据中,并且虚拟数据确实显示出来,排除了回收器视图被破坏.
  • 我从手表中删除了该应用并重新安装了该应用,并从手机中删除了该手机,重新安装并再次将其删除,但都无济于事.
  • 与Google支持人员进行长时间的聊天并没有产生任何意义.

这是我的代码(来自我的主视图的适配器):

public void refreshThermostatsRecyclerView(RequestQueue queue) {
    String url = "https://mobile.skyport.io:9090/login"; // login call to the thermostats server Skyport
     Log.w("myApp", "Starting /login call to Skyport"); // this gets called on simulator and watch
     // Request a string response from the provided URL.
     StringRequest stringRequest = new StringRequest(Request.Method.POST, url,
 Response.Listener<String>() {
       @Override
       public void onResponse(String response) {
           // …
Run Code Online (Sandbox Code Playgroud)

java android android-volley wear-os

5
推荐指数
1
解决办法
1834
查看次数

Android中的内存缓存

我试图将一个视频存储在内存缓存中,视频完成后将其从缓存中删除.在播放期间,无法从缓存中删除视频文件.

android

3
推荐指数
1
解决办法
2万
查看次数