là hệ thống có lưu giữ chúng hay tôi phải thêm lại chúng sau khi khởi động lại? Tôi không tìm thấy bất kỳ điều gì về điều đó trong tài liệu tại số https://developer.android.com/training/location/geofencing.htmlGeofences Android có còn lại khi khởi động lại không?
Trả lời
Geofences sẽ không tồn tại khi khởi động lại. Tôi đã thử nghiệm và bạn có thể tìm thấy mẫu here.
Bạn phải nghe lại BOOT_COMPLETED và thêm lại geofences.
Lưu ý: Nếu ứng dụng của bạn được cài đặt trên bên ngoài lưu trữ (thẻ SD), bạn sẽ không bao giờ nhận Boot Hoàn tất tác vụ. Vì vậy, bạn phải chỉ định android:installLocation="internalOnly"
trong số manifest tag
. Điều này là do thiết bị Android sẽ phát hành hành động BOOT_COMPLETED trước khi thiết lập bộ nhớ ngoài.
Bạn muốn lưu giữ dữ liệu nào? Đây có phải là vùng địa lý trong thiết bị của bạn hoặc vùng địa lý được API Vị trí Dịch vụ của Google Play lưu trữ không?
Tôi tin rằng thiết bị cần đăng ký một khu vực (được xác định bởi vĩ độ, kinh độ và bán kính) của mình cho Dịch vụ của Google Play (thông qua LocationClient). Bạn cũng cần phải cung cấp thời gian hết hạn, loại chuyển đổi bạn muốn được thông báo và Mục đích mà từ đó bạn sẽ được thông báo.
Khu vực này sẽ được lưu trữ (từ xa) không có trong ứng dụng của bạn. Khi nó vượt qua thời gian hết hạn, Dịch vụ Google Play sẽ tự động xóa nó. Bạn cũng có thể đặt nó là NEVER_EXPIRE. Nếu khu vực chưa hết hạn, Dịch vụ Google Play sẽ thông báo cho Ứng dụng của bạn (thông qua mục đích mà bạn gửi khi gọi điện cho các cuộc gọi bổ sung).
Nguồn của khu vực (vĩ độ, dài, bán kính) tùy thuộc vào việc triển khai của bạn.
cảm ơn, bạn có nguồn cho điều đó không? – ligi
Xem các tài liệu sau: http://developer.android.com/reference/com/google/android/gms/location/Geofence.Builder.html và [http://developer.android.com/reference/com/google /android/gms/location/LocationClient.html#addGeofences(java.util.List
Tôi vừa xem xét một ứng dụng mẫu GeofencingDetection khác. – ogramus
Tôi chưa tìm thấy bất kỳ tài liệu nào xác nhận điều này, nhưng các thử nghiệm của riêng tôi đã cho thấy rằng chúng không được duy trì trong quá trình khởi động lại.
thiết lập của tôi là như sau:
- Chạy ứng dụng
- Ứng dụng thiết lập giới hạn địa lý khác nhau trên khởi động đầu tiên chỉ như NEVER_EXPIRE
- ứng dụng Exit
- Sử dụng điện thoại tại các khu vực được đánh dấu bằng hàng rào
- Xác nhận hàng rào kích hoạt các mục đích đang chờ xử lý được gửi đến IntentService
- Rời khỏi khu vực
- Khởi động lại điện thoại
- Nhập lại khu vực
- Trong khi chờ ý định không được gửi đến IntentService
Nếu ai có thêm thông tin về vấn đề này từ một người nào đó tại Google xin vui lòng bình luận!
Bạn phải thêm lại geofences khi khởi động lại. Như tài liệu nói rằng geofences được loại bỏ khi khởi động lại. –
- 1. Nút quay lại Android không khởi động lại hoạt động?
- 2. Khởi động lại máy android
- 3. Khi nào khởi động lại và không tải lại Nginx?
- 4. Khởi động lại khi khởi động/Khởi động lại hành khách
- 5. Bộ khởi động phần còn lại trong Visual Studio 2010
- 6. Điện thoại Android khởi động lại khi gỡ cài đặt
- 7. Android Khởi động lại ứng dụng
- 8. C# .Net exe không đóng khi PC được khởi động lại, giữ cho máy không khởi động lại
- 9. div còn lại lấp đầy không gian ngang còn lại?
- 10. postgres, ubuntu cách khởi động lại dịch vụ khi khởi động? bị kẹt khi nhóm lại sau khi khởi động lại ví dụ
- 11. Khởi động lại Sidekiq
- 12. Nút quay lại Android không quay lại hoạt động trước
- 13. NDK của Android: Cách xóa mã gốc sau khi khởi động lại hoạt động?
- 14. Dịch vụ Windows sẽ không tự động khởi động sau khi khởi động lại
- 15. AppWidget PendingIntent không hoạt động sau khi khởi động lại Khởi động
- 16. Tự động tải lại thư còn lại trong svn-commit.tmp khi thử lại một cam kết không thành công?
- 17. Rails Động cơ: Người giúp chỉ được tải lại khi khởi động lại máy chủ
- 18. khởi động lại ứng dụng mà không cần khởi động lại máy chủ?
- 19. Xoay điện thoại khởi động lại video trên android
- 20. Ứng dụng Android khởi động lại trên thay đổi hướng
- 21. Có thể tải lại chế độ xem mà không cần khởi động lại Django không?
- 22. android webview hoặc trình duyệt không xóa cookie phiên khi khởi động lại thiết bị
- 23. Không gọi đến onStartCommand() sau khi khởi động lại dịch vụ bị lỗi trong Android 2.3
- 24. cài đặt lại android không thành công sau khi tắt hoạt động của trình khởi chạy
- 25. Thiết bị Android khởi động lại thỉnh thoảng
- 26. Khởi động lại/Tắt nguồn Trình giả lập Android
- 27. .NET Framework 4.0 có yêu cầu khởi động lại không?
- 28. Android 2.2: Khởi động lại thiết bị theo lập trình
- 29. Android: giữ cho hoạt động ngăn xếp công việc sau khi khởi động lại từ CHỦ
- 30. hoạt động trên Android được khởi động lại khi định hướng thay đổi
Xin chào, trong http://developer.android.com/training/location/geofencing.html hướng dẫn này tôi thực sự không hiểu việc sử dụng 'SharedPreferences' vì chúng không bao giờ được sử dụng trong điều khoản truy cập dữ liệu. Bạn có biết lý do tại sao lưu trữ Presistent được sử dụng. –
Khi bạn được kích hoạt từ Geofence, bạn sẽ nhận được id của geofence cụ thể đó. Nhưng trong thời gian thực chúng ta có rất nhiều thông tin thay vì chỉ là một id. SharedPreferences giống như lưu trữ để lưu thông tin địa lý ousr như id, tin nhắn, lat, lng và một vài giá trị khác được liên kết với nó. – Sundeep1501
Cảm ơn Sundeep có vẻ hợp lý. Tôi đã lưu trữ dữ liệu Geofence trong cơ sở dữ liệu. Tôi đã nhầm lẫn và giả định rằng có thể GeoFence Api sử dụng dữ liệu đã được lưu trong 'SharedPreferences'. –