Automatischer Abbruch eines Anrufes

M

mak

Neues Mitglied
Threadstarter
Hallo.
Entwickele eine Anwendung, die automatisch einen
Call aufbaut und nach einer vorgegebenen Zeit wieder
abbricht.
Der Aufbau des Calls ist kein Problem, ich bekomme
ihn danach nur nicht beendet.
Hat einer von Euch eine Idee, wie sich das regeln läßt?

Aufgebaut wird er ganz einfach über den Inten ACTION_CALL,
aber es gibt leider keinen Intent ACTION_INTERRUPT

Das emulieren eines Tastendrucks zum Auflegen wäre vielleicht noch
eine Möglichkeit, aber das ist erstens nicht so fein und
zweitens bei verschiedenen Geräten dann wieder unterschiedlich.

Grüße
Mak
 
friedger

friedger

Fortgeschrittenes Mitglied
Hi,
durch den Intent ACTION_CALL gibts Du die Kontrolle an die Caller App ab. Wie willst Du nachträglich diese App steuern? Einzige Möglichkeit wäre eine Broadcast-Intent und sowas mag die Caller App bestimmt nicht.

Also sehe ich da keine Möglichkeit, oder?
Friedger
 
M

mak

Neues Mitglied
Threadstarter
Ich bin noch etwas neu auf dem Sektor, und kenne mich mich
Broadcast Intents noch nicht so aus.
Aber soviel ich bisher herausgelesen habe, ging
ein einfacher Call- Abbruch im 0.9 SDK, wurde aber durch das
Entfernen der Klasse Call unterbunden.
Habe schon in mehreren Foren gelesen, dass Leute an dem
gleichen Problem saßen.
Das Problem ist, wie Du gesagt hast, dass man die Kontrolle mit dem
Intent abgibt. Weiß noch nicht, wie ich an die Call App dran komme.
Das Vortäuschen eines KeyEvents "EndCall" schien mir als Lösung
gut,aber auch das ist wohl nicht so einfach.
Keine Ahnung, warum da solche Sperren eingebaut wurden, während
das Initiieren eines Calls weiterhin erlaubt ist.
Hat einer eine Ahnung, ob das nächste Release schon unterwegs ist und ob
da Änderungen zu erwarten sind?
 
M

mak

Neues Mitglied
Threadstarter
Vielleicht kann man dem Gerät auch einfach die Connection schliessen, mittels des
ConnectivityManagers .
 
enjoy_android

enjoy_android

Experte
Naja das Problem wie schon beschrieben ist das du die Kontrolle an die Call App abgibst. Dieser kannst du auch keinen Key Press unterschieben. Leider gibt es in 1.0 keine Möglichkeit einen aufgebauten Call zu beenden. (was ich auch für sehr schade halte) Aber ich denke mal das sich das mit der Zeit ändern wird. Es gibt ja noch nicht mal einen Broadcast wenn ein Call ankommt. (was aber nach Google Aussage auch in weiteren Releases implementiert wird)

PS: Broadcasts kannst du über einen Broadcast Receiver abfangen. Sie bieten dir damit die Möglichkeit auf bestimmte Ereignisse zu reagieren ohne das deine Anwendung oder dein Service vorher laufen muss. (sind daher auch sehr Batterie schonend) Leider sind diese Broadcasts sehr schlecht dokumentiert. Es sind zwar eine Broadcast(Actions) in der Klasse Intents aufgeführt, aber bei weitem nicht alle. (die meisten muss man sich aus dem Source Code zusammensuchen)
 
Zuletzt bearbeitet:
Oben Unten