Mam stronę internetową za pomocą interfejsu API geolokacji javascript i chcę ją otworzyć w widoku internetowym. Założyłem te uprawnienia w pliku manifestu:Baza danych geopolokalizacji systemu Android nie otworzy się
<uses-permission android:name="android.permission.ACCESS_GPS" />
<uses-permission android:name="android.permission.ACCESS_ASSISTED_GPS" />
<uses-permission android:name="android.permission.ACCESS_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
W mojej działalności, ja też zestaw funkcji webview ustawienia:
webview.setWebChromeClient(new WebChromeClient(){
@Override
public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
callback.invoke(origin, true, false);
}
});
Geolokalizacja:
webview.getSettings().setDatabaseEnabled(true);
webview.getSettings().setDomStorageEnabled(true);
webview.getSettings().setGeolocationDatabasePath("/data/data/com.my.app/databases");
webview.getSettings().setGeolocationEnabled(true);
I ja również obsługiwane dialogowe javascript geolokalizacja sama działa, ale nie mogę buforować geopozycji w bazie danych. Należy to robić sama w CachedGeoposition.db, ale kiedy rozpocząć webview, otrzymuję ten dziwny błąd SQLite:
E/SQLiteLog(22653): (14) cannot open file at line 30174 of [00bb9c9ce4]
E/SQLiteLog(22653): (14) os_unix.c:30174: (2) open(/CachedGeoposition.db) -
D/WebKit (22653): ERROR:
D/WebKit (22653): SQLite database failed to load from /CachedGeoposition.db
D/WebKit (22653): Cause - unable to open database file
D/WebKit (22653):
D/WebKit (22653): external/webkit/Source/WebCore/platform/sql/SQLiteDatabase.cp
p(71) : bool WebCore::SQLiteDatabase::open(const WTF::String&, bool)
Kiedy sprawdzać istnienie pliku CachedGeoposition.db w Eksploratorze plików, to zawsze istnieje , i uprawnienia do bazy danych są ustawione na -rw -------.
Czy coś pominąłem w ustawieniach, co może spowodować, że baza danych nie otworzy się poprawnie? Jestem nowy na Androida i próbuję znaleźć rozwiązanie na 2 dni. Każda pomoc będzie wielce ceniona. Dziękuję Ci.
sprawdź tę odpowiedź http://stackoverflow.com/questions/12801690/error-log-sqlite-failed-to-load-from-cachedgeoposition-db – jpotts18