2017-04-08 38 views

回答

0

創建到Firebase

與您Firebase的應用程序設置,去Xcode和開放GroceryListTableViewController.swift。其中屬性定義,添加以下內容:

let ref = FIRDatabase.database().reference(withPath: "grocery-items") 

這將建立使用提供的路徑,你Firebase數據庫的連接。在文檔中,這些Firebase屬性被稱爲引用,因爲它們引用您的Firebase數據庫中的某個位置。

簡而言之,此屬性允許將數據保存並同步到給定位置。

您會注意到基本URL未被使用。相反,它使用雜貨項目的子路徑。 Firebase數據庫是一個JSONNoSQL數據庫,所以所有的數據存儲爲JSON

JSON是一個分層的鍵值數據結構 - 鍵是指可以包含指向其他對象的值的對象。數據只是一個關鍵值對的樹。

使用Firebase,鍵是一個URL,值是可以是數字,字符串,布爾值或對象的任意數據。

0

您可以使用下面的代碼,以達到您的要求:

private DatabaseReference mDatabase; 
mDatabase = FirebaseDatabase.getInstance().getReference(); 
UserData userData = new UserData(); 
Map<String, Object> postValues = userData.toMap(); 
childUpdates.put("/Users/" + UniqueId, postValues); 
mDatabase.updateChildren(childUpdates); 

這裏,用戶數據是一個模型類:

public class UserData { 

public String getLat() { 
    return Lat; 
} 

public void setLat(String Lat) { 
    this.Lat= Lat; 
} 


    public String getLng() { 
    return Lng; 
} 

public void setLng(String Lng) { 
    this.Lng= Lng; 
} 
public String Lat; 

公共字符串LNG;

public UserData (String Lat, String Lng) { 
    this.Lng= Lng; 
    this.Lat= Lat; 
} 

@Exclude 
public Map<String, Object> toMap() { 
    HashMap<String, Object> result = new HashMap<>(); 
    result.put("Lat", Lat); 
    result.put("Lng", Lng); 
    return result; 
} 

}

希望,這會有所幫助。

+0

謝謝!這有很大幫助。 –

+0

請問,答案是肯定的。 –

+0

完成。另外,你能解釋一下updateChildren的功能嗎? –

0
BHelper db =new DBHelper();// your dbHelper 
ContentValues values = new ContentValues(); 
values.put("firstName","Ahmad"); 
values.put("lastName","Aghazadeh"); 
long insertedId= db.getSQLiteDatabase().insert("user", "", values) ; 


String sql = "INSERT INTO [user](firstName,lastName) VALUES (\"Ahmad\",\"Aghazadeh\"); select last_insert_rowid()"; 
DBHelper itemType =new DBHelper();// your dbHelper`enter code here` 
c = db.rawQuery(sql, null); 
if (c.moveToFirst()) 
    result = c.getLong(0);