1. 程式人生 > >Android 在一個應用中如何啟動另外一個已安裝的應用

Android 在一個應用中如何啟動另外一個已安裝的應用

在自己的應用開發過程中,有可能需要在自己的應用中啟動其他應用,此時,如果應用對外公開了自己的啟動Intent方式,可以直接建立該Intent,然後通過startActivity(myIntent)。

這種方式相信都很熟悉。

如果不知道想要啟動的應用的Intent,也有兩個方法可以實現這個功能。

1、通過反編譯這個應用的apk,在該應用的AndroidManifest.xml中找到該應用的第一個Activity,然後通過在自己的應用中直接啟動這個Activity即可。

比如在自己的應用中想通過一個按鍵直接開啟QQ,可以反編譯QQ.apk,找到啟動的Activity為com.qq.android.LoginActivity。可以直接在自己的程式碼中寫:

Intent intent = new Intent();
intent.setComponent(new ComponentName("com.qq.android","com.qq.android.LoginActivity"));
//前名一個引數是應用程式的包名,後一個是這個應用程式的主Activity名  
startActivity(intent);

需要知道要啟動的應用的包名即可。

  1. Intent intent = getPackageManager().getLaunchIntentForPackage("com.qq.android");  
  2. startAcitvity(intent);  

相關推薦

android一個應用啟動一個應用

在程式開發過程當中,常遇到需要啟動另一個應用程式的情況,比如在點選軟體的一個按鈕可以開啟地圖軟體。 如果既有包名又有主類的名字,那就好 辦了, 直接像下面就行: [html]  Intent intent = new Intent(Intent.ACTION_MAIN

Android一個Activity重新整理另外一個Activity的UI

1. 通過宣告要重新整理的activity(Activity_A)為靜態變數,然後在一個activity(Activity_B)中直接呼叫Activity_A中的重新整理方法         在Activity_A中宣告靜態變數: public static Activ

python在一個字串找到另外一個字串並找到該字元起始的位置

程式碼詳解 def index_of_str(seq, sub_seq): index=[] n1=len(seq) n2=len(sub_seq) for i i

關於一個普通程式啟動另外一個程式的命令pm install

這裡會採用兩個開源專案的檔案 這是對安裝程式的簡單的測試和demo package com.example.demoinstall; 用於判斷是否為系統的運用 import android.app.ActivityManager; impor

在同一個解決方案下,如何從一個工程呼叫另外一個工程的函式

  兩個專案分別是test1和test2,test1中有一個函式fun()被test2呼叫,用法如下: //test1.h int fun(int a, int b); //test1.cpp #include <iostream> #include "

Android 如何完整的獲取到使用者安裝應用列表

    接到產品經理的預研需求,說希望獲取使用者已安裝應用列表。這個問題應該不難,只要是要把相關的知識點整理和驗證一下。     對於獲取使用者已安裝應用列表,我個人是很熟悉的,因為我的華為手機上,手機管家天天會在通知欄彈出”xxx應用嘗試獲取使用者已安裝應用

Android一個應用如何啟動另外一個安裝應用

在自己的應用開發過程中,有可能需要在自己的應用中啟動其他應用,此時,如果應用對外公開了自己的啟動Intent方式,可以直接建立該Intent,然後通過startActivity(myIntent)。 這種方式相信都很熟悉。 如果不知道想要啟動的應用的Intent,也有

Android 如何從一個App啟動另外一個App(如啟動支付界面、啟動地圖界面、應用商場下載App等場景)

!= oid 等等 信息 fault next -a return 5.1   假定兩個App,分別是A和B,當A運行某個功能需要啟動B,一種是啟動B應用,一種直接進入B的某個Activity。搜了很多資料,沒有一個完整的。下面就A--Android5.1.1、B--And

Android開發學習筆記(二)之啟動另外一個Activity

1、Activity 是SDK中的一個類,負責建立一個螢幕視窗,放置UI元件,供使用者互動。 2、建立一個Activity: 1)建立Activity的java類檔案 2)在AndroidManifest.xml中註冊 3)設定佈局檔案 3、AndroidManif

Android一個應用跳轉另外一個應用

APP1: Intent tIntent = new Intent();      ComponentName tComp = new ComponentName("com.example.newporject"(另外一個應用包名), "com.example.newpo

Mac OS X下從服務程序啟動一個應用程式(Cocoa Application)

- (void) launchAppliction: (NSString*) appPath{ //appPath指向可執行檔案的絕對地址 NSTask *softTask = [[NSTask alloc]init]; [softTask setLaunchPath:appPath]; [softTask

vuemethods一個方法調用另外一個方法

img bsp 方法 調用 .com 9.png es2017 png http vue中methods一個方法調用另外一個方法

iframe獲取父視窗的父視窗另外一個iframe的元素問題

頁面層次結構如下: ————- mainPage(mainPage有兩個iframe:iframe1和iframe2) ————————iframe1 ————————iframe2(iframe2中又巢狀一個iframe:iframe2_1) ———————————–i

1.實現一個函式,可以左旋字串的k個字元。 2.判斷一個字串是否為另外一個字串旋轉之後的字串。

1.實現一個函式,可以左旋字串中的k個字元 ABCD左旋一個字元得到BCDA ABCD左旋兩個字元得到CDAB #include<stdio.h> #include<string.h> void left_move(char*str, int

python指令碼啟動一個python指令碼

         有時間,我們需要在一個python指令碼中調起另一個python指令碼,下面我嘗試了一下,          1.父指令碼如下: #coding:utf8 #!/usr/local/bin/python import time import datet

bat呼叫另外一個bat

::檔名:callbat.bat ::檔案路徑:E:\dldl_s_svn\game\build ::功能:進入C盤,將proto生成php,然後將生成的php檔案拷貝到E盤的某個目錄 ::將本目錄下的proto檔案拷貝到C盤的編譯目錄下 copy .\CProtoDat

Android 在專案引入另一個專案作為依賴(引入Module)

文件背景介紹 最近寫一個專案引用了一個第三方庫,MPAndroidChart,要求做一個柱形圖,且點選和未點選呈現兩種顏色,經查詢發現,該庫無法直接設定選中後柱的顏色,只能嘗試修改原始碼,但是由於該庫為直接在gradle中匯入的,程式碼上鎖無法修改,因此該文

在jsp頁面呼叫另外一個jap頁面

(1)include指令          include指令告訴容器:複製被包含檔案彙總的所有內容,再把它貼上到這個檔案中。 <%@ include file="Header.jsp"%> (2)include標準動作 <jsp:include

Shell指令碼呼叫另外一個指令碼的方法

       在Linux平臺上開發,經常會在console(控制檯)上執行另外一個指令碼檔案,經常用的方法有:./my.sh 或 source my.sh 或 . my.sh;這三種方法有什麼不同呢?我們先來了解一下在一個shell指令碼中如何呼叫另外一個shell指令

同一程序activity啟動一個activity的流程

在上一篇文章launcher介面點選應用圖示啟動Activity流程分析 中我們分析了在新程序中啟動activity的流程,這裡我們也順便介紹下在同一個程序的activity中啟動另一個activity,這種場景在實際應用中應該更為常見。都是啟動activity