Wikipedia:ILee88/WebMap

Bách khoa toàn thư mở Wikipedia
(Đổi hướng từ Thành viên:ILee88/Nháp)

Tích hợp webmap trên mobile app - geolocation[sửa | sửa mã nguồn]

Dùng định vị của browser:[sửa | sửa mã nguồn]

  1. Gặp thông báo về quyền truy cập geolocation của trình duyệt không thể thay đổi hay can thiệp vào thông báo này trên web browser.
  2. Android: Trường hợp tích hợp vào app của android thì có thể hiệu chỉnh được nội dung thông báo.
    1. Tham khảo cách làm cho Xamarin webbrowser tại đây https://forums.xamarin.com/discussion/150646/geolocation-in-webview
  3. iOS: Chưa thấy giải pháp hiệu chỉnh. Và gần như khi chạy sẽ hiện 2 thông báo: 1 xin quyền từ ứng dụng (nếu ứng dụng có xin quyền), 1 xin quyền từ trình duyệt.

Trường hợp này bên app của Q7 đang dùng và đang bị tình trạng tương tự cho 3 trường hợp trên.

Dùng định vị của thiết bị từ app thông qua webview control trong Xamarin[sửa | sửa mã nguồn]

Link tham khảo tương tác giữa App với Web: https://blog.klimczyk.pl/posts/2019/04/call-js-in-csharp-in-xamarin C# and JS calls in Xamarin (both ways)

  1. Từ giao diện nhấn control định vị sẽ gọi hàm getLocation. Hàm này bên Xamarim khai báo hàm dạng JavascriptInterface như trong link hướng dẫn.
  2. Trong hàm getLocation này sẽ xử lý lấy thông tin geoLocation (GPS vị trí) từ thiết bị chuyển thành text Json với định dạng thông tin như sau (tô đậm là bắt buộc có): {"coords":{"altitude":10.32386589050293,"altitudeAccuracy":10,"latitude":10.774976628311665,"accuracy":65,"longitude":106.64943554152055,"heading":-1,"speed":-1},"timestamp":1582015638093.1501}
  3. Sau khi có geoLocation thì gọi hàm javascript (xem cách làm trong link hướng dẫn) setDeviceLocation (đã định nghĩa sẵn) truyền chuỗi kết quả text Json từ bước 2.