Tôi đang sử dụng Geofire để thực hiện một vòng trònTrình truy cập trong một khu vực nhất định. Tuy nhiên, với các quan sát viên của tôi, tôi đã lấy lại vị trí, với vị trí tôi cũng lấy lại "Sử dụng chỉ mục không xác định. Hãy xem xét thêm" .indexOn ":" g ""Sử dụng chỉ mục không xác định. Xem xét thêm ".indexOn": "g"
db của tôi cho geofire của tôi trông như thế này karmadots/geofire/{events}
"rules": {
"karmadots": {
".read": true,
".write": true,
"geofire": {
"$events": {
".indexOn": ["g"]
}
}
}
tôi cũng đã thử:
"rules": {
"karmadots": {
".read": true,
".write": true,
"geofire": {
".indexOn": ["g"]
}
}
}
Cả hai không làm cho thông điệp đi. Có điều gì khác mà tôi có thể thử đọc hoặc thử làm ví dụ không?
Cảm ơn sự giúp đỡ.
EDIT:
con đường của tôi là xxxxx.firebaseio.com/karmadots/geofire/{keys}
Đây là cách tôi truy vấn:
func setupListeners(query: GFQuery){
// Event is in initial area or entered area
query.observeEventType(GFEventTypeKeyEntered, withBlock: { (key: String!, location: CLLocation!) in
println("Key '\(key)' entered the search area and is at location '\(location)'\n")
})
// Event left area
query.observeEventType(GFEventTypeKeyExited, withBlock: { (key: String!, location: CLLocation!) in
println("Key '\(key)' left the search area\n")
})
// Event moved but is still in area
query.observeEventType(GFEventTypeKeyMoved, withBlock: { (key: String!, location: CLLocation!) in
println("Key '\(key)' moved in the search area and is at location '\(location)'\n")
})
}
Cách thức sau có vẻ chính xác hơn. Nhưng chỉ để chắc chắn, bạn có thể chỉ cho chúng tôi truy vấn bạn chạy không? Tốt hơn là hiển thị toàn bộ đường dẫn từ gốc đến các sự kiện thực tế được sử dụng trong truy vấn geofire. –
@FrankvanPuffelen Tôi đã chỉnh sửa bài đăng gốc và bao gồm truy vấn. Không chắc chắn nếu đó là những gì bạn có nghĩa là bởi toàn bộ con đường của tôi. – jshah
Hmm ... khi tôi chạy truy vấn Firebase thông thường trên đó, tôi sẽ không gặp lỗi: 'Firebase mới ('https://karmadots.firebaseio.com/karmadots/geofire/') .orderByChild ('g') .startAt ("9q8yywcp39"). EndAt ("9q8yywcp39"). LimitToFirst (3) .once ('giá trị', hàm (s) {console.log (s.val());}) '. Đó chính là những gì GeoFire làm. –