Skapa en varning för internetdelning "inget nätverk" med Tasker. Det kommer att meddela dig när din anslutning avbryts. Aviseringar för wearables och anslutna enheter
Från förra artikeln vet du att jag spenderar en hel del av min tid på ett tåg. Det är ett utmärkt tillfälle att skriva en artikel eller två, förutsatt att jag har tillgång till Internet för att leta upp fakta och idéer. Tethering kan vara knepigt på tåget, eftersom mottagningslösa områden är utspridda över min rutt. Jag tycker det är ganska lätt att säga att jag är på väg att gå offline när jag är i en tunnel, men situationen är mindre uppenbar när tåget kryssar genom de öppna ängarna i North Yorkshire. Androids inbyggda internetdelningslösning har inget sätt att meddela dig att du inte kommer att kunna ladda den webbplatsen under de kommande 5 minuterna.
Det var därför jag, som en Tasker-aficionado, tänkte på hur jag skulle lösa mitt problem med den populära automationsappen för Android. Jag har löst mitt problem genom att skapa en varning för internetdelning "inget nätverk" med Tasker. Målet med projektet är att låta dig veta när din telefon inte längre är inom mobilnätets räckvidd. Detta kommer att göras på 3 sätt:
- Använda aviserings-LED (bäst för när du kopplar till vänner)
- Använda en smartphone-ikon (behöver en smartklocka)
- Använda en Join-push (bäst för personliga enheter -kan ersättas med AutoRemote)
Du kan bli mer kreativ med aviseringar, men jag kommer bara att använda diskreta alternativ eftersom internetdelning med största sannolikhet kommer att användas på offentliga platser. Ingen gillar vidriga meddelanden, eller hur? Tänk på att aviseringarna kommer att använda en internetanslutning för att dyka upp på den anslutna enheten. Du kan använda AutoRemote (via Bluetooth) för att skicka ut varningar när nätverket inte är närvarande. Detta kräver att enheten i fråga paras ihop via Bluetooth.
Du kommer behöva:
Android version: 4.0+, Android 7.0 behövs för aviseringsrutan
Appar: Ansluta sig
Plugins: AutoWear (frivillig), AutoRemote (kan ersätta Join), Autoavisering (frivillig)
Aktivera en varning för internetdelning "inget nätverk" med Tasker
Istället för att kontrollera om internetdelning är aktiverat är det lättare att ersätta en ruta i statusfältet med Autoavisering och ställ in ett växlingsbeteende. Om du inte använder Android 7.0 kan du använda en genväg eller en widget istället.
Om du aldrig har aktiverat en bricka med Autoavisering – du kommer att se att det här är lite besvärligt. Du måste skapa en inställningsuppgift som konverterar en mallbricka till en bricka som vi väljer. Lägg en tom bricka, d.v.s. Autoavisering 02 på brickområdet (klicka på redigera för att redigera de synliga brickorna).
Skapa en Tethering-bricka
Tethering kakel
Tile SetupA1: AutoNotification Tiles [ Configuration: Tile: 2
Command: hotspottoggle
Label: Hotspot
Icon: android.resource://net.dinglisch.android.taskerm/hd_aaa_ext_signal
State: 1
Require Unlock: false
Hide Notifications: true Timeout (Seconds):60 ]
A2: Variable Set [ Name:%HotspotVariable To: 0 Recurse Variables: Off Do Maths: Off Append: Off ]
A3: Variable Set [ Name:%HotspotDialog To: 0 Recurse Variables: Off Do Maths: Off Append: Off ]
Läs mer
Du behöver bara köra detta en gång för att ställa in brickorna och variablerna. Kakeln kommer att använda ett kommando hotspotväxla för att ändra tillståndet för internetdelning och kommer att ställa in det som inaktivt. Den kommer också att kollapsa statusfältet när du trycker på den. Du kan klä upp brickan med en valfri etikett och ikonen.
Ytterligare två variabler kommer att skapas och ställas in på 0. %HotspotVariable kommer att visa statusen för tether (0 = nej, 1 = ja) och %HotspotDialog kommer att visa en dialogruta som frågar oss vilken enhet vi vill meddela (0 = visa inte, 1 = visa dialog).
Tethering växlar
Tethering växlar
Hotspot ToggleA1: Variable Add [ Name:%HotspotDialog Value: 1 Wrap Around: 2 ]
A2: AutoNotification Tiles [ Configuration: Tile: 2
Command: hotspottoggle
Label: Hotspot
Icon: android.resource://net.dinglisch.android.taskerm/hd_aaa_ext_signal
State: 999
Require Unlock: false
Hide Notifications: true Timeout (Seconds):60 ]
A3: WiFi Tether [ Set: Toggle ]
A4: Perform Task [ Name: Hotspot Dialog Priority:%priority Parameter 1 (%par1): Parameter 2 (%par2): Return Value Variable: Stop: Off ] If [ %HotspotDialog ~ 1 ]
A5: Wait [ MS: 0 Seconds: 5 Minutes: 0 Hours: 0 Days: 0 ]
A6: Variable Add [ Name:%HotspotVariable Value: 1 Wrap Around: 2 ]
A7: Variable Clear [ Name:%HotspotDevice Pattern Matching: Off ] If [ %HotspotVariable ~ 0 ]
Läs mer
Jag vill bara visa en dialogruta när internetdelning är aktiverad. Dialogrutan kommer att visa några enheter jag äger och gör att jag kan ställa in målet för aviseringarna. I varje fall kommer jag att ställa in min internetdelningstelefon så att den blinkar med aviseringslampan snabbt varje gång mottagningen är dålig.
När brickan trycks in ändrar den statusen till aktiv. %HotspotDialog ändras till 1 och det utlöser HotspotDialog uppgift. Medan vi väljer vår enhet aktiveras Hotspot-profilerna genom att ställa in variabeln %HotspotVariable till 1. När jag trycker på en bricka igen för att avsluta internetdelning, visas HotspotDialog återgår till 0 och uppmanar inte längre att dialogrutan ska visas, och %HotspotVariable är inställd på neutralvärdet 0.
A1, A6
Handlingen Variabel Lägg till +1 kommer att ändra värdet på våra startvariabler från 0 till 1 och linda det runt 2. Det betyder att dessa variabler alltid kommer att ha värden 1 eller 0. Handlingsplaceringen är också relevant, liksom %HotspotDialog kommer att styra när dialogrutan visas. Vi kör samma uppgift för att inaktivera och aktivera internetdelning, men vi vill inte att dialogrutan ska visas varje gång vi växlar den.
A7
Medan vi håller på, om uppgiften utförs för att inaktivera tjudern (%HotspotVariable = 0), vill vi rensa variabeln som lagrar namnet på enheten som aviseras av Hotspot Dialog-uppgiften.
A5
De Vänta åtgärd läggs till för att förhindra att informationen om dålig räckvidd visas direkt, vilket kan inträffa när hotspot-inställningen växlas.
A3
Helt enkelt växla mellan WiFi-tether handling. Inget komplicerat med detta steg.
A4
En separat uppgift visas för att visa Dialogrutan AutoTools och handling för det val jag har gjort. Detta kommer att köras när vår dialogstyrningsvariabel %HotspotDialog = 1.
A2
När du trycker på växeln vill vi se till att brickan växlar mellan tillståndet aktiv/inaktiv och behåller samma kommando: hotspotväxla. Slutligen, se till att det kommer att kollapsa statusfältet.
Hotspot-dialog
Hotspot-dialog
Hotspot DialogA1: AutoTools Dialog [ Configuration: Dialog Type: List
Title: Enable poor network notification?
Icon: /storage/emulated/0/Tasker/Material Icons/ic_wifi.png
List Type: 1
Texts: Tablet, Mobile, Computer, Watch, Laptop
Text Size: 20
Images: /storage/emulated/0/Tasker/Material Icons/ic_tablet-1.png,/storage/emulated/0/Tasker/Material Icons/ic_cellphone_android-1.png,/storage/emulated/0/Tasker/Material Icons/ic_desktop_mac-1.png,/storage/emulated/0/Tasker/Material Icons/ic_watch-1.png,/storage/emulated/0/Tasker/Material Icons/ic_laptop-1.png
Image Width: 50
Dim Background: true
Number Of Columns: 3
Top Margin: 16
Bottom Margin: 16
Bottom Buttons Top Margin: 16
Bottom Buttons Bottom Margin: 16
Close On Select: true
Separator: ,
Command Variable: atcommand
Cancelable: true
Turn Screen On: true Timeout (Seconds):60 ]
A2: Variable Set [ Name:%HotspotDevice To:%attext Recurse Variables: Off Do Maths: Off Append: Off ]
Läs mer
De Dialogrutan AutoTools används för att visa tillgängliga enheter. När enheten är vald stängs dialogrutan och ställer in värdet på %HotspotDevice till namnet på den enheten. Denna variabel rensas varje gång internetdelningen stoppas.
Dålig mottagning/inga data
Dålig mottagning/inga dataprofiler
Läs mer
Jag har skapat 2 profiler som kontrollerar signalstyrkan och internetanslutningen. Var och en styrs av variabeln %HotspotVariable och är bara aktiv när internetdelning är aktiverad. Båda profilerna kommer att utlösa samma uppgift när de aktiveras och deaktiveras. Den ena innehåller tillståndskontexten - signalstyrka - och den andra mobilnätet. Helst kommer anslutningen att finnas kvar när meddelandet utfärdas. Det är därför jag inkluderar signalstyrkan inställd på 1 i profilvillkoret.
Dålig signal
Dålig signal
Profile: Poor Reception (91)State: Variable Value [ %HotspotVariable ~ 1 ]
State: Signal Strength [ From: 0 To: 1 ]
Enter: PoorSignal (89)
A1: AutoNotification [ Configuration: Use HTML: false
Title: Poor reception
Icon: android.resource://net.dinglisch.android.taskerm/hl_device_access_network_cell
Status Bar Icon: device_access_network_cell
Status Bar Text Size: 16
Id: 55
Priority: -1
Persistent: true
Is Group Summary: false
LED Color: red
LED On: 300
LED Off: 30p
Skip Picture Cache: false
Update Notification: false
Only on Phone: true Timeout (Seconds):20 ]
A2: Join Send Push [ Configuration: Device: Chrome@Laptop
Text: Poor range
Title: Poor reception
Icon: /storage/emulated/0/Tasker/Material Icons/ic_wifi.png Timeout (Seconds):60 ] If [ %HotspotDevice ~ Laptop ]
A3: Join Send Push [ Configuration: Device: Chrome@Home
Text: Poor range
Title: warning
Icon: /storage/emulated/0/Tasker/Material Icons/ic_wifi.png Timeout (Seconds):60 ]
A4: Join Send Push [ Configuration: Device: Tablet
Text: Poor range
Icon: /storage/emulated/0/Tasker/Material Icons/ic_wifi.png Timeout (Seconds):60 ] If [ %HotspotDevice ~ Tablet ]
A5: AutoWear App [ Configuration: Execute Now: true
Trigger Event: true
Haptic Feedback: true
Name: App
AutoWear Elements: Show
AutoWear Element Id: poorrange
Turn Screen On: true Timeout (Seconds):60 ] If [ %HotspotDevice ~ Watch ]
Exit: Cancel (90)
A1: AutoNotification Cancel [ Configuration: Id: 55
Cancel All: false Timeout (Seconds):0 ]
A2: AutoWear App [ Configuration: Execute Now: true
Trigger Event: true
Haptic Feedback: true
Name: App
AutoWear Elements: Hide
AutoWear Element Id: poorrange
Turn Screen On: true Timeout (Seconds):60 ] If [ %HotspotDevice ~ Watch ]
Profile: No Data (92)
State: Variable Value [ %HotspotVariable ~ 1 ]
State: Mobile Network [ 2G: On 3G: Off 3G - HSPA: Off 4G: Off ]
Enter: PoorSignal (89)
A1: AutoNotification [ Configuration: Use HTML: false
Title: Poor reception
Icon: android.resource://net.dinglisch.android.taskerm/hl_device_access_network_cell
Status Bar Icon: device_access_network_cell
Status Bar Text Size: 16
Id: 55
Priority: -1
Persistent: true
Is Group Summary: false
LED Color: red
LED On: 300
LED Off: 30p
Skip Picture Cache: false
Update Notification: false
Only on Phone: true Timeout (Seconds):20 ]
A2: Join Send Push [ Configuration: Device: Chrome@Laptop
Text: Poor range
Title: Poor reception
Icon: /storage/emulated/0/Tasker/Material Icons/ic_wifi.png Timeout (Seconds):60 ] If [ %HotspotDevice ~ Laptop ]
A3: Join Send Push [ Configuration: Device: Chrome@Home
Text: Poor range
Title: warning
Icon: /storage/emulated/0/Tasker/Material Icons/ic_wifi.png Timeout (Seconds):60 ]
A4: Join Send Push [ Configuration: Device: Tablet
Text: Poor range
Icon: /storage/emulated/0/Tasker/Material Icons/ic_wifi.png Timeout (Seconds):60 ] If [ %HotspotDevice ~ Tablet ]
A5: AutoWear App [ Configuration: Execute Now: true
Trigger Event: true
Haptic Feedback: true
Name: App
AutoWear Elements: Show
AutoWear Element Id: poorrange
Turn Screen On: true Timeout (Seconds):60 ] If [ %HotspotDevice ~ Watch ]
Exit: Cancel
A1: AutoNotification Cancel [ Configuration: Id: 55
Cancel All: false Timeout (Seconds):0 ]
A2: AutoWear App [ Configuration: Execute Now: true
Trigger Event: true
Haptic Feedback: true
Name: App
AutoWear Elements: Hide
AutoWear Element Id: poorrange
Turn Screen On: true Timeout (Seconds):60 ] If [ %HotspotDevice ~ Watch ]
Läs mer
De Autoavisering avisering skapas på telefonen, men bara för att få lysdioden att blinka. Välj de andra värdena för meddelandet efter din personliga smak och ställ in snabb LED-blinkning (min är 300 ms på/av) i din önskade färg. Tanken är att visa diskret information snarare än en helt invasiv varning när skärmen vaknar. Aviseringen sparas som en permanent avisering med ID 55.
Vad som följer härnäst är a Gå med i push för varje enhet du äger. Välj en Gå med i push för varje enhet och använd IF-villkoret för att matcha värdet på %HotspotDevice variabel.
Konfigurera Gå med i push åtgärd för att skicka ett meddelande om ditt val. Eftersom dessa meddelanden kommer att avvisas på målenheten, behövs inga andra åtgärder.
Smart klocka
Smartwatch-profil
Profile: Remove Watch IconEvent: AutoWear Command [ Configuration: Command Filter: closepoorrange
Case Insensitive: false
Exact: true
Regex: false
Variable Array: false ]
Enter: Close WearIcon (55)
A1: AutoWear App [ Configuration: Execute Now: true
Trigger Event: true
Haptic Feedback: true
Name: App
AutoWear Elements: Hide
AutoWear Element Id: poorrange
Turn Screen On: true Timeout (Seconds):60 ]
Läs mer
Du kommer att märka att jag har ändrat hur aviseringen fungerar för smartklockan. Inget av ovanstående kommer att dyka upp på min klocka. Det enda jag vill visa på min klocka är en liten ikon som kan avvisas på begäran.
Skapa en ikon med AutoWear Hantera flytande ikoner *(du måste gå till AutoWear-appen) och testa storleken och placeringen på din klocka. Ikonen kommer att ritas över vilken skärm som helst, så se till att den innehåller ett kommando på tryck för att stänga den. jag använde nära dåligt område och döpte ikonen dåligt räckvidd. Storleken på min ikon är 30x30 pixlar och den är placerad 65% till höger och 20% från toppen.
När du är nöjd med storleken och platsen - använd AutoWear-appen åtgärd för att visa ikonen och OM-villkoret för att länka den till %HotspotDevice variabel.
Annullera
Annullera
Cancel (90)A1: AutoNotification Cancel [ Configuration: Id: 55
Cancel All: false Timeout (Seconds):0 ]
A2: AutoWear App [ Configuration: Execute Now: true
Trigger Event: true
Haptic Feedback: true
Name: App
AutoWear Elements: Hide
AutoWear Element Id: poorrange
Turn Screen On: true Timeout (Seconds):60 ] If [ %HotspotDevice ~ Watch ]
Läs mer
För att avsluta LED-blinkningen och ta bort den flytande ikonen från klockan, ska jag använda en enkel Avbryt autoavisering åtgärd med ID för min avisering (55) för att utföra AutoWear-appen åtgärd som döljer den flytande ikonen.
Smartklockan har en extra profil som tar bort den flytande ikonen om ikonen trycks ned. För att göra detta använder jag AutoWear-kommando händelse 'nära dåligt områdesedan kör jag en separat uppgift som innehåller ungefär samma åtgärd som Annullera uppgift.
Vi hoppas att du gillar vår lilla skapelse, och låt oss veta om du tror att vi kan göra några förbättringar! Som alltid kan du ladda ner projektet genom att klicka på länken nedan.
Ladda ner projektfilen för Tethering 'Inget nätverk' här!
För att importera varningarna för internetdelning "inget nätverk" med Tasker-projektfilen, ladda ner filen ovan och spara den var som helst i ditt interna minne. Öppna Tasker och kontrollera att "nybörjarläge" är inaktiverat i inställningsmenyn. Tryck sedan länge på "hem"-ikonen i det nedre vänstra hörnet och klicka på "importera". Hitta filen prj.xml som du sparade tidigare och välj den för att importera den. Du kommer nu att se en ny flik i den nedre raden som innehåller alla profiler och uppgifter som vi refererade till i den här artikeln.