android app外喚起,Android 喚起app的多種方式

方式一(通過Intent喚起):

我們自己的app代碼:

ComponentName componetName = new ComponentName(

"com.lh.jimtrency.webviewdemo",

"com.lh.jimtrency.webviewdemo.MainActivity");

//(另外一個應用程序的包名,要啟動的Activity )

Bundle bundle = new Bundle();

ArrayList strings=new ArrayList<>();

strings.add("18883250894");

strings.add("浮夸的小白菜");

bundle.putStringArrayList("userInfo", strings);

Intent intent = new Intent();

intent.putExtras(bundle);

intent.setComponent(componetName);

startActivity(intent);

PS:com.lh.jimtrency.webviewdemo 為對方的包名

com.lh.jimtrency.webviewdemo.MainActivity 為對方的MainActivity類

上面的代碼就是喚起了對方App的MainActivity類,那對方還需要怎么配置呢?其實,只需要在AndroidManifest.xml中,對的MainActivity配置時,加上這個屬性(exported):

android:name=".MainActivity"

android:exported="true"/>

那對方怎么接受呢?

Bundle bundle=getIntent().getExtras();

if (bundle!=null){

Toast.makeText(this,

bundle.getStringArrayList("userInfo").toString()

,Toast.LENGTH_SHORT).show();

}

方式二(通過Uri喚起app):

其實也很簡單,就是換了一種方式而已。但,讀者,一定要對uri格式有一定連接才行(uri格式詳解:http://www.voidcn.com/article/p-tpjbxlwp-bae.html)。

下面看看,我們端app的代碼怎么寫:

Uri uri = Uri.parse("jimtrency://user.info.detail?password=1");

Intent intent = new Intent("android.jimtrency.schemeurl.activity");

intent.setData(uri);

startActivity(intent);

PS: “android.jimtrency.schemeurl.activity” 為跳轉時的action

“jimtrency” 為Uri的scheme

“user.info.detail” 為authority

那 對方 app怎么接受呢?

Intent intent = getIntent();

if (null != intent) {

Uri uri = intent.getData();

if (uri == null) {

return;

}

String acionData = uri.getQueryParameter("password");

Toast.makeText(this,acionData,Toast.LENGTH_SHORT).show();

}

對方app的AndroidManifest.xml的配置

android:name=".MainActivity">

android:scheme="jimtrency"

android:host="user.uri.activity" />

特別強調:

uri跳轉時 ,action 配置 和 category 配置,一定不能缺。category 配置是固定的。如下:

方法三(簡單粗暴:直接通過包名喚起app):

PackageManager packageManager = getPackageManager();

Intent intent=new Intent();

intent = packageManager.getLaunchIntentForPackage("com.cmcc.jzfpb");

startActivity(intent);

那要是沒有對應的app怎么辦?其實,你可以打卡對應的下載頁面就行.

Intent view = new Intent

("android.intent.action.VIEW",Uri.parse(""));

startActivity(viewIntent);

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/532201.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/532201.shtml
英文地址,請注明出處:http://en.pswp.cn/news/532201.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

2018python做圖形界面哪個庫簡單_2018年常見的python編程開發庫都有哪些類型

python編程開發可以說是目前比較熱門的一項編程開發語言了&#xff0c;而今天我們就一起來了解一下&#xff0c;關于python編程都有哪些常見的python庫可以使用。1、TensorFlow “TensorFlow是一個使用數據流圖進行數值計算的開源軟件庫。圖形節點表示數學運算&#xff0c;而圖…

android條形圖,MPAndroid組條形圖未顯示

這個問題已經在這里有了答案&#xff1a;????????????>????????????How to check if activity is in foreground or in visible background?????????????????????????????????????22個這是我用于使用MPAndroi…

c++ socket線程池_java 網絡編程,Socket編程

Java的網絡編程主要涉及到的內容是Socket編程&#xff0c;那么什么是Socket呢&#xff1f;簡單地說&#xff0c;Socket&#xff0c;套接字&#xff0c;就是兩臺主機之間邏輯連接的端點。TPC/IP協議是傳輸層協議&#xff0c;主要解決數據如何在網絡中傳輸&#xff0c;而HTTP是應…

android簽名忘記密碼,修改Android簽名證書keystore的密碼、別名alias以及別名密碼

之前在測試Eclipse ADT的Custom debug Eclipse ADT的Custom debug keystore所需證書規格&#xff0c;提到過自定義調試證書的密碼和1. 首先當然是先復制一份正式證書出來作為要修改為的臨時調試證書。2. 修改keystore密碼的命令(keytool為JDK帶的命令行工具)&#xff1a;keytoo…

python列表轉換成數字_Python中列表元素轉為數字的方法分析

本文實例講述了Python中列表元素轉為數字的方法。分享給大家供大家參考&#xff0c;具體如下&#xff1a; 有一個數字字符的列表&#xff1a; numbers [1, 5, 10, 8] 想要把每個元素轉換為數字&#xff1a; numbers [1, 5, 10, 8] 用一個循環來解決&#xff1a; new_numbers …

android 繪圖軟件,安卓最強大的繪圖軟件 妙筆生花最新評測

妙筆生花——繪畫體驗(一)看過使用教程之后&#xff0c;就能進入到真正的功能頁面了。功能頁面的首頁只有一個按鈕&#xff0c;點擊頁面下端的這個按鈕之后&#xff0c;就能跳出功能強大的工具選擇頁面。【妙筆生花】——工具選擇頁OK&#xff0c;接下來&#xff0c;小編會使用…

識別物體是否存在_【科學實踐Vol.1】帶你玩轉“人臉識別”

隨著時代的發展&#xff0c;人臉識別在我們的生活中變得隨處可見&#xff1a;商場里的人臉識別儲物柜&#xff0c;校園里的人臉識別刷卡機&#xff0c;手機里的面部解鎖……這些應用極大的便利了我們的日常生活。今天&#xff0c;就讓我們一起走進人臉識別的原理世界。首先我們…

html 自動適應手機屏幕大小,HTML5 canvas自適應手機屏幕大小的一種解決方案

一、最終效果為了不浪費大家時間&#xff0c;先展示最終效果&#xff0c;看看是不是大家需要的解決方案&#xff1a;標準分辨率&#xff1a;其他分辨率的適配情況&#xff1a;二、需求1.canvas的內容能全部展示在屏幕上2.盡量能保證圖像不變形3.繪制的文字也能自適應三、解決方…

編寫一個能夠排序的函數模板。_LeetCode刷題——9.給出n對括號,請編寫一個函數來生成所有的由n對括號組成的合法組合...

難度(medium)題目描述&#xff1a;給出n對括號&#xff0c;請編寫一個函數來生成所有的由n對括號組成的合法組合。例如n3&#xff0c;解集為&#xff1a; "((()))", "(()())", "(())()", "()(())", "()()()" 思路&#xf…

html5怎么產生手風琴效果,Html5 js如何實現手風琴效果

Html5 js如何實現手風琴效果發布時間&#xff1a;2020-08-03 09:54:10來源&#xff1a;億速云閱讀&#xff1a;92作者&#xff1a;小豬這篇文章主要為大家展示了Html5 js如何實現手風琴效果&#xff0c;內容簡而易懂&#xff0c;希望大家可以學習一下&#xff0c;學習完之后肯定…

c++進制轉換_一文了解進制之間的原理和轉換

點擊這段文字&#xff1a; 獲取2020年&#xff0c;最強Python學習資料進制這塊&#xff0c;可以做簡單的了解。生活中我們使用的數字都是十進制的&#xff0c;而二進制是機器能夠識別的最直接的語言。但是二進制又太大&#xff0c;記錄起來非常的不方便。所以通常會將二進制轉化…

用HTML做一個簡單的web登錄頁面,簡單的JavaWeb注冊登錄案例

簡單的JavaWeb注冊登錄案例1.注冊頁面register.htmlregister姓名&#xff1a;電話&#xff1a;郵箱&#xff1a;qq&#xff1a;2.注冊案例實現程序register.java/*** 注冊案例實現程序* author lucky**/public class register extends HttpServlet {public void doGet(HttpServ…

一層循環時間復雜度_算法的時間與空間復雜度(一看就懂)

算法&#xff08;Algorithm&#xff09;是指用來操作數據、解決程序問題的一組方法。對于同一個問題&#xff0c;使用不同的算法&#xff0c;也許最終得到的結果是一樣的&#xff0c;但在過程中消耗的資源和時間卻會有很大的區別。那么我們應該如何去衡量不同算法之間的優劣呢&…

用ajax替換html代碼,替換Ajax響應一個div的內部HTML(Replace inner HTML of a div w

我試圖一些時間間隔后改變一個div的內部HTML。 我得到我想要使用Ajax正確的反應。 但無法取代內HTML的后&#xff0c;并用Ajax響應地選擇。 什么是錯我的代碼..HTML51 seconds ago58 seconds ago.....10 minute ago?查詢setInterval(function() {$( ".time" ).each(…

java 審批流_一文讀懂工作流

網上關于工作流引擎有比較多的簡介&#xff0c;也有很多工作流的實際應用場景。本文結合筆者多年對工作流的經驗來闡述一下對工作流的理解。一、什么是工作流&#xff1f;先貼上wiki百科對于工作流的定義工作流&#xff08;Workflow&#xff09;&#xff0c;是對工作流程及其各…

html制作卡通圖案代碼,CSS畫的卡通動畫圖案

CSS語言&#xff1a;CSSSCSS確定* {padding: 0;margin: 0;}body {background: #26ad00;}.head {background: #ff8cb2;width: 70vw;height: 50vw;position: absolute;top: calc(50% - 25vw);left: calc(50% - 35vw);z-index: 2;border-radius: 90% 90% 80% 80% / 120% 120% 60% …

postgresql 查詢序列_時間序列數據庫(TSDB)初識與選擇

作者&#xff1a;碼哥字節 如需轉載聯系我的公眾號背景 這兩年互聯網行業掀著一股新風&#xff0c;總是聽著各種高大上的新名詞。大數據、人工智能、物聯網、機器學習、商業智能、智能預警啊等等。以前的系統&#xff0c;做數據可視化&#xff0c;信息管理&#xff0c;流程控制…

開發html,HTML開發基礎

常用標簽1、各種符號2、p和br3、a標簽4、H標簽5、select6、input:checkbox7、input:radio8、input:password9、input:button10、input:file11、textarea12、label13、ul or dl14、table15、fieldset16、form17、divHTML代碼演示html>頁面一這是div塊級標簽&#xff0c;占一行…

concurrenthashmap實現原理_Mybatis:PageHelper分頁插件源碼及原理剖析

PageHelper是一款好用的開源免費的Mybatis第三方物理分頁插件&#xff0c;其實我并不想加上好用兩個字&#xff0c;但是為了表揚插件作者開源免費的崇高精神&#xff0c;我毫不猶豫的加上了好用一詞作為贊美。原本以為分頁插件&#xff0c;應該是很簡單的&#xff0c;然而PageH…

計算機網絡dst,計算機網絡基礎課程—Socket接口

什么是TCP/IP------本課程的主要部分TCP/IP如何工作-----TCP/IP軟件結構與實現如何用TCP/IP-------TCP/IP應用程序編程接口前面說過&#xff0c;TCP/IP標準并不指定應用程序與TCP/IP協議軟件的接口&#xff0c;但并不是說沒有提供任何指導&#xff0c;首先&#xff0c;它指定了…