導航:首頁 > 操作系統 > androidapp調用另一個app

androidapp調用另一個app

發布時間:2025-05-16 08:58:54

① 如何禁止手機app打開其他app

1、安卓手機:在安卓手機中,打開手機設置,點擊密碼與安全的選項,點擊頁面下方系統安全的選項,點擊頁面下方的網頁鏈接調用服務選項,將網頁鏈接調用服務選項的開關關閉即可。
2、蘋果手機:打開蘋果手機,在手機設置界面中,點擊應用和服務,在應用和服務界面中,點擊應用啟動管理,在應用啟動管理界面中,關閉全部自動管理,在彈出的窗囗中,點擊關閉全部即可。

android APP調起另外一個APP並傳值

第一種:

第二種:

setClassName內部也是調用的setComponent。

調用方:

被調用方在AndroidManifest的Activity中添加自定義action:

被調用方數據接收:

第一銀敗種:

調用方通過點擊H5網頁上按鈕

這種方法存在著弊端就是沒辦法判斷手機上是否安裝APP時,更適合打開自己APP中Activity。一般建議js與java進行交互調用原生的方法: WebViewJavascriptBridge 使用簡單方便,並且避免了一些js腳本注入漏洞。
第二種:隱式調用

被調用方在AndroidManifest的Activity中添加自定義action:

被調用Activity中數據接收:

注意: 這兩種方式只適合針對某個頁面,都只是在自己應用中跳轉第三方應用,並不是真正的喚醒,比如應用A已經在後台存在了,應用B調用以上兩種方式後,只是在應用B中重新打開了一個應用A,此時的應用A是相當與存在兩個,一前搏基個是在後台單獨存在,一個是依存應用B存在,是添加到應用B的棧中的,當點擊A頁面裡面的跳轉按鈕時才真正調起跳轉到A應慧謹用。

③ Android 怎麼從一個APP中打開另外一個APP

/ 通過包名獲取要跳轉的app,創建intent對象
Intent intent = getPackageManager().getLaunchIntentForPackage("com.example.yourapp");
if (intent != null) {
// 這里跟Activity傳遞參數一樣的嘛,不要擔心怎麼傳遞參數,還有接收參數也是跟Activity和Activity傳參數一樣
intent.putExtra("name", "Liu xiang");
intent.putExtra("birthday", "1983-7-13");
startActivity(intent);
} else {
// 未安裝應用
Toast.makeText(getApplicationContext(), "喲,趕緊下載安裝這個APP吧", Toast.LENGTH_LONG).show();
}

④ 如何在一個android工程中調用另一個android工程的代碼和資源啊

現在已經有了一個Android工程A。我們想擴展A的功能,但是不想在A的基礎上做開發,於是新建了另外一個Android工程B,想在B中引用A。

1. 把工程A做成純Jar包,這樣其他的工程就可以直接引用了。

但是,如果在工程A中用了R.java中的引用,則無法打成jar包了。原因是R.java是自動生成的,是動態的,每次編譯都是不相同的。如果一定要做成jar包,就不能使用自動生成的R文件,用到資源時候就要寫代碼去獲取。

有時會報錯:Conversion to Dalvik format failed with error 1

可能是多層包文件重復導入,沖突。。。

這時可以試試方法2

 

2.將工程A做成android library project。

設置工程A,右鍵->Properties->Android,將Is library項選中,然後Apply。設置工程B,右鍵->Properties->Android,在Library中,點擊Add按鈕,將A工程加入,然後Apply。此時在B中就引入了A中的資源和代碼,這些資源和代碼都可以直接調用。需要注意的是,因為A已經不再是一個完整的Android應用,而是一個類庫工程,所以有一些內容還需要在B中配置一下。比如A中有lib庫引用,則B中也要加入該lib庫;比如A中的AndroidManifest.xml文件的內容,在B的AndroidManifest.xml文件中也要相應加上。。。
如果不需要引用A工程的資源文件,同樣只需得到jar文件,
設置工程A,右鍵->Properties->Android,將Is library項選中,然後Apply。在A工程的bin目錄下能得到一個jar文件,可以到B工程中的libs目錄下直接引用。
 
如果能用jar當然最好,但是jar文件不能把res目錄下的資源打包進去,所以才出現lib工程。

創建和使用Android library工程
 

摘要: 創建library供多個工程共享代碼、資源是非常常見的需求,網上這種資料非常少,基本上都是講創建java工程,然後export,這種方式缺點非常多,大家可以自己google一下。本文著重介紹如何創建Android library,並且在 ...
創建library供多個工程共享代碼、資源是非常常見的需求,網上這種資料非常少,基本上都是講創建java工程,然後export,這種方式缺點非常多,大家可以自己google一下。
本文著重介紹如何創建Android library,並且在工程中使用此library提供的資源,具體步驟如下:
1. 創建一個Android工程,命名為MyLib
2. 進入工程設置選中Is Library

3. 創建另一個Android工程,命名為MyProj
4. 進入工程設置,添加MyLib

5. 在MyProj的AndroidManifest.xml中加入對library中activity的引用
<activity android:name="net.devdiv.mylib.MyLib" />
6. 由於編譯後library中的資源和引用它的project資源是合並在一起的,為了避免重名問題,需要對library中資源進行重命名
1). 把main.xml改為mylib.xml,同時修改MyLib.java代碼setContentView(R.layout.mylib);
2). strings.xml修改為
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="mylibhello">String fetched from lib!</string>
    <string name="mylib_app_name">MyLib</string>
</resources>
7. 在MyProj中引用MyLib的資源
package net.devdiv.myproj;

import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
import net.devdiv.mylib.*;
import android.content.Intent;

public class MyProj extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        TextView tv = (TextView)findViewById(R.id.myprojtext);
       tv.setText(R.string.mylibhello);
        
        Intent it = new Intent(this, MyLib.class);
        startActivity(it);
    }
}

⑤ android怎麼把其他app的內容分享到自己的app里

很多時候我們的應用在使用微信分享內容之後,希望其他用戶點擊該分享內容能夠跳轉到我們的App,以實現閉環,這樣的分享才是最有價值的。這種需求涉及到不同應用之間的交互,雖然微信提供了分享SDK,但仍然有不少限制,現在總結兩種在Android平台上初步認為可行的方案:

1.分享網頁,從分享的網頁跳轉回原App。

2.分享WXAppExtendObject類型的數據,且只能分享給好友,好友從聊天列表點擊收到的分享內容可以直接跳轉第三方App(前提是好友手機上已經安裝了該App)。下面來詳細說明兩個方案,由於是在項目中實測的,為了隱私及行文方便,假設我們的應用的名字為MyApp,效果截圖也就不再展示。

方案一:

從WebView(該WebView從屬於另一個App,並非我們自己的App)跳轉到MyApp的某個界面(這里以跳轉到MyApp的Acticity A為例)。具體的實現邏輯如下:

(1)該WebView顯示的網頁內容只是一個超鏈接,自定義了一個scheme=myapp://,後邊可以附加一些參數,如果需要從網頁向App傳值的話。

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>This is title</title>

</head>

<body>

<a href=』myapp://id=909624′>Jump to MyApp</a>

</body>

</html>

該網頁在WebView打開後就是一個簡單的超鏈接,截圖不再附。

(2)MyApp中的Activity A需要配置特定的infliter,如下:

<activity

<intent-filter>

<data android:scheme="myapp" />

<action android:name="android.intent.action.VIEW" />

<category android:name="android.intent.category.DEFAULT" />

<category android:name="android.intent.category.BROWSABLE"/>

</intent-filter>

</activity>

(3)當在WebView上點擊上述自定義的超鏈接時就可以打開MyApp的A界面,所傳遞的參數也可以在所跳轉到的Activity中獲取,方法如下:

getIntent().getScheme();//獲得Scheme名稱

getIntent().getDataString();//獲得Uri全部路徑,根據自定義的格式解析字元串即可獲取我們上面附加的參數。可行的實施方案:

MyApp中調用微信分享分享網頁內容,只需要在網頁中嵌入跟Android客戶端約定好的超鏈接協議scheme,那麼點擊時就可以跳轉到MyApp。

問題1:如果用戶安裝了MyApp,就可以點擊網頁跳轉,如果沒有安裝MyApp的話,WebView就會提示找不到該頁面。製作網頁時可以在網頁中做檢測,沒安裝MyApp的話,頁面就重定向到應用的下載頁面。

問題2:在普通App的WebView中和瀏覽器中上述機制是可以的,但是在微信的WebView是不可以點擊直接跳轉我們的應用的,可能是微信做了某些過濾,且僅僅支持跟微信有深度合作的應用的跳轉,如大眾點評是可以的。針對這種情況,我們可以引導用戶使用瀏覽器打開所分享的網頁,然後點擊就可以跳轉應用了。方案二:

使用微信SDK分享WXAppExtendObject數據給好友,好友點擊跳轉MyApp的某個頁面(需要在分享時傳遞構造跳轉Intent的參數)。

1.該類型的分享(具體請參考微信分享SDK)可以帶幾個參數,參數中必須附帶一些構造跳轉Intent的數據。

2.好友點擊分享的內容,回調IWXAPIEventHandler介面的類的onReq方法,具體為

ConstantsAPI.COMMAND_SHOWMESSAGE_FROM_WX:這種情況才會調用,此時可以取出分享時附帶在參數中的一些數據,構造一個跳轉Intent,調用startActivity(intent) 來打開MyApp。

由於是項目實測,這種實現方式的截圖也就不傳了。

問題1:該分享方式只能分享給好友,不能分享到朋友圈。

問題2:如果好友沒安裝MyApp,點擊微信中好友分享過來的消息後無反應,無法提醒「未安裝MyApp,請下載」,因為這些邏輯要實現的話本身就是在MyApp裡面寫的,原本沒裝的話根本無法檢測。

問題3:WXAppExtendObject類型的分享,數據有大小限制,

extInfo(String)限制2KB;

fileData(byte[])供第三方使用的文件二進制數據,最大10M;

filePath:(String)Local directory of the file provided for applications,本身長度最大10KB,文件大小同上,不超過10M。以上就是Android平台好友點擊微信分享的內容後跳轉來源App的兩種實現方案,各有優點和局限性,請根據自身業務需求選擇合適的分享方式,由於未能附截圖說明,如有哪裡表述不清楚的,歡迎留言討論。

閱讀全文

與androidapp調用另一個app相關的資料

熱點內容
python雜記完整視頻 瀏覽:120
小鹿有約app在哪裡下載 瀏覽:866
e盾山寨源碼 瀏覽:761
手機音樂播放器源碼 瀏覽:474
androidsdk下載更新 瀏覽:623
python讀入多個文件 瀏覽:409
現在哪個app能交朋友 瀏覽:985
多空博士指標源碼 瀏覽:543
程序員考編制關注的公眾號 瀏覽:788
大湯PDF 瀏覽:939
寫給大家看的pdf 瀏覽:353
開福區電腦編程培訓 瀏覽:764
長安悅翔v7的壓縮比是多少 瀏覽:783
russian4如何更換伺服器 瀏覽:264
linux對ip限速 瀏覽:899
貓和老鼠程序員視頻 瀏覽:40
解壓之後自動運行批處理 瀏覽:636
子宮肌瘤手術前吃什麼解壓葯好 瀏覽:300
虛擬機兩台伺服器怎麼互聯 瀏覽:880
什麼是王者伺服器達到上限 瀏覽:579