protected override Android.Graphics.Bitmap RunInBackground(params Profile[] @params) { String imageUrl = @params[0].imageUri; String userId = @params[0].ID; Bitmap image = null; bool AvatarIsDefault = @params[0].AvatarIsDefault; if (imageUrl == null) { return(null); } try { byte[] data = OperationWithBitmap.Retrieve(context, userId); if (data == null) { image = OperationWithBitmap.GetFromUrl(imageUrl); var bitmapData = OperationWithBitmap.ConvertToByteArray(image); OperationWithBitmap.Cache(context, bitmapData, userId); } else { image = OperationWithBitmap.ConvertFromByteArray(data); } } catch (Exception e) { Console.Out.WriteLine(e.Message); } return(image); }
protected override Java.Lang.Void RunInBackground(params object[] @params) { if (@params[0].GetType() == typeof(HistoryListItem)) { HistoryListItem historyItem = @params[0] as HistoryListItem; UsersDatabase db = new UsersDatabase(); UserListItem user = db.GetUserByID(historyItem.fromUserID); try { byte[] data = OperationWithBitmap.Retrieve(context, user.ID); if (data == null) { Bitmap curImage = OperationWithBitmap.GetFromUrl(user.url); //user.AvatarIsDefault = OperationWithBitmap.isDefault(curImage); //if (!user.AvatarIsDefault) //{ historyItem.image = curImage; //} var bitmapData = OperationWithBitmap.ConvertToByteArray(historyItem.image); OperationWithBitmap.Cache(context, bitmapData, historyItem.ID); } else { //if (!user.AvatarIsDefault) historyItem.image = OperationWithBitmap.ConvertFromByteArray(data); } } catch (Exception e) { Console.Out.WriteLine(e.Message); } } else if (@params[0].GetType() == typeof(UserListItem)) { UserListItem user = @params[0] as UserListItem; bool AvatarIsDefault = user.AvatarIsDefault; try { byte[] data = OperationWithBitmap.Retrieve(context, user.ID); if (data == null) { Bitmap curImage = OperationWithBitmap.GetFromUrl(user.url); //user.AvatarIsDefault = OperationWithBitmap.isDefault(curImage); //if (!user.AvatarIsDefault) //{ user.image = curImage; // UsersDatabase db = new UsersDatabase(); // db.UpdateAvatarState(user); //} var bitmapData = OperationWithBitmap.ConvertToByteArray(user.image); OperationWithBitmap.Cache(context, bitmapData, user.ID); } else { //if (!user.AvatarIsDefault) user.image = OperationWithBitmap.ConvertFromByteArray(data); } } catch (Exception e) { Console.Out.WriteLine(e.Message); } } else { throw new Exception("Wrong ItemList type."); } return(null); }