aboutsummaryrefslogtreecommitdiff
path: root/files/pt-pt/web/api/geolocation
diff options
context:
space:
mode:
authorFlorian Merz <me@fiji-flo.de>2021-02-11 14:50:24 +0100
committerFlorian Merz <me@fiji-flo.de>2021-02-11 14:50:24 +0100
commit2c2df5ea01eb5cd8b9ea226b2869337e59c5fe3e (patch)
tree86ab4534d10092b293d4b7ab169fe1a8a2421bfa /files/pt-pt/web/api/geolocation
parent8260a606c143e6b55a467edf017a56bdcd6cba7e (diff)
downloadtranslated-content-2c2df5ea01eb5cd8b9ea226b2869337e59c5fe3e.tar.gz
translated-content-2c2df5ea01eb5cd8b9ea226b2869337e59c5fe3e.tar.bz2
translated-content-2c2df5ea01eb5cd8b9ea226b2869337e59c5fe3e.zip
unslug pt-pt: move
Diffstat (limited to 'files/pt-pt/web/api/geolocation')
-rw-r--r--files/pt-pt/web/api/geolocation/utilizacao_da_geolocalizacao/index.html242
1 files changed, 0 insertions, 242 deletions
diff --git a/files/pt-pt/web/api/geolocation/utilizacao_da_geolocalizacao/index.html b/files/pt-pt/web/api/geolocation/utilizacao_da_geolocalizacao/index.html
deleted file mode 100644
index 40fb7ce571..0000000000
--- a/files/pt-pt/web/api/geolocation/utilizacao_da_geolocalizacao/index.html
+++ /dev/null
@@ -1,242 +0,0 @@
----
-title: API de Geolocalização
-slug: Web/API/Geolocation/Utilizacao_da_geolocalizacao
-tags:
- - API de Geolocalização
- - Guía
- - Intermediário
-translation_of: Web/API/Geolocation_API
----
-<p>{{securecontext_header}}{{APIRef("Geolocation API")}}</p>
-
-<p>A <strong>API de geolocalização </strong>permite que o utilizador forneça a sua localização nas aplicações da Web, se assim o desejar. Por motivos de segurança, é solicitado ao utilizador para dar permissão para informar a informação da localização.</p>
-
-<h2 id="O_objeto_de_geolocalização">O objeto de geolocalização</h2>
-
-<p>A API de <a href="/pt-PT/docs/Web/API/Geolocation">Geolocation</a> é publicada através do objeto {{domxref("navigator.geolocation")}}.</p>
-
-<p>Se o objeto existir, os serviços de geolocalização estarão disponíveis. Pode testar a presença de geolocalização assim:</p>
-
-<pre class="brush: js">if ("geolocation" in navigator) {
- /* geolocation is available */
-} else {
- /* geolocation IS NOT available */
-}
-</pre>
-
-<div class="note">
-<p><strong>Nota:</strong> On Firefox 24 and older versions, <code>"geolocation" in navigator</code> always returned <code>true</code> even if the API was disabled. This has been fixed with <a href="/en-US/docs/Mozilla/Firefox/Releases/25/Site_Compatibility">Firefox 25</a> to comply with the spec. ({{bug(884921)}}).</p>
-</div>
-
-<h3 id="Obter_a_posição_atual">Obter a posição atual</h3>
-
-<p>To obtain the user's current location, you can call the {{domxref("geolocation.getCurrentPosition()","getCurrentPosition()")}} method. This initiates an asynchronous request to detect the user's position, and queries the positioning hardware to get up-to-date information. When the position is determined, the defined callback function is executed. You can optionally provide a second callback function to be executed if an error occurs. A third, optional, parameter is an options object where you can set the maximum age of the position returned, the time to wait for a request, and if you want high accuracy for the position.</p>
-
-<div class="note">
-<p><strong>Nota:</strong> By default, {{domxref("Geolocation.getCurrentPosition()","getCurrentPosition()")}} tries to answer as fast as possible with a low accuracy result. It is useful if you need a quick answer regardless of the accuracy. Devices with a GPS, for example, can take a minute or more to get a GPS fix, so less accurate data (IP location or wifi) may be returned to {{domxref("Geolocation.getCurrentPosition()","getCurrentPosition()")}}.</p>
-</div>
-
-<pre class="brush: js">navigator.geolocation.getCurrentPosition(function(position) {
- do_something(position.coords.latitude, position.coords.longitude);
-});</pre>
-
-<p>The above example will cause the <code>do_something()</code> function to execute when the location is obtained.</p>
-
-<h3 id="Vigiar_a_posição_atual">Vigiar a posição atual</h3>
-
-<p>If the position data changes (either by device movement or if more accurate geo information arrives), you can set up a callback function that is called with that updated position information. This is done using the {{domxref("Geolocation.watchPosition()","watchPosition()")}} function, which has the same input parameters as {{domxref("Geolocation.getCurrentPosition()","getCurrentPosition()")}}. The callback function is called multiple times, allowing the browser to either update your location as you move, or provide a more accurate location as different techniques are used to geolocate you. The error callback function, which is optional just as it is for {{domxref("Geolocation.getCurrentPosition()","getCurrentPosition()")}}, can be called repeatedly.</p>
-
-<div class="note">
-<p><strong>Nota:</strong> pode utilizar {{domxref("Geolocation.watchPosition()","watchPosition()")}} sem uma chamada inicial {{domxref("Geolocation.getCurrentPosition()","getCurrentPosition()")}}.</p>
-</div>
-
-<pre class="brush: js">var watchID = navigator.geolocation.watchPosition(function(position) {
- do_something(position.coords.latitude, position.coords.longitude);
-});</pre>
-
-<p>The {{domxref("Geolocation.watchPosition()","watchPosition()")}} method returns an ID number that can be used to uniquely identify the requested position watcher; you use this value in tandem with the {{domxref("Geolocation.clearWatch()","clearWatch()")}} method to stop watching the user's location.</p>
-
-<pre class="brush: js">navigator.geolocation.clearWatch(watchID);
-</pre>
-
-<h3 id="Resposta_de_ajuste_preciso">Resposta de ajuste preciso</h3>
-
-<p>Both {{domxref("Geolocation.getCurrentPosition()","getCurrentPosition()")}} and {{domxref("Geolocation.watchPosition()","watchPosition()")}} accept a success callback, an optional error callback, and an optional <a href="/en-US/docs/Web/API/PositionOptions">PositionOptions</a> object.</p>
-
-<p>{{page("/en-US/docs/DOM/navigator.geolocation.getCurrentPosition","PositionOptions")}}</p>
-
-<p>A call to {{domxref("Geolocation.watchPosition()","watchPosition")}} could look like:</p>
-
-<pre class="brush: js">function geo_success(position) {
- do_something(position.coords.latitude, position.coords.longitude);
-}
-
-function geo_error() {
- alert("Sorry, no position available.");
-}
-
-var geo_options = {
- enableHighAccuracy: true,
- maximumAge : 30000,
- timeout : 27000
-};
-
-var wpid = navigator.geolocation.watchPosition(geo_success, geo_error, geo_options);</pre>
-
-<h2 id="Descrever_uma_posição">Descrever uma posição</h2>
-
-<p>The user's location is described using a <code>Position</code> object referencing a <code>Coordinates</code> object.</p>
-
-<p>{{page("/en-US/docs/DOM/navigator/geolocation/getCurrentPosition","Position")}}</p>
-
-<p>{{page("/en-US/docs/DOM/navigator/geolocation/getCurrentPosition","Coordinates")}}</p>
-
-<h2 id="Lidar_com_erros">Lidar com erros</h2>
-
-<p>The error callback function, if provided when calling <code>getCurrentPosition()</code> or <code>watchPosition()</code>, expects a <a href="/en-US/docs/Web/API/PositionError">PositionError</a> object as its first parameter.</p>
-
-<pre class="brush: js">function errorCallback(error) {
- alert('ERROR(' + error.code + '): ' + error.message);
-};
-</pre>
-
-<p>{{page("/en-US/docs/DOM/navigator/geolocation/getCurrentPosition","PositionError")}}</p>
-
-<h2 id="Exemplo_de_Geolocalização_Live">Exemplo de Geolocalização <em>Live</em></h2>
-
-<div class="hidden">
-<pre class="brush: css">body {
- padding: 20px;
- background-color:#ffffc9
-}
-
-p { margin : 0; }
-</pre>
-</div>
-
-<h3 id="Conteúdo_HTML">Conteúdo HTML</h3>
-
-<pre class="brush: html;">&lt;p&gt;&lt;button onclick="geoFindMe()"&gt;Show my location&lt;/button&gt;&lt;/p&gt;
-&lt;div id="out"&gt;&lt;/div&gt;
-</pre>
-
-<h3 id="Conteúdo_JavaScript">Conteúdo JavaScript</h3>
-
-<pre class="brush: js;">function geoFindMe() {
- var output = document.getElementById("out");
-
- if (!navigator.geolocation){
- output.innerHTML = "&lt;p&gt;Geolocation is not supported by your browser&lt;/p&gt;";
- return;
- }
-
- function success(position) {
- var latitude = position.coords.latitude;
- var longitude = position.coords.longitude;
-
- output.innerHTML = '&lt;p&gt;Latitude is ' + latitude + '° &lt;br&gt;Longitude is ' + longitude + '°&lt;/p&gt;';
-
- var img = new Image();
- img.src = "https://maps.googleapis.com/maps/api/staticmap?center=" + latitude + "," + longitude + "&amp;zoom=13&amp;size=300x300&amp;sensor=false";
-
- output.appendChild(img);
- }
-
- function error() {
- output.innerHTML = "Unable to retrieve your location";
- }
-
- output.innerHTML = "&lt;p&gt;Locating…&lt;/p&gt;";
-
- navigator.geolocation.getCurrentPosition(success, error);
-}
-</pre>
-
-<h3 id="Resultado_Live">Resultado <em>Live</em></h3>
-
-<p>{{EmbedLiveSample('Geolocation_Live_Example', 350, 410)}}</p>
-
-<h2 id="Aviso_para_permissão">Aviso para permissão</h2>
-
-<p>Any add-on hosted on <a href="https://addons.mozilla.org/">addons.mozilla.org</a> which makes use of geolocation data must explicitly request permission before doing so. The following function will request permission in a manner similar to the automatic prompt displayed for web pages. The user's response will be saved in the preference specified by the <code>pref</code> parameter, if applicable. The function provided in the <code>callback</code> parameter will be called with a boolean value indicating the user's response. If <code>true</code>, the add-on may access geolocation data.</p>
-
-<pre class="brush: js">function prompt(window, pref, message, callback) {
- let branch = Components.classes["@mozilla.org/preferences-service;1"]
- .getService(Components.interfaces.nsIPrefBranch);
-
- if (branch.getPrefType(pref) === branch.PREF_STRING) {
- switch (branch.getCharPref(pref)) {
- case "always":
- return callback(true);
- case "never":
- return callback(false);
- }
- }
-
- let done = false;
-
- function remember(value, result) {
- return function() {
- done = true;
- branch.setCharPref(pref, value);
- callback(result);
- }
- }
-
- let self = window.PopupNotifications.show(
- window.gBrowser.selectedBrowser,
- "geolocation",
- message,
- "geo-notification-icon",
- {
- label: "Share Location",
- accessKey: "S",
- callback: function(notification) {
- done = true;
- callback(true);
- }
- }, [
- {
- label: "Always Share",
- accessKey: "A",
- callback: remember("always", true)
- },
- {
- label: "Never Share",
- accessKey: "N",
- callback: remember("never", false)
- }
- ], {
- eventCallback: function(event) {
- if (event === "dismissed") {
- if (!done) callback(false);
- done = true;
- window.PopupNotifications.remove(self);
- }
- },
- persistWhileVisible: true
- });
-}
-
-prompt(window,
- "extensions.foo-addon.allowGeolocation",
- "Foo Add-on wants to know your location.",
- function callback(allowed) { alert(allowed); });
-</pre>
-
-<h2 id="Compatibilidade_de_navegador">Compatibilidade de navegador</h2>
-
-<p>{{Compat("api.Geolocation")}}</p>
-
-<h3 id="Disponibilidade">Disponibilidade</h3>
-
-<p>Como a localização baseada em Wi-Fi é geralmente fornecida pelo Google, a API de Geolocalização "vanilla" pode estar indisponível na China. Pode utilizar os provedores locais de terceiros, tais como  <a href="http://lbsyun.baidu.com/index.php?title=jspopular/guide/geolocation">Baidu</a>, <a href="https://lbs.amap.com/api/javascript-api/guide/services/geolocation#geolocation">Autonavi</a>, ou <a href="http://lbs.qq.com/tool/component-geolocation.html">Tencent</a>. Estes serviços utilziam o endereço de IP do utilizador e/ou uma aplicação local para fornecer o posicionamento melhorado.</p>
-
-<h2 id="Consulte_também">Consulte também</h2>
-
-<ul>
- <li>{{domxref("navigator.geolocation")}}</li>
- <li><a href="https://developer.mozilla.org/pt-PT/docs/Web/Apps/Fundamentals/gather_and_modify_data/Plotting_yourself_on_the_map">Localizar-se no mapa</a></li>
- <li><a href="https://www.w3.org/TR/geolocation-API/" rel="external">API de Geolocation em w3.org</a></li>
- <li><a href="https://hacks.mozilla.org/2013/10/who-moved-my-geolocation/">Quem moveu a minha geolocalização?</a> (Blogue de <em>Hacks</em>)</li>
-</ul>