0

以前の質問で、「 Facebook のプロフィール写真をダウンロードする方法」を尋ねたところ、「 AsyncTask を使用してダウンロードし、アプリのディスク領域に保存する」という回答が得られました。

phonegap でビューを作成するために、sencha touch (Java スクリプトと HTML に関するすべて) を使用しています。私はウェブから(このURLからhttps://graph.facebook.com/username/picture)画像をダウンロードする必要があります。

というわけで、AsyncTask を学習していたとき、 Activity xml を使用してビュー (つまり、ボタン、パネルなど) を作成しなかったため、「AsyncTask を sencha android アプリケーションで使用できますか? 」という疑問がありました。

sencha touch アプリケーション (Android) で Web から画像をダウンロードする他のソリューションはありますか?

ソリューションの更新

@Lukas Kが言ったように、以下のFacebook APIを使用してプロフィール写真のURLとPhonegapファイルApiを取得し、写真をダウンロードしました。

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

2 に答える 2

1

次のように、sencha の遅延タスクを使用できます。

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

これにより、100ms 後にイメージのダウンロードが開始されます。これがあなたのやりたいことだといいのですが、そうでない場合は、関数の遅延タスクとして何でもしてください。

于 2013-01-21T14:51:56.767 に答える
1

base64 に変換して localStorage に保存できます。ただし、LocalStorage の容量は 5MB に制限されています。制限に達すると、デバイスはユーザーにさらにスペースを与えるように求めます。

Sencha Touch に加えて phonegap を使用していますか? Phonegap は、写真を保存できる電話のファイル システムへのアクセスを提供します。

Phonegap ファイル API: http://docs.phonegap.com/en/2.3.0/cordova_file_file.md.html#File

于 2013-01-22T13:06:06.597 に答える