WaveUp એ એક એપ્લિકેશન છે જે તમારા ફોનને જાગૃત કરે છે - જ્યારે તમે નિકટતા સેન્સર પર વેવ કરો છો ત્યારે સ્ક્રીનને સ્વિચ કરે છે.
મેં આ એપ્લિકેશન વિકસાવી છે કારણ કે હું ઘડિયાળ પર એક નજર નાખવા માટે પાવર બટન દબાવવાનું ટાળવા માંગતો હતો - જે હું મારા ફોન પર ઘણું કરું છું. ત્યાં પહેલેથી જ અન્ય એપ્લિકેશનો છે જે બરાબર આ કરે છે - અને તેનાથી પણ વધુ. હું ગ્રેવીટી સ્ક્રીન ઓન/ઓફ દ્વારા પ્રેરિત હતો, જે એક મહાન એપ્લિકેશન છે. જો કે, હું ઓપન સોર્સ સોફ્ટવેરનો ખૂબ જ મોટો ચાહક છું અને જો શક્ય હોય તો મારા ફોન પર ફ્રી સોફ્ટવેર (સ્વતંત્રતાની જેમ ફ્રી, ફ્રી બીયરની જેમ ફ્રી જ નહીં) ઇન્સ્ટોલ કરવાનો પ્રયાસ કરું છું. હું ઓપન સોર્સ એપ્લિકેશન શોધી શક્યો ન હતો જેણે આ કર્યું હતું તેથી મેં તે જાતે કર્યું. જો તમને રસ હોય, તો તમે કોડ પર એક નજર નાખી શકો છો:
https://gitlab.com/juanitobananas/wave-up
સ્ક્રીનને ચાલુ કરવા માટે ફક્ત તમારા ફોનના પ્રોક્સિમિટી સેન્સર પર તમારો હાથ હલાવો. આને વેવ મોડ કહેવામાં આવે છે અને તમારી સ્ક્રીનના આકસ્મિક સ્વિચિંગને ટાળવા માટે સેટિંગ્સ સ્ક્રીનમાં તેને અક્ષમ કરી શકાય છે.
જ્યારે તમે તમારા ખિસ્સા અથવા પર્સમાંથી તમારો સ્માર્ટફોન કાઢો છો ત્યારે તે સ્ક્રીન પણ ચાલુ થશે. આને પોકેટ મોડ કહેવાય છે અને સેટિંગ્સ સ્ક્રીનમાં પણ તેને અક્ષમ કરી શકાય છે.
આ બંને મોડ્સ ડિફૉલ્ટ રૂપે સક્ષમ છે.
જો તમે એક સેકન્ડ (અથવા નિર્દિષ્ટ સમય) માટે પ્રોક્સિમિટી સેન્સરને કવર કરો છો તો તે તમારા ફોનને પણ લૉક કરે છે અને સ્ક્રીનને બંધ કરે છે. આનું કોઈ ખાસ નામ નથી પરંતુ તેમ છતાં સેટિંગ્સ સ્ક્રીનમાં પણ બદલી શકાય છે. આ ડિફૉલ્ટ રૂપે સક્ષમ નથી.
જેમણે પહેલાં ક્યારેય પ્રોક્સિમિટી સેન્સર સાંભળ્યું નથી તેમના માટે: તે એક નાનકડી વસ્તુ છે જે તમે ફોન પર બોલો ત્યારે તમારા કાનની નજીક ક્યાંક છે. તમે વ્યવહારીક રીતે તેને જોઈ શકતા નથી અને જ્યારે તમે કૉલ પર હોવ ત્યારે તમારા ફોનને સ્ક્રીન બંધ કરવાનું કહેવા માટે તે જવાબદાર છે.
અનઇન્સ્ટોલ કરો
આ એપ્લિકેશન ડિવાઇસ એડમિનિસ્ટ્રેટરની પરવાનગીનો ઉપયોગ કરે છે. તેથી તમે WaveUp 'સામાન્ય રીતે' અનઇન્સ્ટોલ કરી શકતા નથી.
તેને અનઇન્સ્ટોલ કરવા માટે, ફક્ત તેને ખોલો અને મેનૂના તળિયે 'અનઇન્સ્ટોલ વેવઅપ' બટનનો ઉપયોગ કરો.
જાણીતી સમસ્યાઓ
કમનસીબે, કેટલાક સ્માર્ટફોન પ્રોક્સિમિટી સેન્સર સાંભળતી વખતે CPU ને ચાલુ કરવા દે છે. આને વેક લૉક કહેવામાં આવે છે અને તેના કારણે બેટરીનો નોંધપાત્ર ઘટાડો થાય છે. આ મારી ભૂલ નથી અને હું આને બદલવા માટે કંઈ કરી શકતો નથી. અન્ય ફોન જ્યારે નિકટતા સેન્સરને સાંભળતા હોય ત્યારે સ્ક્રીન બંધ હોય ત્યારે "સ્લીપમાં" જશે. આ કિસ્સામાં, બેટરી ડ્રેઇન વ્યવહારીક શૂન્ય છે.
જરૂરી Android પરવાનગીઓ:
▸ સ્ક્રીન ચાલુ કરવા માટે WAKE_LOCK
▸ RECEIVE_BOOT_COMPLETED જો પસંદ કરેલ હોય તો બૂટ પર આપમેળે પ્રારંભ થાય છે
▸ કૉલ પર હોય ત્યારે WaveUp સસ્પેન્ડ કરવા માટે READ_PHONE_STATE
▸ કૉલ પર હોય ત્યારે બ્લૂટૂથ હેડસેટ્સ શોધવા અને WaveUp ને સસ્પેન્ડ ન કરવા માટે BLUETOOTH (અથવા Android 10 અને abve માટે BLUETOOTH_CONNECT)
▸ પૃષ્ઠભૂમિમાં ચાલતા રહેવા માટે REQUEST_IGNORE_BATTERY_OPTIMIZATIONS, FOREGROUND_SERVICE અને FOREGROUND_SERVICE_SPECIAL_USE (જે હંમેશા નિકટતા સેન્સરને સાંભળવા માટે WaveUp માટે મહત્વપૂર્ણ છે)
▸ Android 8 અને નીચેના માટે ઉપકરણને લૉક કરવા માટે USES_POLICY_FORCE_LOCK (આ સેટ કરેલ હોય તો વપરાશકર્તાને પેટર્ન અથવા પિનનો ઉપયોગ કરવાની ફરજ પાડે છે)
▸ BIND_ACCESSIBILITY_SERVICE (ઍક્સેસિબિલિટી API) Android 9 અને તેથી વધુ માટે સ્ક્રીન બંધ કરવા માટે.
▸ REQUEST_DELETE_PACKAGES પોતાને અનઇન્સ્ટોલ કરવા માટે (જો USES_POLICY_FORCE_LOCK નો ઉપયોગ કરવામાં આવ્યો હોય તો)
વિવિધ નોંધો
મેં લખેલી આ પ્રથમ એન્ડ્રોઇડ એપ્લિકેશન છે, તેથી સાવચેત રહો!
ઓપન સોર્સ વર્લ્ડમાં આ મારું પ્રથમ નાનું યોગદાન પણ છે. છેલ્લે!
જો તમે મને કોઈપણ પ્રકારનો પ્રતિસાદ આપી શકો અથવા કોઈપણ રીતે યોગદાન આપો તો મને ગમશે!
વાંચવા બદલ આભાર!
ઓપન સોર્સ રોક્સ!!!
અનુવાદો
જો તમે WaveUp ને તમારી ભાષામાં અનુવાદ કરવામાં મદદ કરી શકો તો તે ખરેખર સરસ રહેશે (અંગ્રેજી સંસ્કરણ પણ સંભવતઃ સુધારી શકાય છે).
તે Transifex પર બે પ્રોજેક્ટ તરીકે અનુવાદ માટે ઉપલબ્ધ છે: https://www.transifex.com/juanitobananas/waveup/ અને https://www.transifex.com/juanitobananas/libcommon/.
સ્વીકૃતિઓ
મારો ખાસ આભાર:
જુઓ: https://gitlab.com/juanitobananas/wave-up/#acknowledgments
આ રોજ અપડેટ કર્યું
31 ઑક્ટો, 2023