我可以在sencha应用程序中使用Android AsyncTask(Android)

时间:2013-01-21 09:58:50

标签: android android-asynctask sencha-touch sencha-touch-2

在我之前的question中,我问“如何下载Facebook个人资料图片”,我得到的答案是“使用AsyncTask下载并将其保存到您的应用中磁盘空间“。

我正在使用sencha touch(全部关于java脚本和html)来创建具有phonegap的视图。我需要从网上下载图片(来自此网址https://graph.facebook.com/username/picture)。

所以,当我学习AsyncTask时,我怀疑“我可以在sencha android应用程序中使用AsyncTask吗?”,因为我没有创建视图(我的意思是按钮,面板等..)使用活动xml。

还有其他解决方案可以在sencha touch application(Android)中从网上下载图片吗?

解决方案的更新

我使用facebook api下方获取个人资料图片网址和Phonegap文件Api下载图片@Lukas K说。

 FB.api('/'+fbusername+'/picture?redirect=false', function(response) {
      localStorage.fbpicurl = response.data.url;
     });

2 个答案:

答案 0 :(得分:1)

你可以像这样使用sencha的延迟任务:

        var task = Ext.create(
                'Ext.util.DelayedTask',
                function() {
                    Ext.getCmp("imageId").setSrc( 'https://graph.facebook.com/username/picture' );
                }
            );
        task.delay(100);

这将在100ms后开始下载图像。 我希望这是你想要做的事情,如果不是那么做任何延迟任务的功能。

答案 1 :(得分:1)

您可以将其转换为base64并将其存储在localStorage中。 但LocalStorage的空间限制为5MB。达到限制后,设备将提示用户提供更多空间。

除了Sencha Touch之外,你还使用phonegap吗? Phonegap可以访问手机的文件系统,您可以在其中存储图片。

Phonegap File Api:http://docs.phonegap.com/en/2.3.0/cordova_file_file.md.html#File