WaveUp är en app som väcker din telefon - sätter på skärmen - när du viftar över närhetssensorn.
Jag har utvecklat den här appen för att jag ville slippa trycka på strömknappen bara för att ta en titt på klockan – vilket jag råkar göra mycket på min telefon. Det finns redan andra appar som gör just detta – och ännu mer. Jag inspirerades av Gravity Screen On/Off, som är en bra app. Jag är dock ett stort fan av programvara med öppen källkod och försöker installera gratis programvara (gratis som i frihet, inte bara gratis som i gratis öl) på min telefon om det är möjligt. Jag kunde inte hitta en app med öppen källkod som gjorde detta så jag gjorde det bara själv. Om du är intresserad kan du ta en titt på koden:
https://gitlab.com/juanitobananas/wave-up
Vifta bara med handen över närhetssensorn på din telefon för att slå på skärmen. Detta kallas vågläge och kan inaktiveras på inställningsskärmen för att undvika att din skärm slås på av misstag.
Den kommer också att slå på skärmen när du tar upp din smartphone ur fickan eller handväskan. Detta kallas fickläge och kan även inaktiveras på inställningsskärmen.
Båda dessa lägen är aktiverade som standard.
Den låser även din telefon och stänger av skärmen om du täcker över närhetssensorn i en sekund (eller en viss tid). Detta har inget speciellt namn men kan ändå ändras i inställningsskärmen också. Detta är inte aktiverat som standard.
För dig som aldrig har hört närhetssensorn förut: det är en liten sak som är någonstans nära där du lägger örat när du pratar i telefon. Du kan praktiskt taget inte se den och den är ansvarig för att tala om för din telefon att stänga av skärmen när du har ett samtal.
Avinstallera
Den här appen använder behörigheten Enhetsadministratör. Därför kan du inte avinstallera WaveUp "normalt".
För att avinstallera det, öppna det bara och använd knappen 'Avinstallera WaveUp' längst ned i menyn.
Kända problem
Tyvärr släpper vissa smartphones processorn på medan de lyssnar på närhetssensorn. Detta kallas ett wake lock och orsakar avsevärd batteriförbrukning. Det här är inte mitt fel och jag kan inte göra något för att ändra detta. Andra telefoner kommer att "gå i viloläge" när skärmen stängs av medan de fortfarande lyssnar på närhetssensorn. I det här fallet är batteriförbrukningen praktiskt taget noll.
Nödvändiga Android-behörigheter:
▸ WAKE_LOCK för att slå på skärmen
▸ RECEIVE_BOOT_COMPLETED för automatisk start vid uppstart om det väljs
▸ READ_PHONE_STATE för att stänga av WaveUp under ett samtal
▸ BLUETOOTH (eller BLUETOOTH_CONNECT för Android 10 och äldre) för att upptäcka Bluetooth-headset under ett samtal och inte stänga av WaveUp
▸ REQUEST_IGNORE_BATTERY_OPTIMIZATIONS, FOREGROUND_SERVICE och FOREGROUND_SERVICE_SPECIAL_USE för att fortsätta köra i bakgrunden (vilket är avgörande för WaveUp för att alltid kunna lyssna på närhetssensorn)
▸ USES_POLICY_FORCE_LOCK för att låsa enheten för Android 8 och lägre (detta tvingar användaren att använda ett mönster eller nål om det är inställt)
▸ BIND_ACCESSIBILITY_SERVICE (Accessibility API) för att stänga av skärmen för Android 9 och senare.
▸ REQUEST_DELETE_PACKAGES för att avinstallera sig själv (om USES_POLICY_FORCE_LOCK användes)
Övriga anteckningar
Detta är den första Android-appen jag någonsin har skrivit, så se upp!
Detta är också mitt första lilla bidrag till världen med öppen källkod. Till sist!
Jag skulle älska om du kunde ge mig feedback av något slag eller bidra på något sätt!
Tack för att du läser!
Öppen källkod stenar!!!
Översättningar
Det skulle vara riktigt coolt om du kunde hjälpa till att översätta WaveUp till ditt språk (även den engelska versionen skulle förmodligen kunna revideras).
Det är tillgängligt för översättning som två projekt på Transifex: https://www.transifex.com/juanitobananas/waveup/ och https://www.transifex.com/juanitobananas/libcommon/.
Bekräftelser
Mitt särskilt tack till:
Se: https://gitlab.com/juanitobananas/wave-up/#acknowledgments
Uppdaterades den
16 juli 2024