-
-
-
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
deleted file mode 100644
index b31a4ac..0000000
--- a/.idea/misc.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
deleted file mode 100644
index 0c8dc41..0000000
--- a/.idea/modules.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
deleted file mode 100644
index 35eb1dd..0000000
--- a/.idea/vcs.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index 57ca0cf..c674480 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -2,12 +2,18 @@ apply plugin: 'com.android.application'
android {
compileSdk 34
+ dependenciesInfo {
+ // Disable including dependency metadata when building APKs
+ includeInApk = false
+ // Disable including dependency metadata when building Android App Bundles
+ includeInBundle = false
+ }
defaultConfig {
applicationId "us.spotco.maps"
minSdkVersion 21
targetSdk 34
- versionCode 39
- versionName "3.9"
+ versionCode 43
+ versionName "4.3"
}
buildTypes {
debug {
@@ -22,8 +28,9 @@ android {
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
- lint {
+ lintOptions {
abortOnError false
+ disable 'MissingTranslation'
}
}
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index b3515bf..3170d16 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -14,6 +14,7 @@
android:theme="@android:style/Theme.DeviceDefault">
diff --git a/app/src/main/ic_launcher-playstore.png b/app/src/main/ic_launcher-playstore.png
index e099813..96c559b 100644
Binary files a/app/src/main/ic_launcher-playstore.png and b/app/src/main/ic_launcher-playstore.png differ
diff --git a/app/src/main/java/us/spotco/maps/GithubStar.java b/app/src/main/java/us/spotco/maps/GithubStar.java
new file mode 100644
index 0000000..82d29eb
--- /dev/null
+++ b/app/src/main/java/us/spotco/maps/GithubStar.java
@@ -0,0 +1,62 @@
+package us.spotco.maps;
+
+import android.app.AlertDialog;
+import android.content.Context;
+import android.content.DialogInterface;
+import android.content.Intent;
+import android.content.SharedPreferences;
+import android.net.Uri;
+
+import android.preference.PreferenceManager;
+
+public class GithubStar {
+ public static void setAskForStar(boolean askForStar, Context context) {
+ SharedPreferences prefManager = PreferenceManager.getDefaultSharedPreferences(context);
+ SharedPreferences.Editor editor = prefManager.edit();
+ editor.putBoolean("askForStar", askForStar);
+ editor.apply();
+ }
+
+ public static boolean shouldShowStarDialog(Context context) {
+ SharedPreferences prefManager = PreferenceManager.getDefaultSharedPreferences(context);
+ int versionCode = prefManager.getInt("versionCode", 0);
+ boolean askForStar = prefManager.getBoolean("askForStar", true);
+
+ if (prefManager.contains("versionCode") && BuildConfig.VERSION_CODE > versionCode && askForStar) { //not at first start, only after upgrade and only if use has not yet given a star or has declined
+ SharedPreferences.Editor editor = prefManager.edit();
+ editor.putInt("versionCode", BuildConfig.VERSION_CODE);
+ editor.apply();
+ return true;
+ } else {
+ SharedPreferences.Editor editor = prefManager.edit();
+ editor.putInt("versionCode", BuildConfig.VERSION_CODE);
+ editor.apply();
+ return false;
+ }
+ }
+
+ public static void starDialog(Context context, String url) {
+ SharedPreferences prefManager = PreferenceManager.getDefaultSharedPreferences(context);
+ if (prefManager.getBoolean("askForStar", true)) {
+ AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(context);
+ alertDialogBuilder.setMessage(R.string.dialog_StarOnGitHub);
+ alertDialogBuilder.setPositiveButton(context.getString(android.R.string.ok), new DialogInterface.OnClickListener() {
+ @Override
+ public void onClick(DialogInterface dialog, int which) {
+ context.startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(url)));
+ setAskForStar(false, context);
+ }
+ });
+ alertDialogBuilder.setNegativeButton(context.getString(android.R.string.no), new DialogInterface.OnClickListener() {
+ @Override
+ public void onClick(DialogInterface dialog, int which) {
+ setAskForStar(false, context);
+ }
+ });
+ alertDialogBuilder.setNeutralButton(context.getString(R.string.dialog_Later_button), null);
+
+ AlertDialog alertDialog = alertDialogBuilder.create();
+ alertDialog.show();
+ }
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/us/spotco/maps/MainActivity.java b/app/src/main/java/us/spotco/maps/MainActivity.java
index a27fa24..22e1483 100644
--- a/app/src/main/java/us/spotco/maps/MainActivity.java
+++ b/app/src/main/java/us/spotco/maps/MainActivity.java
@@ -20,6 +20,8 @@ import android.Manifest;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.ActivityNotFoundException;
+import android.content.ClipData;
+import android.content.ClipDescription;
import android.content.ClipboardManager;
import android.content.Context;
import android.content.Intent;
@@ -116,6 +118,7 @@ public class MainActivity extends Activity {
//Set cookie options
mapsCookieManager = CookieManager.getInstance();
+ resetWebView(false);
mapsCookieManager.setAcceptCookie(true);
mapsCookieManager.setAcceptThirdPartyCookies(mapsWebView, false);
mapsCookieManager.setCookie(".google.com", "SOCS=CAI;");
@@ -157,7 +160,6 @@ public class MainActivity extends Activity {
});
mapsWebView.setWebViewClient(new WebViewClient() {
- //Keep these in sync!
@Override
public WebResourceResponse shouldInterceptRequest(final WebView view, WebResourceRequest request) {
if (request.getUrl().toString().equals("about:blank")) {
@@ -183,6 +185,7 @@ public class MainActivity extends Activity {
allowed = true;
}
}
+ if (request.getUrl().getHost().equals("gstatic.com") && request.getUrl().getPath().startsWith("/local/placeinfo/")) allowed = true;
if (!allowed) {
Log.d(TAG, "[shouldInterceptRequest][NOT ON ALLOWLIST] Blocked access to " + request.getUrl().getHost());
return new WebResourceResponse("text/javascript", "UTF-8", null); //Deny URLs not on ALLOWLIST
@@ -221,7 +224,19 @@ public class MainActivity extends Activity {
} catch (UnsupportedEncodingException e) {
throw new RuntimeException(e);
}
-
+ } else if (request.getUrl().toString().startsWith("http://")){
+ new AlertDialog.Builder(context)
+ .setTitle(R.string.title_open_link)
+ .setIcon(R.drawable.ic_warning) // Set the alert icon
+ .setMessage(context.getString(R.string.text_warning_link) + "\n\n" + context.getString(R.string.text_open_link, request.getUrl().toString()))
+ .setNegativeButton(android.R.string.cancel, null)
+ .setPositiveButton(
+ android.R.string.ok,
+ (dialogInterface, i) ->
+ startActivity(new Intent(Intent.ACTION_VIEW, request.getUrl()))
+ )
+ .create()
+ .show();
}
return true; //Deny URLs that aren't HTTPS
}
@@ -243,6 +258,20 @@ public class MainActivity extends Activity {
}
if (!allowed) {
Log.d(TAG, "[shouldOverrideUrlLoading][NOT ON ALLOWLIST] Blocked access to " + request.getUrl().getHost());
+ if (request.getUrl().toString().startsWith("https://")) {
+ new AlertDialog.Builder(context)
+ .setTitle(R.string.title_open_link)
+ .setMessage(context.getString(R.string.text_open_link, request.getUrl().toString()))
+ .setNegativeButton(android.R.string.cancel, null)
+ .setPositiveButton(
+ android.R.string.ok,
+ (dialogInterface, i) ->
+ startActivity(new Intent(Intent.ACTION_VIEW, request.getUrl()))
+ )
+ .create()
+ .show();
+ }
+
return true; //Deny URLs not on ALLOWLIST
}
for (String url : blockedURLs) {
@@ -288,16 +317,17 @@ public class MainActivity extends Activity {
mapsWebSettings.setDomStorageEnabled(false);
mapsWebSettings.setSaveFormData(false);
//Change the User-Agent
- mapsWebSettings.setUserAgentString("Mozilla/5.0 (Linux; Unspecified Device) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.79 Mobile Safari/537.36");
+ mapsWebSettings.setUserAgentString("Mozilla/5.0 (Linux; Unspecified Device) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Mobile Safari/537.36");
//Load Google Maps
mapsWebView.loadUrl(urlToLoad);
+ if (GithubStar.shouldShowStarDialog(this)) GithubStar.starDialog(this, "https://github.com/woheller69/maps");
}
@Override
protected void onDestroy() {
- super.onDestroy();
resetWebView(true);
+ super.onDestroy();
}
@Override
@@ -318,21 +348,20 @@ public class MainActivity extends Activity {
}
private void resetWebView(boolean exit) {
- if (exit) {
- mapsWebView.loadUrl("about:blank");
- mapsWebView.removeAllViews();
- mapsWebSettings.setJavaScriptEnabled(false);
- }
mapsWebView.clearFormData();
mapsWebView.clearHistory();
mapsWebView.clearMatches();
mapsWebView.clearSslPreferences();
+ mapsWebView.clearCache(true);
mapsCookieManager.removeSessionCookie();
mapsCookieManager.removeAllCookie();
CookieManager.getInstance().removeAllCookies(null);
CookieManager.getInstance().flush();
WebStorage.getInstance().deleteAllData();
if (exit) {
+ mapsWebView.loadUrl("about:blank");
+ mapsWebView.removeAllViews();
+ mapsWebSettings.setJavaScriptEnabled(false);
mapsWebView.destroyDrawingCache();
mapsWebView.destroy();
mapsWebView = null;
@@ -415,20 +444,33 @@ public class MainActivity extends Activity {
private void initShareLinkListener() {
ClipboardManager clipboard = (ClipboardManager) context.getSystemService(Context.CLIPBOARD_SERVICE);
- clipboard.addPrimaryClipChangedListener(new ClipboardManager.OnPrimaryClipChangedListener() {
- @Override
- public void onPrimaryClipChanged() {
- String url = mapsWebView.getUrl();
- String regex = "@(-?d*\\d+.\\d+),(-?d*\\d+.\\d+)";
- Pattern p = Pattern.compile(regex);
- Matcher m = p.matcher(url);
- if (m.find()) {
- String latlon = m.group(1) + "," + m.group(2);
- try {
- startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("geo:" + latlon + "?q=" + latlon)));
- } catch (ActivityNotFoundException ignored) {
- Toast.makeText(context, R.string.no_app_installed, Toast.LENGTH_SHORT).show();
+ clipboard.addPrimaryClipChangedListener(() -> {
+ if (!clipboard.hasPrimaryClip()) return;
+
+ ClipDescription description = clipboard.getPrimaryClipDescription();
+ if (description == null) return;
+
+ // Only process plain text
+ if (description.hasMimeType(ClipDescription.MIMETYPE_TEXT_PLAIN)) {
+ try {
+ CharSequence copiedText = clipboard.getPrimaryClip().getItemAt(0).getText();
+ if (copiedText == null) return;
+
+ // Match coordinates in copied text (e.g., "40.7128,74.0060" or "40.7128 -74.006")
+ Pattern p = Pattern.compile("(-?\\d*\\.\\d+),\\s*(-?\\d*\\.\\d+)");
+ Matcher m = p.matcher(copiedText);
+
+ if (m.find()) {
+ String latlon = m.group(1) + "," + m.group(2);
+ String clipContent = "geo:" + latlon + "?q=" + latlon;
+ ClipData newClip = ClipData.newPlainText("Geo URI", clipContent);
+ clipboard.setPrimaryClip(newClip);
}
+ } catch (ActivityNotFoundException e) {
+ // Show "No app installed" message if no app can handle the geo intent
+ Toast.makeText(context, R.string.no_app_installed, Toast.LENGTH_SHORT).show();
+ } catch (Exception e) {
+ Log.e(TAG, "Error processing clipboard content", e);
}
}
});
diff --git a/app/src/main/res/drawable/ic_warning.xml b/app/src/main/res/drawable/ic_warning.xml
new file mode 100644
index 0000000..69a7ed9
--- /dev/null
+++ b/app/src/main/res/drawable/ic_warning.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
diff --git a/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml b/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
deleted file mode 100644
index 1084c24..0000000
--- a/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/mipmap-hdpi/ic_launcher.png b/app/src/main/res/mipmap-hdpi/ic_launcher.png
index 4f8d147..97dd774 100644
Binary files a/app/src/main/res/mipmap-hdpi/ic_launcher.png and b/app/src/main/res/mipmap-hdpi/ic_launcher.png differ
diff --git a/app/src/main/res/mipmap-hdpi/ic_launcher_round.png b/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
deleted file mode 100644
index 44961cd..0000000
Binary files a/app/src/main/res/mipmap-hdpi/ic_launcher_round.png and /dev/null differ
diff --git a/app/src/main/res/mipmap-mdpi/ic_launcher.png b/app/src/main/res/mipmap-mdpi/ic_launcher.png
index ed11dd7..269db57 100644
Binary files a/app/src/main/res/mipmap-mdpi/ic_launcher.png and b/app/src/main/res/mipmap-mdpi/ic_launcher.png differ
diff --git a/app/src/main/res/mipmap-mdpi/ic_launcher_round.png b/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
deleted file mode 100644
index b26490f..0000000
Binary files a/app/src/main/res/mipmap-mdpi/ic_launcher_round.png and /dev/null differ
diff --git a/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/app/src/main/res/mipmap-xhdpi/ic_launcher.png
index 15e8b83..d5c17f8 100644
Binary files a/app/src/main/res/mipmap-xhdpi/ic_launcher.png and b/app/src/main/res/mipmap-xhdpi/ic_launcher.png differ
diff --git a/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png b/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
deleted file mode 100644
index 263b88c..0000000
Binary files a/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png and /dev/null differ
diff --git a/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
index 6e64303..c46adaa 100644
Binary files a/app/src/main/res/mipmap-xxhdpi/ic_launcher.png and b/app/src/main/res/mipmap-xxhdpi/ic_launcher.png differ
diff --git a/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png b/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
deleted file mode 100644
index db00979..0000000
Binary files a/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png and /dev/null differ
diff --git a/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
index 7b9600e..58f1361 100644
Binary files a/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png and b/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png differ
diff --git a/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png b/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
deleted file mode 100644
index 2183007..0000000
Binary files a/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png and /dev/null differ
diff --git a/app/src/main/res/values-ar/strings.xml b/app/src/main/res/values-ar/strings.xml
index 72ac220..c5516ae 100644
--- a/app/src/main/res/values-ar/strings.xml
+++ b/app/src/main/res/values-ar/strings.xml
@@ -1,9 +1,10 @@
- GMaps WVإذن الموقعالرجاء تفعيل GPSافتح في webview مقيدلم يتم تثبيت أي تطبيقيُرجى منح إذن الموقع ثم اضغط على الزر مرة أخرى.
+ ربما لاحقًا
+ هل أعجبك هذا التطبيق؟ الرجاء منح نجمة على GitHub أو شراء قهوة للمطور عبر PayPal.
\ No newline at end of file
diff --git a/app/src/main/res/values-bg/strings.xml b/app/src/main/res/values-bg/strings.xml
index f165f35..597ed45 100644
--- a/app/src/main/res/values-bg/strings.xml
+++ b/app/src/main/res/values-bg/strings.xml
@@ -3,7 +3,6 @@
Отворете в ограничен уеб изгледМоля, дайте разрешение за местоположение и натиснете бутона отново.Няма инсталирано приложение
- GMaps уеб изгледМоля, активирайте GPSРазрешение за местоположение
\ No newline at end of file
diff --git a/app/src/main/res/values-cs/strings.xml b/app/src/main/res/values-cs/strings.xml
index 44ec7ab..da8da26 100644
--- a/app/src/main/res/values-cs/strings.xml
+++ b/app/src/main/res/values-cs/strings.xml
@@ -1,9 +1,13 @@
-
- GMaps WV
+ GMaps WVOtevřít v omezeném webovém zobrazení
- Oprávnění k poloze
- Udělte prosím oprávnění k poloze a znovu stiskněte tlačítko.
- Povolte prosím polohové služby
+ Přístup k poloze
+ Udělte přístup oprávnění k poloze a znovu stiskněte tlačítko.
+ Zapněte prosím polohové službyNení nainstalována žádná aplikace
-
\ No newline at end of file
+ Otevřít odkaz
+ Otevřít v externím prohlížeči? %s
+ VAROVÁNÍ: Tento odkaz není zabezpečený!
+ Líbí se vám tato aplikace? Dejte jí prosím hvězdičku na GitHubu nebo kupte vývojáři kávu přes PayPal.
+ Možná později
+
diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml
index 139cbc9..156b8a4 100644
--- a/app/src/main/res/values-de/strings.xml
+++ b/app/src/main/res/values-de/strings.xml
@@ -1,9 +1,13 @@
- GMaps WVIm eingeschränktem Webview öffnenStandortfreigabeBitte die Standordfreigabe gewähren und die Funktion erneut aufrufen.Bitte GPS aktivierenKeine App installiert
+ Link öffnen
+ In externem Browser öffnen? %s
+ ACHTUNG: Dieser Link ist nicht sicher!
+ Mögen Sie diese App? Bitte vergeben Sie einen Stern auf GitHub oder spendieren Sie dem Entwickler einen Kaffee über PayPal.
+ Vielleicht später
diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml
index 84e3b4b..9dccecc 100644
--- a/app/src/main/res/values-es/strings.xml
+++ b/app/src/main/res/values-es/strings.xml
@@ -1,6 +1,5 @@
- GMaps WVAbrir con webview restringidoPermiso de ubicaciónPor favor, concede permisos de ubicación y presiona el botón nuevamente.
diff --git a/app/src/main/res/values-et/strings.xml b/app/src/main/res/values-et/strings.xml
index e91ea20..9f86701 100644
--- a/app/src/main/res/values-et/strings.xml
+++ b/app/src/main/res/values-et/strings.xml
@@ -1,6 +1,5 @@
- GMaps veebivaadeAva piiratud veebivaatenaÕigused asukoha tuvastamiseksPalun anna rakendusele õigused asukoha tuvastamiseks ja vajuta uuesti nuppu.
diff --git a/app/src/main/res/values-fa/strings.xml b/app/src/main/res/values-fa/strings.xml
new file mode 100644
index 0000000..f1b8347
--- /dev/null
+++ b/app/src/main/res/values-fa/strings.xml
@@ -0,0 +1,11 @@
+
+ بازکردن در مشاهدهگر وب محدود شده
+ دسترسی مکان
+ لطفا دسترسی مکان را داده و دوباره روی دکمه ضربه بزنید
+ لطفا مکانیاب را روشن کنید
+ برنامهای نصب نشده
+ بازکردن پیوند
+ بازکردن در مرورگر خارجی؟ %s
+ این برنامه رو دوست داشتید؟ لطفا به ما در گیتهاب ستاره دهید و یا در پیپال برای برنامهنویس قهوه بخرید
+ شاید بعدا
+
\ No newline at end of file
diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml
index a80ecdc..4fff833 100644
--- a/app/src/main/res/values-fr/strings.xml
+++ b/app/src/main/res/values-fr/strings.xml
@@ -1,9 +1,12 @@
- GMaps WVAccès à la localisationVeuillez donner l\'accès à la localisation et appuyer à nouveau sur le bouton.Veuillez activer le GPSPas d\'application installéeOuvrir dans la webview restreinte
+ Ouvrir le lien
+ Ouvrir dans le navigateur externe ? %s
+ Vous appréciez cette application? Donnez une étoile sur GitHub ou offrez un café au développeur via PayPal.
+ Plus tard, peut-être
\ No newline at end of file
diff --git a/app/src/main/res/values-gl/strings.xml b/app/src/main/res/values-gl/strings.xml
index e63b6c6..facd88d 100644
--- a/app/src/main/res/values-gl/strings.xml
+++ b/app/src/main/res/values-gl/strings.xml
@@ -1,6 +1,5 @@
- GMaps WVAbrir nunha webview con restriciónsPermiso de localizaciónConcede permiso para a localización e preme outra vez no botón.
diff --git a/app/src/main/res/values-hi/strings.xml b/app/src/main/res/values-hi/strings.xml
new file mode 100644
index 0000000..8458820
--- /dev/null
+++ b/app/src/main/res/values-hi/strings.xml
@@ -0,0 +1,8 @@
+
+
+ प्रतिबंधित वेबव्यू में खोलें
+ स्थान अनुमति
+ कृपया स्थान की अनुमति दें और पुनः दबाएँ।
+ कृपया जीपीएस सक्रिय करें
+ कोई अनुप्रयोग स्थापित नहीं हे
+
\ No newline at end of file
diff --git a/app/src/main/res/values-hr/strings.xml b/app/src/main/res/values-hr/strings.xml
index 8e04401..43589f5 100644
--- a/app/src/main/res/values-hr/strings.xml
+++ b/app/src/main/res/values-hr/strings.xml
@@ -3,7 +3,6 @@
Molimo aktivirajte GPSDozvola za lokacijuNema instalirane aplikacije
- GMaps WVOtvori u ograničenom web prikazuMolimo Vas dajte dopuštenje za lokaciju i ponovo pritisnite gumb.
\ No newline at end of file
diff --git a/app/src/main/res/values-in/strings.xml b/app/src/main/res/values-in/strings.xml
index 6c93e68..f506df1 100644
--- a/app/src/main/res/values-in/strings.xml
+++ b/app/src/main/res/values-in/strings.xml
@@ -1,6 +1,5 @@
- GMaps WVBuka dengan tampilan-web terbatasIzinkan akses lokasiMohon berikan izin akses lokasi dan tekan tombol kembali.
diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml
index d394b26..ca5ab1b 100644
--- a/app/src/main/res/values-it/strings.xml
+++ b/app/src/main/res/values-it/strings.xml
@@ -1,9 +1,13 @@
- Attiva i permessi di localizzazione e previ nuovamente il pulsante.
- Per favore, attiva il GPS
- Nessuna app installata
- Mappe Google WVApri in una webview ristrettaPermessi di localizzazione
-
\ No newline at end of file
+ Attiva i permessi di localizzazione e premi nuovamente il pulsante.
+ Per favore, attiva il GPS
+ Nessuna app installata
+ Apri link
+ Vuoi aprire? %s
+ ATTENZIONE: Link non sicuro!
+ Ti piace quest\'app? Dai una stella su Github oppure offri un caffè allo sviluppatore tramite PayPal.
+ Forse più tardi
+
diff --git a/app/src/main/res/values-ml/strings.xml b/app/src/main/res/values-ml/strings.xml
new file mode 100644
index 0000000..3b6ed35
--- /dev/null
+++ b/app/src/main/res/values-ml/strings.xml
@@ -0,0 +1,8 @@
+
+
+ സ്ഥാന അനുമതി
+ ദയവായി ജിപിഎസ് സജീവമാക്കുക
+ നിയന്ത്രിത വെബ്വ്യൂവിൽ തുറക്കുക
+ സ്ഥാന അനുമതി നൽകി വീണ്ടും അമർത്തുക.
+ ഒരു പ്രയോഗവും സ്ഥാപിച്ചിട്ടില്ല
+
\ No newline at end of file
diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml
new file mode 100644
index 0000000..6f5f4b3
--- /dev/null
+++ b/app/src/main/res/values-nl/strings.xml
@@ -0,0 +1,13 @@
+
+
+ Openen in beperkte Webview
+ Locatierechten
+ A.u.b. locatierechten toekennen en deze knop opnieuw indrukken.
+ A.u.b. GPS activeren
+ Geen app is geïnstalleerd
+ Link openen
+ Openen in externe webbrowser? %s
+ WAARSCHUWING: Deze link is niet veilig!
+ Vind je deze app leuk of handig? Geef een ster op GitHub of doneer een koffie aan de ontwikkelaar via PayPal.
+ Misschien later
+
diff --git a/app/src/main/res/values-pl/strings.xml b/app/src/main/res/values-pl/strings.xml
index 0addb6a..1824824 100644
--- a/app/src/main/res/values-pl/strings.xml
+++ b/app/src/main/res/values-pl/strings.xml
@@ -1,6 +1,5 @@
- GMaps WVOtwórz w chronionym webviewDostęp do lokalizacjiProsimy udzielić dostępu do lokalizacji i nacisnąć przycisk ponownie.
diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml
index a63a5dc..ec58f3a 100644
--- a/app/src/main/res/values-pt-rBR/strings.xml
+++ b/app/src/main/res/values-pt-rBR/strings.xml
@@ -1,9 +1,10 @@
- GMaps WVAbrir em WebView restritoPermissão de localizaçãoConceda a permissão de localização e toque no botão novamente.Ative o GPSNenhum app instalado
+ Você gosta deste app? Dê-o uma estrela no GitHub ou compre um café para o desenvolvedor no PayPal.
+ Talvez depois
\ No newline at end of file
diff --git a/app/src/main/res/values-pt/strings.xml b/app/src/main/res/values-pt/strings.xml
index 8c6d2ad..ebdcbe4 100644
--- a/app/src/main/res/values-pt/strings.xml
+++ b/app/src/main/res/values-pt/strings.xml
@@ -1,8 +1,9 @@
- GMaps WVAbrir em WebView restritoPermissão de localizaçãoConceda a permissão de localização e toque no botão novamente.Ative o GPSNenhum app instalado
+ Você gosta deste app? Dê-o uma estrela no GitHub ou compre um café para o desenvolvedor no PayPal.
+ Talvez depois
diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml
index a5ac1e1..8a5612c 100644
--- a/app/src/main/res/values-ru/strings.xml
+++ b/app/src/main/res/values-ru/strings.xml
@@ -3,4 +3,8 @@
Открыть в ограниченном веб-просмотреРазрешение на местоположениеПожалуйста, активируйте GPS
+ Вам нравится это приложение? Пожалуйста, поставьте звёздочку на GitHub или купите разработчику кофе через PayPal.
+ Может быть позже
+ Пожалуйста, дайте разрешение на определение местоположения и нажмите кнопку еще раз.
+ Приложение не установлено
\ No newline at end of file
diff --git a/app/src/main/res/values-ta/strings.xml b/app/src/main/res/values-ta/strings.xml
new file mode 100644
index 0000000..b9e7039
--- /dev/null
+++ b/app/src/main/res/values-ta/strings.xml
@@ -0,0 +1,8 @@
+
+
+ தடைசெய்யப்பட்ட வெப்வியூவில் திறக்கவும்
+ சி.பி.எச்சை செயல்படுத்தவும்
+ இருப்பிட இசைவு
+ இருப்பிட இசைவு வழங்கவும், மீண்டும் பொத்தானை அழுத்தவும்.
+ பயன்பாடு எதுவும் நிறுவப்படவில்லை
+
\ No newline at end of file
diff --git a/app/src/main/res/values-uk/strings.xml b/app/src/main/res/values-uk/strings.xml
index bb2609a..3bd0976 100644
--- a/app/src/main/res/values-uk/strings.xml
+++ b/app/src/main/res/values-uk/strings.xml
@@ -1,6 +1,5 @@
- GMaps WVВідкрити в обмеженому вебпереглядачіДозвіл на місцезнаходженняБудь ласка, надайте дозвіл на визначення місцезнаходження та натисніть кнопку ще раз.
diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml
index ca46fce..d3e0ae4 100644
--- a/app/src/main/res/values-zh-rCN/strings.xml
+++ b/app/src/main/res/values-zh-rCN/strings.xml
@@ -2,7 +2,6 @@
请激活 GPS位置权限
- GMaps WVApp未安装在受限的WebView中打开请授予位置权限,然后再次按下按钮。
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 7b777a8..4ad245d 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -1,8 +1,13 @@
- GMaps WV
+ GMaps WVOpen in restricted webviewLocation permissionPlease grant location permission and press button again.Please activate GPSNo app installed
+ Open link
+ Open in external browser? %s
+ WARNING: This link is not secure!
+ Do you like this app? Please give a star on GitHub or buy the developer a coffee via PayPal.
+ Maybe later
diff --git a/fastlane/metadata/android/en-US/changelogs/40.txt b/fastlane/metadata/android/en-US/changelogs/40.txt
new file mode 100644
index 0000000..35fa283
--- /dev/null
+++ b/fastlane/metadata/android/en-US/changelogs/40.txt
@@ -0,0 +1,3 @@
+Allow opening external links
+Translations
+Bugfixes
diff --git a/fastlane/metadata/android/en-US/changelogs/41.txt b/fastlane/metadata/android/en-US/changelogs/41.txt
new file mode 100644
index 0000000..1617cb4
--- /dev/null
+++ b/fastlane/metadata/android/en-US/changelogs/41.txt
@@ -0,0 +1,2 @@
+Allow placeinfo images
+Translations
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/changelogs/42.txt b/fastlane/metadata/android/en-US/changelogs/42.txt
new file mode 100644
index 0000000..1617cb4
--- /dev/null
+++ b/fastlane/metadata/android/en-US/changelogs/42.txt
@@ -0,0 +1,2 @@
+Allow placeinfo images
+Translations
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/changelogs/43.txt b/fastlane/metadata/android/en-US/changelogs/43.txt
new file mode 100644
index 0000000..ec4346f
--- /dev/null
+++ b/fastlane/metadata/android/en-US/changelogs/43.txt
@@ -0,0 +1,2 @@
+Bugfixes
+Translation update
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/images/icon.png b/fastlane/metadata/android/en-US/images/icon.png
index e099813..96c559b 100644
Binary files a/fastlane/metadata/android/en-US/images/icon.png and b/fastlane/metadata/android/en-US/images/icon.png differ