Windows Phone 8: Kompletní průvodce nastavením (5.)

Sdílet

Autor: IDG News Service
Windows Phone 8 se chlubí tím, že jde o velice dobře přizpůsobitelný mobilní operační systém. Každý telefon s tímto systémem nabízí hromadu různých možností nastavení.

Předchozí díl

Jazyk+oblast

První položka na obrazovce jazyk+oblast, nastavení jazyka telefonu, ovlivňuje celý váš telefon – jestliže si vyberete jiný jazyk, bude do něj „přeloženo“ celé základní nastavení zařízení. Z toho důvodu mohou být dostupné jazyky v některých telefonech kromě domácího jazyka omezeny na populární a obecně známé jazyky, jako je angličtina a španělština. To však závisí na konkrétním modelu – například námi používaná Lumia 620 nabízí širokou škálu několika desítek jazyků. Jestliže ale budete příliš experimentovat, může se vám stát, že zapomenete, jak telefon nastavit znovu do původního stavu. Takže pozor na to.

Nokia Lumia 620 nastavení

Jedna z dalších položek, místní formát, ovliňuje to, jak váš telefon zobrazuje data a měny. Jestliže máte jako zemi nastavenou Českou republiku, bude telefon například ve Storu zobrazovat ceny v korunách, pokud neurčíte jinak.

Lze si také zvolit, jaký budete používat jazyk a prohlížeč vyhledávání. Toto nastavení ovlivňuje pouze vámi používaný prohlížeč, proto je zde k výběru mnohem více jazyků než pro celý telefon.

Usnadnění přístupu

Windows Phone 8 nabízí v ovládacícm panelu usnadnění přístupu několik funkcí, které můžete jednotlivě dle libosti aktivovat a deaktivovat přepínacím tlačítkem:

  • Velikost textu: Standardní velikost textu zde můžete zvětšit až čtyřikrát. Toto nastavení ovlivní obrazovky s kontakty, e-mailem, textovými zprávami i zamykací obrazovku.

  • Vysoký kontrast: Toto nastavení zvšuje celkový kontrast obrazovky telefonu a mění barvy některých prvků tak, aby šel lépe rozpoznat text.

  • Lupa obrazovky: Tento prvek umožňuje zvětšit obsah na obrazovce poklepáním dvěma prsty. Zvětšení funguje na všech obrazovkách kromě prohlížeče.

  • Textový telefon: Tento telefon vám různá nastavení poví nahlas. Lze nastavit buďto úplný textový telefon, verzi pro nemluvící nebo verzi pro neslyšící.

Řeč

Obrazovka řeč vám umožní upravit nastavení spojená s funkcemi ovládání telefonu pomocí hlasu. K vašemu telefonu můžete mluvit a on pak provádí různé akce jako vyhledávání, volání či zasílání textových zpráv. Pro přístup k řečové funkci vašeho telefonu podržte tlačítko Start.

Nokia Lumia 620 nastavení

Funkce bohužel není dostupná v češtině, takže je vhodná spíše pro uživatele, kteří oplývají znalostí některého ze světových jazyků. K dispozici je ze slovanských jazyků polština nebo ruština, verzí angličtiny zvládá systém několik.

Bohužel se nám ale při vybírání anglické řečové sady pro Velkou Británii stalo, že jsme klepli vedle a začala se instalovat sada pro Indii. Jakmile stáhnutí jazyku řeči potvrdíte, už se nelze vrátit zpět (stahování nelze přerušit ani zrušit). Nikde jsme nenalezli způsob, jak řečovou sadu odstranit, lze pouze doinstalovat další.

Úplně nahoře na obrazovce nastavení řeči si můžete vybrat, jestli chcete funkci řeč používat ve chvíli, kdy je telefon zamčený. To je zvláště praktická funkce, jestliže budete chtít někomu rychle zavolat.

Můžete také přehrávat zvuková potvrzení. Pokud zvolíte tuto možnost, bude vám telefon potvrzovat to, co jste právě řekli, zopakováním vašich slov. Následně si můžete zvolit, jestli má telefon v takovém případě mluvit ženským nebo mužským hlasem.

hacking_tip

Nastavit lze i to, aby váš telefon nahlas četl doručené textové zprávy. V menu si vyberete, zda chcete zprávy číst, případně jakým způsobem je chcete číst: vždy nebo při používání Bluetoothu, náhlavní soupravy s kabelem, případně obojího.

Pokračování

'; document.getElementById('preroll-iframe').onload = function () { setupIframe(); } prerollContainer = document.getElementsByClassName('preroll-container-iframe')[0]; } function setupIframe() { prerollDocument = document.getElementById('preroll-iframe').contentWindow.document; let el = prerollDocument.createElement('style'); prerollDocument.head.appendChild(el); el.innerText = "#adContainer>div:nth-of-type(1),#adContainer>div:nth-of-type(1) > iframe { width: 99% !important;height: 99% !important;max-width: 100%;}#videoContent,body{ width:100vw;height:100vh}body{ font-family:'Helvetica Neue',Arial,sans-serif}#videoContent{ overflow:hidden;background:#000}#adMuteBtn{ width:35px;height:35px;border:0;background:0 0;display:none;position:absolute;fill:rgba(230,230,230,1);bottom:20px;right:25px}"; videoContent = prerollDocument.getElementById('contentElement'); videoContent.style.display = 'none'; videoContent.volume = 1; videoContent.muted = false; const playPromise = videoContent.play(); if (playPromise !== undefined) { playPromise.then(function () { console.log('PREROLL sound allowed'); // setUpIMA(true); videoContent.volume = 1; videoContent.muted = false; setUpIMA(); }).catch(function () { console.log('PREROLL sound forbidden'); videoContent.volume = 0; videoContent.muted = true; setUpIMA(); }); } } function setupDimensions() { prerollWidth = Math.min(iinfoPrerollPosition.offsetWidth, 480); prerollHeight = Math.min(iinfoPrerollPosition.offsetHeight, 320); } function setUpIMA() { google.ima.settings.setDisableCustomPlaybackForIOS10Plus(true); google.ima.settings.setLocale('cs'); google.ima.settings.setNumRedirects(10); // Create the ad display container. createAdDisplayContainer(); // Create ads loader. adsLoader = new google.ima.AdsLoader(adDisplayContainer); // Listen and respond to ads loaded and error events. adsLoader.addEventListener( google.ima.AdsManagerLoadedEvent.Type.ADS_MANAGER_LOADED, onAdsManagerLoaded, false); adsLoader.addEventListener( google.ima.AdErrorEvent.Type.AD_ERROR, onAdError, false); // An event listener to tell the SDK that our content video // is completed so the SDK can play any post-roll ads. const contentEndedListener = function () { adsLoader.contentComplete(); }; videoContent.onended = contentEndedListener; // Request video ads. const adsRequest = new google.ima.AdsRequest(); adsRequest.adTagUrl = iinfoVastUrls[iinfoVastUrlIndex]; console.log('Preroll advert: ' + iinfoVastUrls[iinfoVastUrlIndex]); videoContent.muted = false; videoContent.volume = 1; // Specify the linear and nonlinear slot sizes. This helps the SDK to // select the correct creative if multiple are returned. // adsRequest.linearAdSlotWidth = prerollWidth; // adsRequest.linearAdSlotHeight = prerollHeight; adsRequest.nonLinearAdSlotWidth = 0; adsRequest.nonLinearAdSlotHeight = 0; adsLoader.requestAds(adsRequest); } function createAdDisplayContainer() { // We assume the adContainer is the DOM id of the element that will house // the ads. prerollDocument.getElementById('videoContent').style.display = 'none'; adDisplayContainer = new google.ima.AdDisplayContainer( prerollDocument.getElementById('adContainer'), videoContent); } function unmutePrerollAdvert() { adVolume = !adVolume; if (adVolume) { adsManager.setVolume(0.3); prerollDocument.getElementById('adMuteBtn').innerHTML = ''; } else { adsManager.setVolume(0); prerollDocument.getElementById('adMuteBtn').innerHTML = ''; } } function onAdsManagerLoaded(adsManagerLoadedEvent) { // Get the ads manager. const adsRenderingSettings = new google.ima.AdsRenderingSettings(); adsRenderingSettings.restoreCustomPlaybackStateOnAdBreakComplete = true; adsRenderingSettings.loadVideoTimeout = 12000; // videoContent should be set to the content video element. adsManager = adsManagerLoadedEvent.getAdsManager(videoContent, adsRenderingSettings); // Add listeners to the required events. adsManager.addEventListener(google.ima.AdErrorEvent.Type.AD_ERROR, onAdError); adsManager.addEventListener( google.ima.AdEvent.Type.CONTENT_PAUSE_REQUESTED, onContentPauseRequested); adsManager.addEventListener( google.ima.AdEvent.Type.CONTENT_RESUME_REQUESTED, onContentResumeRequested); adsManager.addEventListener( google.ima.AdEvent.Type.ALL_ADS_COMPLETED, onAdEvent); // Listen to any additional events, if necessary. adsManager.addEventListener(google.ima.AdEvent.Type.LOADED, onAdEvent); adsManager.addEventListener(google.ima.AdEvent.Type.STARTED, onAdEvent); adsManager.addEventListener(google.ima.AdEvent.Type.COMPLETE, onAdEvent); playAds(); } function playAds() { // Initialize the container. Must be done through a user action on mobile // devices. videoContent.load(); adDisplayContainer.initialize(); // setupDimensions(); try { // Initialize the ads manager. Ad rules playlist will start at this time. adsManager.init(1920, 1080, google.ima.ViewMode.NORMAL); // Call play to start showing the ad. Single video and overlay ads will // start at this time; the call will be ignored for ad rules. adsManager.start(); // window.addEventListener('resize', function (event) { // if (adsManager) { // setupDimensions(); // adsManager.resize(prerollWidth, prerollHeight, google.ima.ViewMode.NORMAL); // } // }); } catch (adError) { // An error may be thrown if there was a problem with the VAST response. // videoContent.play(); } } function onAdEvent(adEvent) { const ad = adEvent.getAd(); console.log('Preroll event: ' + adEvent.type); switch (adEvent.type) { case google.ima.AdEvent.Type.LOADED: if (!ad.isLinear()) { videoContent.play(); } prerollDocument.getElementById('adContainer').style.width = '100%'; prerollDocument.getElementById('adContainer').style.maxWidth = '640px'; prerollDocument.getElementById('adContainer').style.height = '360px'; break; case google.ima.AdEvent.Type.STARTED: window.addEventListener('scroll', onActiveView); if (ad.isLinear()) { intervalTimer = setInterval( function () { // Example: const remainingTime = adsManager.getRemainingTime(); // adsManager.pause(); }, 300); // every 300ms } prerollDocument.getElementById('adMuteBtn').style.display = 'block'; break; case google.ima.AdEvent.Type.ALL_ADS_COMPLETED: if (ad.isLinear()) { clearInterval(intervalTimer); } if (prerollLastError === 303) { playYtVideo(); } break; case google.ima.AdEvent.Type.COMPLETE: if (ad.isLinear()) { clearInterval(intervalTimer); } playYtVideo(); break; } } function onAdError(adErrorEvent) { console.log(adErrorEvent.getError()); prerollLastError = adErrorEvent.getError().getErrorCode(); if (!loadNext()) { playYtVideo(); } } function loadNext() { iinfoVastUrlIndex++; if (iinfoVastUrlIndex < iinfoVastUrls.length) { iinfoPrerollPosition.remove(); playPrerollAd(); } else { return false; } adVolume = 1; return true; } function onContentPauseRequested() { videoContent.pause(); } function onContentResumeRequested() { videoContent.play(); } function onActiveView() { if (prerollContainer) { const containerOffset = prerollContainer.getBoundingClientRect(); const windowHeight = window.innerHeight; if (containerOffset.top < windowHeight/1 && containerOffset.bottom > 0.0) { if (prerollPaused) { adsManager.resume(); prerollPaused = false; } return true; } else { if (!prerollPaused) { adsManager.pause(); prerollPaused = true; } } } return false; } function playYtVideo() { iinfoPrerollPosition.remove(); youtubeIframe.style.display = 'block'; youtubeIframe.src += '&autoplay=1&mute=1'; } }
OSZAR »