URL에서 이미지를 검색했습니다. 이 이미지를 SQLite 데이터베이스에 삽입하고 싶습니다. 인코딩 후에 삽입하려고 시도했지만 스팅 값이 저장되고 있습니다. 누구든지 SQLite 데이터베이스에 그림을 삽입하는 방법을 제안 할 수 있습니까? 여기 내 코드는 다음과 같습니다 데이터베이스에 이미지를 넣기안드로이드에 sqlite 데이터베이스에 이미지를 삽입하는 방법?
Login.java
final String t1=user.getId();
final String t2=user.getName();
AsyncTask<Void, Void, Bitmap> t = new AsyncTask<Void, Void, Bitmap>(){
@Override
protected Bitmap doInBackground(Void... arg0) {
// TODO Auto-generated method stub
Bitmap bm = null;
try {
URL aURL = new URL("http://graph.facebook.com/"+t1+"/picture?type=small");
URLConnection conn = aURL.openConnection();
conn.setUseCaches(true);
conn.connect();
InputStream is = conn.getInputStream();
BufferedInputStream bis = new BufferedInputStream(is);
bm = BitmapFactory.decodeStream(bis);
bis.close();
is.close();
}
catch (IOException e) {
e.printStackTrace();
}
return bm;
}
protected void onPostExecute(Bitmap bm){
//Drawable drawable = new BitmapDrawable(getResources(), bm);
Bitmap b1=bm;
ByteArrayOutputStream baos = new ByteArrayOutputStream();
b1.compress(Bitmap.CompressFormat.JPEG, 100, baos);
byte[] b = baos.toByteArray();
// Log.w("bit",""+drawable);
String encodedImage = Base64.encodeToString(b,Base64.DEFAULT);
fbdetails.put("fbname",t2);
fbdetails.put("fbuserid",t1);
fbdetails.put("fbpic",encodedImage);
db.insertme(fbdetails);
}
};
t.execute();
}
});
Databasehandler.java
public void insertme(HashMap<String, String> queryValues) {
SQLiteDatabase database = this.getWritableDatabase();
ContentValues values = new ContentValues();
values.put("fbname", queryValues.get("fbname"));
values.put("fbuserid", queryValues.get("fbuserid"));
values.put("fbpic", queryValues.get("fbpic"));
database.insert("me", null, values);
database.close();
}
확인이 링크, 진드기 도움이 될위한 U http://stackoverflow.com/questions/17448405/save-image-in-sqlite- 데이터베이스에서 서버-URL http://stackoverflow.com/questions/18798189/adding-image-to-android-sqlite-database http://stackoverflow.com/questions/17482575/ save-image-from-url-to- sqlite-database –