린클라우드 데이터 스토리지
Android 프로젝트의 libs 디렉토리로 가져옵니다. Application을 확장하는 클래스를 만듭니다. oncreate 메소드를 다시 작성하고 ID와 키를 정의하고 AVOSCloud의 initialize 메소드를 호출하여 this, id, key를 전달합니다. AVOSCloud의 useAVCloudCN 메소드를 추가할 수 있습니다.
Application 클래스는 4개의 구성 요소와 동일해야 함을 기억하십시오! ! 등록이 필요합니다.
LeanCloud를 사용하려면 두 가지 권한이 필요합니다.
android:name="android.permission.ACCESS_NETWORK_STATE" />
android:name="android.permission.INTERNET" />
LeanCloud 데이터 저장:
AVObject avObject = new AVObject("test");
avObject.put("key1",key1);
avObject.put("key2",key2);
avObject.saveInBackground(new SaveCallback() {
@Override
public void done(AVException e) {
if (e == null) {
Toast.makeText(AddActivity.this, "数据保存成功!", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(AddActivity.this, "数据保存失败!e:"+e, Toast.LENGTH_SHORT).show();
}
}
});
새 AVObject를 만들고 테이블 이름을 전달합니다. put 메소드를 사용하여 저장할 키-값 쌍을 전달하십시오.마지막으로 saveInBackground 메서드를 호출하여 저장하고 콜백을 전달합니다. 예외 e가 비어 있으면 데이터가 성공적으로 저장되었음을 의미합니다.
LeanCloud 데이터 쿼리:
AVQuery avQuery = new AVQuery<>("test");
avQuery.findInBackground(new FindCallback() {
@Override
public void done(List list, AVException e) {
ArrayList querylist = new ArrayList();
for (AVObject obj : list){
QueryItemBean item = new QueryItemBean();
item.setValue1(obj.getString("key1"));
item.setValue2(obj.getString("key2"));
querylist.add(item);
}
lv.setAdapter(new QueryListAdapter(getApplicationContext(),R.layout.query_list,querylist));
새 AVQuery가 쿼리할 테이블 이름을 전달합니다. findInBackground 메서드를 호출하여 찾기 콜백을 전달합니다.여기서 조회된 데이터는 ListView에 표시되는데 ListView는 데이터 소스와 어댑터가 필요하기 때문에 value1과 value2의 get 및 set 메소드를 사용하여 Bean 객체를 생성한다.
ArrayList를 만들고 각 고급 for 루프의 데이터를 추가하고 마지막으로 ListView에 할당하여 데이터를 표시합니다.
ps: ListView용 어댑터를 생성할 때 컨텍스트, 레이아웃 파일 ID 및 목록 데이터 소스를 전달할 ArrayList 생성자를 상속합니다.
AVObject
다음 데이터 유형이 지원됩니다.+
boolean bool = true;
int number = 2015;
String string = number + " 年度音乐排行";
Date date = new Date();
byte[] data = "短篇小说".getBytes();
ArrayList<Object> arrayList = new ArrayList<>();
arrayList.add(number);
arrayList.add(string);
HashMap<Object, Object> hashMap = new HashMap<>();
hashMap.put("数字", number);
hashMap.put("字符串", string);
AVObject object = new AVObject("DataTypes");
object.put("testBoolean", bool);
object.put("testInteger", number);
object.put("testDate", date);
object.put("testData", data);
object.put("testArrayList", arrayList);
object.put("testHashMap", hashMap);
object.saveInBackground();
+
또한 HashMap 및 ArrayList는 중첩을 지원하므로 보다 구조화된 데이터를 하나로 저장할 수 있습니다
AVObject
.+
AVObject
에서 byte[]
를 사용하여 이미지나 전체 파일과 같은 이진 데이터의 큰 블록을 저장하지 않는 것이 좋습니다. 각AVObject
의 크기는 128KB를 초과할 수 없습니다. 더 많은 데이터를 저장해야 하는 경우AVFile
를 사용하는 것이 좋습니다.+
린클라우드 문서: https://leancloud.cn/docs/leanstorage_guide-android.html
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.