中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

兩個APP之間怎么調用---IT藍豹

發布時間:2020-08-05 23:00:54 來源:網絡 閱讀:225 作者:楊光成 欄目:移動開發

                                  

兩個app之間怎么調用?
 
(1):通過顯示Intent 啟動
   首先:配置好B app 的action,即AndroidManifest.xml中聲明
<intent-filter>
    <action android:name="com.itlanbao.app.MainActivity"/>
</intent-filter>

A app 調用需要知道B app對應的action
通過如下方法調用:

Intent Intent = new Intent();
intent.setClassName("com.itlanbao.app", "com.itlanbao.app.MainActivity");
startActivity(intent);

(2):隱式的Intent來啟動方式
比如調用打電話功能:
1.Uri number = Uri.parse("tel:5551234");
2.Intent callIntent = new Intent(Intent.ACTION_DIAL, number); 
瀏覽網頁:
Uri webpage = Uri.parse("http://www.android.com");
Intent webIntent = new Intent(Intent.ACTION_VIEW, webpage);
此外,我們在定義我們的Intent的時候,要盡可能的詳細,例如我們希望調用系統的圖片查看器瀏覽圖片,我們應該定義MIME type" p_w_picpath/*.",以防止會啟動map app進行查看。而且如果沒有app來響應我們的請求,我們的app就會崩潰。
        因此為了防止我們的app發送intent沒有其他app來響應而導致應用異常退出,我們在發送intent前進行驗證。為了驗證是否有app的 Activity來響應我們的Intent請求,我們需要調用queryIntentActivities()來進行驗證。這個方法會返回一個list, 我們通過判斷list是否為空來驗證,這樣我們可以安全的使用Intent來實現不同App之間Activity的交互。如果沒有響應的Acitivty 來響應,我們可以提供一些鏈接給用戶進行下載安裝
PackageManager packageManager = getPackageManager();
List<ResolveInfo> activities = packageManager.queryIntentActivities(intent, 0);
boolean isIntentSafe = activities.size() > 0;

文章來自IT藍豹,感謝原創作者的辛勤付出!

請轉發標明出處:www.itlanbao.com


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

乌兰县| 广西| 和静县| 永寿县| 桃源县| 香格里拉县| 宁陵县| 泰兴市| 南召县| 巴林左旗| 江阴市| 页游| 汶川县| 新绛县| 汉中市| 遂川县| 礼泉县| 泰来县| 类乌齐县| 铅山县| 沙湾县| 泗水县| 滦南县| 永丰县| 夏津县| 小金县| 丹江口市| 观塘区| 长武县| 玉田县| 武威市| 台东市| 特克斯县| 阳高县| 贡山| 潞西市| 新干县| 普洱| 灵川县| 乐昌市| 枣强县|