Application à l'intérieur d'une application
Est-il possible de lancer une application à partir de l'intérieur d'une autre application? Ce que je veux faire est d'écrire une application qui vous permet de choisir une application pour démarrer, puis affiche les activités de cette application à l'intérieur d'un point de vue.
Donc en mode paysage, il devrait ressembler à quelque chose comme ceci:
L'idée derrière cela est:
Je veux être en mesure de démarrer et exécuter un tiers de l'activité à côté de mon activité, et je veux être en mesure de créer des makros avec mon activité que sont le contrôle de la troisième partie de l'activité.
En gros, quelque chose comme ceci:
- Début de la troisième partie de l'activité de l'intérieur de mon app
- Commencer makro enregistrement
- Faire quelque chose dans la troisième partie de l'activité
- Arrêter makro enregistrement
- Utilisation makro chaque fois que vous le souhaitez
Alors, comment puis-je commencer et le contrôle d'une autre activité de l'intérieur de ma propre activité?
eh bien, si vous dites que c'est pas possible, pourquoi fragments de m'aider?
Il est possible de lancer une autre application à partir d'ur propre, mais pas dans une "vue".
ok, c'est une bonne approche, je vous remercie! maintenant j'ai le coup l'idée d'un point de vue hors de ma tête. la direction est ma façon à moi d'y aller?
Avez-vous le contrôle sur ces autres applications? que voulez-vous l'application pour être en mesure de le faire? pourquoi l'application doivent être à l'intérieur de votre application, voulez-vous voir le menu, ou tout simplement y retourner? Pouvez-vous décrire le réel de cas d'utilisation un peu?
OriginalL'auteur PKlumpp | 2014-05-26
Vous devez vous connecter pour publier un commentaire.
Non racinées:
Malheureusement, ce que vous voulez atteindre ne semble pas être possible sans enracinement téléphone, parce que vous ne pouvez interagir avec d'autres applications par l'intermédiaire de ses intentions. Depuis, les développeurs de décider comment leurs applications réagir sur des intentions spécifiques, créer des macros de cette façon est quasiment impossible.
Avec les téléphones rootés:
Vous pouvez créer une liste de toutes les applications installées, vous pouvez utiliser
pour récupérer une liste de toutes les applications installées.
MotionEvent#obtenir
.Maintenant vient la partie où vous avez besoin d'un téléphone enracinée (l'autorisation INJECT_EVENTS). Lancer l'application et de injecter les événements de sorte que votre macro est exécutée. Samplecode:
Vous pouvez trouver plus d'informations à propos de l'injection (également keyevents) ici.
Si vous avez besoin d'aide pour compiler votre application, ces 2 liens pour vous aider: Comment faire pour compiler une Application Android avec les autorisations du système de, Android INJECT_EVENTS autorisation
OriginalL'auteur CommonGuy
Il n'est pas possible de démarrer une application dans un
View
, mais vous pouvez lancer une application à partir de votre application://EDIT de mise à jour de votre question:
Après le démarrage de l'activité à partir du code ci-dessus, d'une manière que vous pourriez commencer/arrêter la macro à tout moment dans la nouvelle application serait de créer une petite incrustation d'affichage en haut de l'écran.
Cette superposition serait au-dessus de TOUTES les activités.
Consultez le lien suivant: La création d'un système de superposition de la fenêtre (toujours au top)
Vous pouvez écrire du code pour démarrer la macro lorsque la Vue est pressé, et puis si le bouton a été pressé une fois, et que l'utilisateur appuie de nouveau, arrêter la macro. Ce serait dans le
onTouchEvent()
méthode.Mise à jour de ma réponse : )
OriginalL'auteur MJ93
Oui c'est possible si vous utilisez les Intentions. Ils vous permettent de vous déplacer entre les écrans et le lancement d'une nouvelle fonctionnalité différente à l'intérieur de la même application. visite coursera pour plus de tutoriels sur les intentions de
OriginalL'auteur Tumi