App von extern aufrufen

Hallo zusammen,

ich habe immer wieder das Problem, dass ich zu Hause mein Smartphone verlege und nicht mehr finde. Die zugehörige Nummer anzurufen bringt mir nichts, weil mein Smartphone immer komplett lautlos ist (auch kein Vibrieren).

Aus dieser Situation kam mir die Frage, ob es technisch möglich ist, eine App (für Android9) zu programmieren, die ich z.B. über das Netzwerk ansprechen kann (vom PC oder einem anderen Smartphone), und die dann z.B. die Klingelton-Lautstärke setzt.

Firebase ist bislang das einzige, das auf den ersten Blick so klingt als könnte man das damit machen. Habe aber noch nicht weiter analysiert. Gibt es noch mehr Möglichkeiten?

Hab schon lang nichts mehr mit Android direkt gemacht. Aber ja, sollte absolut kein Problem sein. Eigentlich dürftest du die App sogar schon installiert haben (sofern du Google Dienste drauf hast):

https://www.google.com/android/find?u=0

Danke, das hilft mir konkret bei meinem Problem (wobei es nicht wirklich eins ist ;-)). Hätte mir schon denken können, dass es sowas schon gibt.

Meine Frage ging eher in die Richtung, ob bzw. wie ich selbst so eine App machen könnte. Rein für mich persönlich.

Wie gesagt: geht sicherlich. Entweder du gibst der App die Rechte, dass die Soundeinstellung geändert werden kann oder du hast die Soundeinstellungen für den Wecker nicht gemutet und gibst den Ton über den Kanal wieder.

Kann dir nur die Theorie sagen, da ich schon lange nichts mehr mit Android direkt gemacht hab.

Firebase ist eine Möglichkeit mit den Cloud Funktionen, wobei ich persönlich das noch nie zum laufen bekommen habe auf meinem Smartphone, muss ich leider gestehen.

Hin oder her, du musst dafür einen Android Background Service programmieren. Im Grunde ganz ähnlich wie eine klassische App, außer dass der Service stumm im Hintergrund läuft. Du kannst auch programmieren zu welchen System Events der Service gestartet werden soll. Das kann eine Bewegung sein, ein Anruf, oder eine Uhrzeit/Intervall. Der läuft also nicht konstant.

Da du das über das Netzwerk machen möchtest, muss sich der Service wahrscheinlich am besten in einem festen Intervall mit irgendeinem Server verbinden und dort abfragen ob er klingeln soll. Dafür brauchst du nicht unbedingt einen eigenen Rechner. Sondern irgendwo eine feste Adresse, an der du einen Wert von 0 auf 1 setzen kannst - zum Beispiel ein Forumpost.

Oder du richtest mithilfe eines der vielen kostenloasen dynamic DNS services tatsächlich deinen Heimrechner als Server ein.

Sei jedoch vorgewarnt. Das häufige Verbinden mit dem Internet kann massiv am Akku ziehen.

Zunächst mal Danke für die Antworten.

Du kannst auch programmieren zu welchen System Events der Service gestartet werden soll. Das kann eine Bewegung sein, ein Anruf, oder eine Uhrzeit/Intervall.

Da du das über das Netzwerk machen möchtest, muss sich der Service wahrscheinlich am besten in einem festen Intervall mit irgendeinem Server verbinden und dort abfragen ob er klingeln soll

Hm, das klingt nach einer Idee. Das müsste ich auch hinkriegen. Wenn ich auf ein Anruf-Event reagieren würde, könnte ich mir doch auch das periodische Polling sparen, oder? Werde ich bei Gelegenheit mal probieren.

Ich hatte gehofft, dass es eine Möglichkeit gibt, dass ich auf irgendeinem Wege (REST, Push-Notification,…) innerhalb des Netzwerks die App kontaktieren kann. Analog wie explizite Broadcasts über adb. Aber mal schauen, wie weit ich mit der obigen Variante komme.

Auf eine bestimmte Nummer (oder eventuell sogar SMS-Nachricht zu reagieren?) hört sich nach einer fantastischen und einfachen Möglichkeit an :slight_smile:

Wenn du auf Server Push Netzwerken aufbauen möchtest, ist denke ich die Firebase Cloud eine sehr gute Möglichkeit. Würde mich nicht wundern wenn Googles eigener Smartphone-Finde-Dienst auf Firebase basiert.
Ich hab mal versucht selbst damit eine ähnliche App zu programmieren, es ging nur eher um das finden von anderen Smartphones und nicht dem eigenen - aber wie gesagt - ich hatte damit bisher absolut kein Glück, deshalb kann ich damit nicht groß weiterhelfen.