私のアプリケーションでは、インターネットからフィードを取得しています。フィードには、テキスト情報と画像が含まれています。画像をLruCacheに保存する必要があるため、 Google 開発者の Web サイトを参照し、そこに示されているように実装しました。この実装は正常に機能します。しかし、私のアプリケーションは API レベル 10 からサポートしているため、エラー割り当てキャッシュ サイズが表示されます。bitmap.getByteCount() を使用しているキャッシュ サインのサイズを宣言できません。追加@TargetApi(Build.VERSION_CODES.HONEYCOMB_MR1)
の表記が表示され、Android 2.3 アプリケーションでアプリケーションを開くと停止します応答する
コード
import android.support.v4.util.LruCache;
private LruCache<String,Bitmap> mMemoryCache;
onCreate(Bundle savedInstanceState){
manageCache();
}
private void manageCache() {
mMemoryCache = new LruCache<String, Bitmap>(mCacheSize) {
@TargetApi(Build.VERSION_CODES.HONEYCOMB_MR1)
@Override
protected int sizeOf(String key, Bitmap bitmap) {
return bitmap.getByteCount() / 1024;
}
};
}
どうすればAPIレベル10もサポートできますか?何か方法はありますか?