Eccoci con un nuovo appuntamento dell’iSpazio LastMinute, la nostra rubrica in cui vi elenchiamo le migliori applicazioni dell’AppStore che vengono scontate per un periodo di tempo limitato. E’ possibile che nel corso della giornata vengano aggiunti nuovi titoli per cui cliccate qui e scaricate iSpazio Push App per seguire le evoluzioni dell’articolo.

[lastminute_841446916] Si tratta di un nuovo gioco ambientato in un mondo astratto in cui bisogna raccogliere gocce di pioggia colorate e dai differenti suoni, trascinando e riordinando le torri corrispondenti, Un mondo di suoni e colori che garantisce un’esperienza immersiva. Comandi semplici, differenti modalità di gioco, bel gameplay! [finelm 2.99]
[lastminute_430576171] Avvincente gioco di oggetti nascosti. Alcuni banditi hanno derubato la banca di una città di provincia Sunnyvale. Noi vestiremo i panni del coraggioso Sceriffo Jack intento a scoprire tutto ciò che riguarda il caso per acciuffare la tremenda banda e recuperare il bottino. 32 ambientazioni in stile vecchio west, 5 mappe e supporto Game Center. [finelm 4.49]
[lastminute_904737816] Un gioco di strategia per iPhone, iPod touch e iPad. Questo terzo capitolo della serie Kingdome Rush è di certo il più accattivante della serie con tante novità e funzioni va assolutamente provato. [finelm 2.99]
[lastminute_375170575] Utile applicazione che funziona in abbinamento con un software sui computer Windows e permette di inoltrare i file ed i documenti da stampare dall’iPhone al computer, senza fili. [finelm 3.59]
[lastminute_691346630] Elegante e funzionale applicazione per la conversione di valute e unità di misura. E’ possibile personalizzarla al meglio in modo tale che soddisfi le proprie esigenze. Che siate studenti, uomini d’affari, viaggiatori o usiate ricette o facciate acquisti su negozi on-line, apprezzerete le funzionalità del convertitore Vert. Si adatta perfettamente al vostro iPhone, iPod touch o iPad. Design elegante, temi multicolor e una calcolatrice a portata di mano completano il profilo di questa utile applicazione. [finelm 4.49]
[lastminute_538278306] Potente elaboratore di testi, di facile utilizzo per iPad e iPhone, con un focus sulla long-form, per compiti di scrittura professionali quali relazioni, documenti di ricerca, e libri. UX Write è progettato specificamente per il fattore di forma mobile. Rende il testo cristallino adattato alle dimensioni dello schermo, ottimizzato per leggibilità. Con UX Write Basic Edition, è possibile: creare e modificare HTML e documenti di Microsoft Word, aggiungere voci, immagini, elenchi e tabelle in documenti, utilizzare la vista struttura per navigare in documenti di grandi dimensioni e sincronizzarsi con i servizi cloud come Dropbox, Google Drive, Microsoft OneDrive, Box e server WebDAV. [finelm 21.99]
[lastminute_757864890] Si tratta di un divertente gioco ambientato in un set di tre luoghi diversi e in un periodo in cui le macchine oramai sono obsolete. Il protagonista, un papero, dovrà governare un cubo metallico dotato di uno scudo e un fucile cercando di combattere nemici di diverso tipo! Che cosa ne verrà fuori? [finelm 2.99]
[lastminute_835446337] Un client Evernote per iPhone che oltre a rendere veloce il processo di creazione di nuove note e reminders, mostra tute le tue note su una mappa geolocalizzandole. Semplice ed estremamente funzionale. [finelm 2.69]
[lastminute_888786749] Rilassatevi ascoltando i suoni di una tenue pioggerellina o di un intenso temporale nelle foreste, nelle campagne e nelle città del mondo. Ascoltate il rilassante ticchettio della pioggia che batte su tende, ombrelli, tetti, templi, lucernari e altro ancora. Potete mixare 6 diversi suoni di pioggia per creare la vostra combinazione perfetta. Un’applicazione per rilassarsi, concentrarsi, distendere la mente, migliorare la produttività o addormentarsi. [finelm 1.79]
[lastminute_369626098] Uno strumento utile, veloce e affidabile che ci permette di collegarci in remoto al nostro computer direttamente da iPhone, iPad ed iPod touch grazie a VNC. Recentemente è stata introdotta anche la possibilità di connettersi al proprio computer anche tramite RDP, SSH e Telnet, dopo aver acquistato queste funzioni attraverso un IAP. Compatibile con tutti i dispositivi iOS. Una navigazione fluida con un’interfaccia grafica comoda, diverse tastiere internazionali e controlli intuitivi. Come già accennato, infine, è presente il supporto a tutti i sistemi operativi. [finelm 3.59]
[lastminute_331441694] Nota: Essendo “offerte da prendere al volo”, i prezzi indicati nell’articolo risultano veritieri nel momento in cui viene scritto ma è possibile che durante la giornata, o dopo qualche minuto, questi cambino e le applicazioni tornino a pagamento. Vi consigliamo di scaricare iSpazio Push App dall’AppStore in maniera tale da essere avvertiti tramite una notifica push non appena pubblicheremo i nostri LastMinute quotidiani.[finelm 0.00]
Fateci sapere quali scaricate in maniera tale da riuscire a trarre uno spunto per una recensione più completa ed accurata.
// Logica completa dello shortcode 'app' function appstore_shortcode_logic($atts, $content = null) { // Attributi di default $atts = shortcode_atts(array( 'id' => '', 'img' => '', 'nome' => '', 'sottotitolo' => '', 'prezzo' => '', 'link' => '', 'store' => 'App Store', 'template' => '', 'inapp' => '', 'background' => '', 'link_icon' => '', ), $atts, 'card'); // Verifica del valore dell'attributo 'stile' $template_class = !empty($atts['template']) ? sanitize_html_class($atts['template']) : ''; // Verifica se il file JSON della cache esiste $cache_dir = '/srv/www/ispazio.net/www/wp-content/plugins/appstore_ispazio/app_cache/'; $cache_file = $cache_dir . "app_" . sanitize_key($atts['id']) . ".json"; // Determina se la cache è valida: JSON esiste, non scaduto E icona principale esiste sul disco $_app_id_check = sanitize_key($atts['id']); $_img_main_path = $cache_dir . "icon250_" . $_app_id_check . ".jpg"; $_cache_valid = file_exists($cache_file) && filesize($cache_file) > 0 && time() - filemtime($cache_file) < 31557600 && file_exists($_img_main_path); if ($_cache_valid) { $json = file_get_contents($cache_file); } else { // Interroga l'API di App Store e scarica il JSON utilizzando cURL $itunes_api_base = "https://itunes.apple.com/lookup?id=" . sanitize_key($atts['id']); $country_list = ['IT', 'US']; // puoi aggiungere altri paesi se vuoi $json = ''; $data = []; foreach ($country_list as $country) { $itunes_api_url = $itunes_api_base . "&country=" . $country; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $itunes_api_url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0"); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Accept: application/json')); $json = curl_exec($ch); curl_close($ch); $data = json_decode($json, true); if (!empty($data['results'])) { break; // abbiamo trovato un risultato valido, fermiamo il ciclo } } if (isset($data['results'][0]['artworkUrl100'])) { $original_image_url = $data['results'][0]['artworkUrl100']; $new_image_url = str_replace('100x100bb.jpg', '250x250bb.jpg', $original_image_url); // Scarica e salva l'immagine dell'artwork sul tuo server $image_id = sanitize_key($atts['id']); $image_path = $cache_dir . "icon250_" . $image_id . ".jpg"; file_put_contents($image_path, file_get_contents($new_image_url)); if (function_exists('ispazio_convert_to_modern')) ispazio_convert_to_modern($image_path); // Modifica il JSON con l'URL dell'immagine dell'artwork sul tuo server $data['results'][0]['artworkUrl100'] = "https://www.ispazio.net/wp-content/plugins/appstore_ispazio/app_cache/icon250_" . $image_id . ".jpg"; // Crea anche versione 140px per template mini (retina 2x per 70x70) $icon140_path = $cache_dir . "icon140_" . $image_id . ".jpg"; if ( ! file_exists( $icon140_path ) && function_exists( 'imagecreatefromjpeg' ) ) { $src_img = @imagecreatefromjpeg( $image_path ); if ( $src_img ) { $dst_img = imagecreatetruecolor( 140, 140 ); imagecopyresampled( $dst_img, $src_img, 0, 0, 0, 0, 140, 140, imagesx( $src_img ), imagesy( $src_img ) ); imagejpeg( $dst_img, $icon140_path, 85 ); imagedestroy( $src_img ); imagedestroy( $dst_img ); if (function_exists('ispazio_convert_to_modern')) ispazio_convert_to_modern($icon140_path); } } // Sostituisci anche gli URL delle prime 4 immagini degli screenshot if (isset($data['results'][0]['screenshotUrls'])) { $screenshotUrls = $data['results'][0]['screenshotUrls']; $screenshotUrlsOnServer = array(); for ($i = 0; $i < min(count($screenshotUrls), 4); $i++) { $screenshotUrl = $screenshotUrls[$i]; $screenshotFilename = basename($screenshotUrl); $screenshotSavePath = $cache_dir . "screenshot_" . $image_id . "_" . $i . ".jpg"; // Scarica e salva l'immagine dello screenshot sul tuo server file_put_contents($screenshotSavePath, file_get_contents($screenshotUrl)); if (function_exists('ispazio_convert_to_modern')) ispazio_convert_to_modern($screenshotSavePath); // Modifica il JSON con l'URL dell'immagine dello screenshot sul tuo server $screenshotUrlsOnServer[] = "https://www.ispazio.net/wp-content/plugins/appstore_ispazio/app_cache/screenshot_" . $image_id . "_" . $i . ".jpg"; } // Aggiorna il JSON con gli URL delle immagini degli screenshot sul tuo server $data['results'][0]['screenshotUrls'] = $screenshotUrlsOnServer; } } // Salva il JSON nella cache solo se non è vuoto if (!empty($json)) { file_put_contents($cache_file, json_encode($data)); } } // Decodifica il JSON $data = json_decode($json, true); // Se il "nome" non è specificato nell'attributo, usa il trackName dal JSON $nome = isset($atts['nome']) && !empty($atts['nome']) ? $atts['nome'] : ($data['results'][0]['trackName'] ?? 'Scarica da App Store'); // Se il "sottotitolo" non è specificato nell'attributo, usa artistName dal JSON $sottotitolo = isset($atts['sottotitolo']) && !empty($atts['sottotitolo']) ? $atts['sottotitolo'] : ($data['results'][0]['artistName'] ?? ''); // Se il "prezzo" non è specificato nell'attributo, usa il formattedPrice dal JSON $formattedPrice = !empty($data['results'][0]['formattedPrice']) ? $data['results'][0]['formattedPrice'] : null; $prezzo = !empty($atts['prezzo']) ? $atts['prezzo'] : (!empty($formattedPrice) ? $formattedPrice : (!empty(trim($content)) ? trim($content) : 'OTTIENI')); // Se l'URL dell'immagine non è specificato nell'attributo, usa quello dal JSON $hide_image_class = ''; $card_body_style = ''; $container_style = ''; $container_extra_class = ''; if (isset($atts['img']) && trim($atts['img']) === 'scontiamolo') { $img = 'https://www.ispazio.net/wp-content/plugins/appstore_ispazio/app_cache/icon250_1506946624.jpg'; $container_extra_class = 'scontiamolo-mode'; } elseif (!empty($atts['img'])) { $img = $atts['img']; } else { $img = $data['results'][0]['artworkUrl100'] ?? "https://www.ispazio.net/wp-content/uploads/2022/10/appstore_icon.png"; } // Per template mini usa icon140 (70x70 retina) invece di icon250 if ( $template_class === 'mini' ) { $img = str_replace( 'icon250_', 'icon140_', $img ); } // Genera il link dell'app su App Store $link = !empty($atts['link']) ? $atts['link'] : "https://apps.apple.com/it/app/id" . $atts['id'] . "?platform=iphone"; $link_icon = !empty($atts['link_icon']) ? $atts['link_icon'] : $link; // HTML immagine con o senza effetto rotazione (in base a template) $img_html = ''; if (!empty($img)) { if ($template_class === 'striscia') { $img_html = '


























































































































































































































































I commenti sono chiusi per questo articolo.
0 Commenti