簡體   English   中英

在Android上從另一個Air應用程序打開一個Air應用程序

[英]Open one Air app from another Air app on Android

我需要從Android上的另一個Air應用程序中打開一個Air應用程序。 到目前為止,我嘗試了三種選擇,但都失敗了:

  1. 使用此處描述的adobe.utils.ProductManager打開,但找不到“發布者ID”。 這是一篇很老的文章,我對此沒有寄予希望。

  2. 使用andoid:scheme ,可以在瀏覽器中正常工作,但是從其他Air應用程序中,我會收到“違反安全沙箱”的信息。 我結合了正常鏈接和重定向頁面使用了這一功能。 看起來很不專業,但可以。

     navigateToURL(new URLRequest('air.com.developer.appname://')); 
  3. 使用intent:此處進行了介紹,受益於打開新任務。

     var url:String = ("intent:#Intent;" + "action=android.intent.action.MAIN;" + "category=android.intent.category.LAUNCHER;" + "launchFlags=0x10000000;" + "component=<your-package-name>/.<your-activity-name>;" + "end"; navigateToURL(new URLRequest(url)); 

這些都不適合我。

最后一個選項看起來是最好的,但是我找不到我的活動名稱

這是我的清單數據的一部分:

<activity android:launchMode="standard">
    <intent-filter>
        <action android:name="android.intent.action.MAIN"/>
        <category android:name="android.intent.category.LAUNCHER"/>
    </intent-filter>
    <intent-filter>
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.BROWSABLE" />
        <category android:name="android.intent.category.DEFAULT" />
        <data android:scheme="air.com.developer.appname" />
    </intent-filter>
</activity>

如果我嘗試向<activity />添加android:name屬性,則會得到:

error 404: Android attribute android:name is not allowed to be overridden

有沒有辦法找出默認的android:name屬性? 或關於如何執行此操作的其他建議? 謝謝。

如果您使用的是Flash Builder,它將自動為您的活動命名。 例如,它為我的活動指定了.AppEntry的名稱,因此對於第三種情況(通過URI表示),我必須輸入以下內容:

    var url:String = ("intent:#Intent;" +
              "action=android.intent.action.MAIN;" +
              "category=android.intent.category.LAUNCHER;" +
              "launchFlags=0x10000000;" +
              "component=sebastianT.app.package/.AppEntry;" +
              "end";
    navigateToURL(new URLRequest(url));

我希望這有幫助。

編輯

我下載了一個名為“內存使用情況”的應用程序( https://play.google.com/store/apps/details?id=mem.usage&hl=es_419 ),並能夠使用以下代碼從Air應用程序中打開它:

            var url:String = ("intent:#Intent;" +
                "action=android.intent.action.MAIN;" +
                "category=android.intent.category.LAUNCHER;" +
                "component=mem.usage/.activity.MainActivity;" +
                "end");
            navigateToURL(new URLRequest(url));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM