Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Ruby

अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं

आपको इंटरनेट पर कुछ बहुत लंबे URL (यूनिफ़ॉर्म रिसोर्स लोकेटर) मिलेंगे। कई साइटें आपके विज़िट के बारे में URL में जानकारी डालती हैं:भाषा, स्थान, पहचान, विशेष के लिए संदर्भ कोड, और कई अन्य आइटम जैसे आइटम। यह बहुत लंबे URL बनाता है।

अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं
CodeCanyon पर प्रीमियम URL शॉर्टनर

प्रीमियम URL शॉर्टनर कोड कैन्यन . पर लंबे URL को छोटा बनाने का एक तरीका है। इस ट्यूटोरियल में, मैं आपको दिखाऊंगा कि अपने सिस्टम पर अपना खुद का यूआरएल शॉर्टनर कैसे सेट करें और इसका इस्तेमाल कैसे करें।

यूआरएल शॉर्टनर क्या है?

जब भी आप इंटरनेट ब्राउज़ करते हैं तो आप URL का उपयोग करते हैं। यह विशेष वेब पेज और सामग्री की पहचान करता है। चूंकि इनमें अक्सर किसी प्रपत्र या खोज इंजन के लिए पैरामीटर हो सकते हैं, इसलिए ये URL काफी बड़े हो सकते हैं।

https://tutsplus.com/tutorials/search/How%20to%20Draw%20Animals:%20Horses,%20Their%20Anatomy%20and%20Poses

यह URL "जानवरों को कैसे आकर्षित करें:घोड़े, उनकी शारीरिक रचना और पोज़" स्ट्रिंग के लिए Tuts+ वेबसाइट खोजने के लिए है। यह स्ट्रिंग 74 वर्ण लंबी है। मैंने ऐसे URL देखे हैं जो 200 वर्णों से अधिक लंबे हैं।

https://bit.ly/2oO8BqO

जब आप किसी URL को छोटा करने वाली सेवा का उपयोग करते हैं, जैसे bit.ly , आपको बहुत छोटा URL मिलता है। वही URL अब 15 वर्ण लंबा है। जब कोई इस लिंक को ब्राउज़ करता है, तो bit.ly सर्वर ब्राउज़र को पूर्ण URL पर पुनर्निर्देशित करता है। एक अलग यूआरएल पर अतिरिक्त लुकअप साइट लोड समय में देरी करता है, लेकिन ज्यादा नहीं।

डॉकर इंस्टॉल करना

स्थानीय सर्वर बनाने का सबसे आसान तरीका वर्चुअलाइज्ड वातावरण का उपयोग करना है। लेकिन एक पूर्ण सिस्टम वर्चुअलाइज़र चलाना बहुत संसाधन गहन है। डॉकटर टर्मिनल-आधारित सिस्टम के लिए एक न्यूनतम वर्चुअलाइज़र है। आप कम सिस्टम संसाधनों का उपयोग करके एक डॉकर कंटेनर (एक छोटा यूनिक्स सर्वर) चला सकते हैं।

अपने सिस्टम पर कंटेनर चलाने के लिए, आपको डॉकर . इंस्टॉल करना होगा . डॉकर . से अपने ऑपरेटिंग सिस्टम के लिए उचित डाउनलोड का चयन करें वेबसाइट।

डॉकर स्थापित होने के साथ, आपको अपने द्वारा बनाई जा रही वेब सेवा को देखने के लिए अपना सिस्टम तैयार करने की आवश्यकता है। ऐसा करने के लिए, आपको सिस्टम फ़ाइल को बदलना होगा। /etc/hosts . में Linux या macOS सिस्टम के लिए और c:\windows\System32\drivers\etc\lmhosts में फ़ाइल Windows सिस्टम के लिए फ़ाइल, यह कथन डालें:

127.0.0.1 s.dev

यह परिवर्तन https://s.dev . के सभी संदर्भ बना देगा स्थानीय प्रणाली पर जाएं। यह सेवा को कॉन्फ़िगर करने का प्रयास करने से पहले एक उचित होस्टनाम देने के लिए किया जाता है।

अपना विकास क्षेत्र बनाने के लिए, एक निर्देशिका बनाएं और प्रीमियम URL शॉर्टनर . रखें इसमें zip फाइल करें और इसे एक्सपैंड करें। तब आपके पास यह निर्देशिका संरचना होनी चाहिए:

अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं
निर्देशिका संरचना

यह दस्तावेज़ main.zip . फ़ाइल के साथ है . इस फ़ाइल को भी विस्तृत करें। एक बार जब आप इसका विस्तार कर लेते हैं, तो आपके पास यह निर्देशिका संरचना होनी चाहिए:

अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं
कोड के साथ निर्देशिका संरचना

main.zip फ़ाइल में सेवा के लिए सभी स्रोत कोड फ़ाइलें और संसाधन शामिल हैं। यह वह निर्देशिका होगी जिसे आप डॉकर इंस्टेंस में जोड़ेंगे।

अब आपको फ़ौरिया से डॉकर लैंप स्टैक प्राप्त करने की आवश्यकता है। डॉकर के चलने के साथ, टर्मिनल में निम्नलिखित टाइप करें:

docker pull fauria/lamp

यह आपके डॉकर इंस्टॉलेशन में फ़ौरिया लैंप (लिनक्स, अपाचे, माईएसक्यूएल, और पीएचपी) स्टैक डाउनलोड करेगा। एक बार डाउनलोड हो जाने पर, आप इसके साथ कंटेनर बना सकते हैं:

docker run --rm --name linkshort -p 80:80 -e LOG\_STDOUT=true -e LOG\_STDERR=true -e LOG\_LEVEL=debug -v {{service source directory}}:/var/www/html fauria/lamp

{{service source directory}} बदलें निर्देशिका के पूर्ण पथ के साथ जिसमें सभी स्रोत फ़ाइलें और संसाधन शामिल हैं। यह कमांड linkshort . नाम का एक कंटेनर बनाता है जो पोर्ट 80 पर काम करता है और सभी त्रुटि और लॉग संदेशों को मानक आउट देता है।

अभी, हर बार जब आप कंटेनर को रोकते और फिर से लॉन्च करते हैं, तो आप अपनी सारी जानकारी खो देंगे। प्रत्येक रीबूट के साथ इसे संरक्षित करने के लिए आपको डेटाबेस जानकारी को अपने स्रोत कोड निर्देशिका में ले जाने की आवश्यकता है। टर्मिनल विंडो में, ये कमांड निष्पादित करें:

docker exec -i -t linkshort bash
mkdir /var/www/html/data
cp -R /var/lib/MySQL/* /var/www/html/data
exit

पहला कमांड कंटेनर के लिए एक बैश शेल खोलता है। दूसरा कमांड डायरेक्टरी बनाता है data आपके स्रोत कोड निर्देशिका में। कंटेनर स्रोत कोड निर्देशिका को /var/www/html . के रूप में देखता है निर्देशिका। तीसरा कमांड डेटाबेस की जानकारी को उस डायरेक्टरी में कॉपी करता है। exit कमांड आपको कंटेनर से बाहर निकालता है।

अब कंटेनर का उपयोग बंद कर दें:

docker stop linkshort

हर बार जब आप कंटेनर को रोकना चाहते हैं तो आप इस कमांड का उपयोग करेंगे।

अब, उचित डेटा निर्देशिका का उपयोग करके कंटेनर को पुनः आरंभ करने के लिए, इस कमांड का उपयोग करें:

docker run --rm --name linkshort -p 80:80 -e LOG\_STDOUT=true -e LOG\_STDERR=true -e LOG\_LEVEL=debug -v {{service source directory}}:/var/www/html -v {{service source directory}}/data:/var/lib/mysql fauria/lamp

इस बार आपने अपने कंप्यूटर पर अब संग्रहीत डेटाबेस डेटा का उपयोग करके मैरिएनडीबी सर्वर के साथ कंटेनर बनाया है। यह वह आदेश है जिसका उपयोग आप सेवा शुरू करने के लिए करेंगे। मैं कीबोर्ड विस्तारक का उपयोग करता हूं टाइपिनेटर मेरे लिए इसे टाइप करने के लिए।

अब, URL शॉर्टनर के लिए डेटाबेस बनाने की आवश्यकता है। आपको कंटेनर में एक खोल भी खोलना होगा। एक नए टर्मिनल उदाहरण में, निम्न कमांड टाइप करें:

docker exec -i -t linkshort bash

यह कमांड कंटेनर में बैश शेल बनाता है। यदि आपको कंटेनर में कुछ समायोजित करने की आवश्यकता है, तो यह वह आदेश है जिसका आप उपयोग करेंगे। इसके बाद, MarianDB प्रोग्राम में एक कमांड शेल खोलें:

mysql -u root

अब, आप MarianDB में डेटाबेस बना सकते हैं और वेब सर्वर को इसे एक्सेस करने की अनुमति दे सकते हैं:

create database urlshort;
create user 'www-data'@'localhost' identified by '{{password}}';
grant all on urlshort.\* to 'www-data'@'localhost';
quit;

{{password}} उस पासवर्ड पर सेट करने की आवश्यकता है जिसे आप डेटाबेस के उपयोगकर्ता को देना चाहते हैं। इसे याद रखें क्योंकि आप इसका उपयोग सेवा को कॉन्फ़िगर करने के लिए करेंगे।

कंटेनर में चल रही सेवा के साथ, अपने वेब ब्राउज़र को https://s.dev . पर खोलें ।

अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं
आवश्यकता जांच पृष्ठ

यदि आपने कॉन्फ़िगरेशन किया है, तो आपको यह पृष्ठ देखना चाहिए। यह पृष्ठ URL शॉर्टनर सेवा की आवश्यकताओं और आपके सेटअप की स्थिति को दर्शाता है। डॉकर में फ़ौरिया कंटेनर का उपयोग करके, आप पहले से ही सभी निर्भरताएं पूरी कर चुके हैं। पृष्ठ के नीचे नीले बटन पर क्लिक करें।

अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं
डेटाबेस कॉन्फ़िगरेशन पेज

दिखाया गया अगला पृष्ठ सेवा के लिए कॉन्फ़िगरेशन फ़ाइल निर्माता है। यह पृष्ठ आपको प्रोग्राम को आपके द्वारा पहले बनाए गए डेटाबेस के लिए नाम और पासवर्ड देने की अनुमति देता है।

अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं
डेटाबेस कॉन्फ़िगरेशन पृष्ठ विवरण

जैसा कि ऊपर दिखाया गया है, आपको इन क्षेत्रों को भरना होगा। डेटाबेस होस्ट कंटेनर के लिए लोकलहोस्ट है। डेटाबेस का नाम urlshortहै , जिसे आपने सेटअप में बनाया है। डेटाबेस उपयोगकर्ता www-data है , और पासवर्ड वह है जिसे आपने आरंभिक डेटाबेस सेटअप में असाइन किया था। डेटाबेस उपसर्ग सेवा के लिए बनाए गए प्रत्येक डेटाबेस का आरंभिक नाम है। मैंने short_ का इस्तेमाल किया . स्थापना प्रोग्राम सुरक्षा कुंजी सेट करता है . भविष्य के संदर्भ के लिए दी गई कुंजी की एक प्रति अपने पास रखें।

यदि आप इसे किसी वर्चुअल प्राइवेट सर्वर (VPS) पर स्थापित करते हैं, तो ये मान उस सेवा के अनुसार होंगे। कुछ वही होंगे, और कुछ बदलेंगे।

उचित जानकारी के साथ, चरण 3 पर जाने के लिए पृष्ठ के निचले भाग में नीला बटन दबाएं।

अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं
बुनियादी कॉन्फ़िगरेशन पेज

मूल कॉन्फ़िगरेशन स्क्रीन आपको व्यवस्थापक उपयोगकर्ता नाम, ईमेल और पासवर्ड सेट करने की अनुमति देती है। इन्हें उन मूल्यों पर सेट करें जो आपसे संबंधित हैं। साइट URL https://s.dev . पर सेट करने की आवश्यकता है जैसा कि आप अपने hosts . में सेट अप करते हैं फ़ाइल पहले। एक बार सेट हो जाने पर, स्क्रीन के नीचे नीले बटन को दबाएं।

अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं
इंस्टॉलेशन पूरा पेज

अगली स्क्रीन आपको बताती है कि सेवा अब सेट हो गई है। नीले बटन को दबाएं जो कहता है Delete install.php . यह वास्तविक वेब सर्वर पर उपयोग करने के लिए एक सुरक्षा सुविधा है, लेकिन स्थानीय स्थापना के लिए इसकी आवश्यकता नहीं है। हालांकि, इंस्टॉलेशन तब तक पूरा नहीं होगा जब तक आप इसे पूरा नहीं कर लेते।

अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं
प्रीमियम यूआरएल शॉर्टनर फ्रंट पेज

बधाई - सेवा कार्यशील है! आपको ऊपर दी गई स्क्रीन देखनी चाहिए। यदि आप लंबा url पेस्ट करें . नामक इनपुट फ़ील्ड में एक लंबा URL देते हैं और फिर नीला बटन दबाएं छोटा करें , आपको उपयोग करने के लिए एक छोटा URL मिलेगा। यूआरएल भविष्य के संदर्भ के लिए डेटाबेस में भी होगा। यह सुविधा एक बेहतरीन बुकमार्कर बनाती है।

एपीआई का उपयोग करना

अब जब आपकी URL शॉर्टनर सेवा चल रही है, तो आप इसका अच्छा उपयोग करना चाहेंगे। लेकिन हमेशा एक वेब पेज खोलना, यहां तक ​​कि एक स्थानीय पेज खोलना, आपको धीमा कर देगा। आपको इसे और तेज करने की जरूरत है। यहीं पर एपीआई (एप्लिकेशन प्रोग्रामिंग इंटरफेस) का उपयोग करना मददगार होता है। आप एपीआई के लिए पूरा दस्तावेज़ देख सकते हैं।

सेवा चलने के साथ, पेज खोलें https://s.dev/user/settings

अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं
खाता सेटिंग पेज

इस पेज को देखने के लिए आपको अपने खाते में लॉग इन करना होगा। साइडबार में नीचे दाईं ओर, आप देखेंगे आपकी API कुंजी: अल्फा-न्यूमेरिक नंबर के साथ। उस नंबर को कॉपी करके सेव कर लें। यह नंबर एपीआई को एक्सेस देता है।

एपीआई का उपयोग करने के लिए, आप एक रूबी . बना सकते हैं इसे एक्सेस करने का कार्यक्रम। MacOS और Linux पर, रूबी आमतौर पर पहले से इंस्टॉल होती है। विंडोज़ पर, आपको इसे इंस्टॉल करना होगा।

रूबी में एक छोटा लिंक बनाने के लिए न्यूनतम कार्यक्रम है:

require 'net/http'
require 'json'

API = '{YourAPIKey}'

short = JSON.parse(Net::HTTP.get('s.dev', '/api?api=' + API + '&url=' + ARGV[0]))
if short["error"] == 0 then
  print short["short"]
else
  print "An error happened:  "
  print short["error"]
  print "\n"
end

स्क्रिप्ट को shortener.rb . नाम की फाइल में सेव करें , {YourAPIKey} . को बदलें एपीआई कुंजी के साथ जिसे आपने पहले कॉपी किया था, और कमांड लाइन में निम्नलिखित चलाएँ:

ruby shortener.rb 'google.com'

आपको उस URL के लिए एक छोटा लिंक मिलना चाहिए। यह संक्षिप्त URL बनाता है, लेकिन फिर भी सुविधाजनक नहीं है।

पॉपक्लिप एक्सटेंशन बनाना

Mac पर, पॉपक्लिप हाइलाइट किए गए टेक्स्ट को प्रोसेस करने के लिए एक बहुत छोटा प्रोग्राम है। संक्षिप्त लिंक बनाना आसान बनाने के लिए, आप एक पॉपक्लिप एक्सटेंशन बनाएंगे। मैं एक्सटेंशन बनाने के बारे में सब कुछ नहीं बताऊंगा, लेकिन आप इसे करने के यांत्रिकी के बारे में मेरे ट्यूटोरियल पॉपक्लिप:स्क्रिप्टिंग एक्सटेंशन में पढ़ सकते हैं। ।

PremiumURLShortener.popclipext . नामक एक पॉपक्लिप एक्सटेंशन बनाएं . Config.plist के लिए निम्न का उपयोग करें एक्सटेंशन निर्देशिका के अंदर फ़ाइल:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "https://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Actions</key>
	<array>
		<dict>
			<key>After</key>
			<string>paste-result</string>
            <key>Image File</key>
            <string>PremiumURLShortener.png</string>
            <key>Script Interpreter</key>
            <string>/usr/bin/ruby</string>
            <key>Shell Script File</key>
            <string>PremiumURLShortener.rb</string>
            <key>Title</key>
            <string>Shortener</string>
		</dict>
	</array>
	<key>Options</key>
	<array>
		<dict>
			<key>Option Identifier</key>
			<string>apikey</string>
			<key>Option Type</key>
			<string>string</string>
			<key>Option Label</key>
			<string>API Key: </string>
		</dict>
	</array>
	<key>Credits</key>
	<array>
	    <dict>
	        <key>Name</key>
	        <string>Richard Guay</string>
	        <key>Link</key>
	        <string>https://customct.com</string>
	    </dict>
	</array>
	<key>Extension Description</key>
	<string>Create shortened URLs with PremiumURLShortener locally</string>
	<key>Extension Identifier</key>
	<string>com.customct.popclip.extension.premiumurlshortener</string>
	<key>Extension Name</key>
	<string>Shortener</string>
	<key>Required Software Version</key>
	<integer>701</integer>
</dict>
</plist>

फिर PremiumURLShortener.rb . नामक एक्सटेंशन के लिए स्क्रिप्ट फ़ाइल बनाएं और इसमें यह कोड डालें:

#!/usr/bin/ruby

require 'net/http'
require 'json'

Encoding.default_internal = Encoding::UTF_8
Encoding.default_external = Encoding::UTF_8

input = ENV['POPCLIP_TEXT'].to_s.strip()
API = ENV['POPCLIP_OPTION_APIKEY'].to_s.strip()

short = JSON.parse(Net::HTTP.get('s.dev', '/api?api=' + API + '&url=' + input))
if short["error"] == 0 then
  print short["short"]
else
  print "An error happened:  "
  print short["error"]
  print "\n"
end

जब आप नया एक्सटेंशन लोड करते हैं, तो यह API कुंजी मांगेगा। एक बार जब आप इसे API कुंजी दे दें और ठीक है press दबाएं , यह पॉपक्लिप में प्रयोग करने योग्य है।

अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं अपनी खुद की स्थानीय प्रीमियम यूआरएल शॉर्टनर सेवा कैसे बनाएं
पॉपक्लिप के साथ URL को छोटा करना

जब आप किसी लिंक का चयन करते हैं, तो पॉपक्लिप विकल्पों की सूची के साथ खुल जाएगा। फिर आप छोटा करें . चुनें विकल्प। यह कुछ समय के लिए सोचेगा और फिर उचित छोटा URL पेस्ट करेगा। पूर्ण विस्तार इस ट्यूटोरियल के डाउनलोड में है। अब, आप और भी बहुत कुछ करने के लिए तैयार हैं!

निष्कर्ष

न केवल अब आपके पास एक निजी यूआरएल शॉर्टनर है, आप यह भी जानते हैं कि स्थानीय कंटेनर चलाने के लिए डॉकर का उपयोग कैसे करें, आपके द्वारा उपयोग किए जाने वाले यूआरएल का ट्रैक रखने का एक आसान तरीका और संक्षिप्त लिंक बनाने का एक तरीका।

आप रूबी स्क्रिप्ट का उपयोग अल्फ्रेड 3 . के साथ कर सकते हैं या कीबोर्ड मेस्ट्रो भी। अपनी नई सेवा का उपयोग करने और इसकी अन्य सुविधाओं के साथ प्रयोग करने का आनंद लें।


  1. अपना खुद का सीज़र सिफर एनकोडर कैसे लिखें

    क्या आपने कभी सीज़र सिफर . के बारे में सुना है ? जूलियस सीजर ने इस तकनीक का इस्तेमाल अपने दुश्मनों से गुप्त संदेश छुपाने के लिए किया था! सीज़र सिफर सबसे आदिम एन्क्रिप्शन तकनीकों में से एक है। इस प्रणाली के पीछे मुख्य विचार अक्षरों को घुमाना . है वर्णमाला पर पदों की एक x संख्या । उदाहरण के लिए, x

  1. MacOS पर अपने खुद के डायनामिक वॉलपेपर कैसे बनाएं

    यदि आपके पास कुछ समय के लिए macOS कंप्यूटर है, तो आपको पता चल जाएगा कि डायनेमिक वॉलपेपर क्या हैं। ये वे हैं जो दिन के किस समय के आधार पर बदलते हैं। तो रात के दौरान एक गहरा वॉलपेपर दिखाई देगा जबकि एक हल्का वॉलपेपर दिन के दौरान दिखाई देगा। अगर आप रात में वेब ब्राउजिंग कर रहे हैं तो यह बेहद मददगार हो

  1. iOS 12 बीटा में अपना खुद का मेमोजी कैसे बनाएं

    अंत में, इंतजार खत्म हो गया है और उपयोगकर्ताओं के लिए सबसे प्रतीक्षित आईओएस अपडेट का बीटा संस्करण डाउनलोड करने के लिए बाहर है। नया अपडेट कई अद्भुत विशेषताएं लाता है जिन्हें आप लंबे समय से iOS उपकरणों में ढूंढ रहे थे। लेकिन कुछ ऐसा भी है जिसकी उम्मीद नहीं थी। ऐप्पल अब एनिमोजी को मेमोजी के साथ अगले स्