Android深层链接(意图过滤器)数据大小限制?

时间:2016-01-15 11:03:06

标签: android android-intent deep-linking url-scheme

我使用意图过滤器深度链接到另一个应用程序,同时传递数据查询字符串语法如下:

myappscheme://com.domain.myappname/receivingIntent?data=MY_DATA_HERE

这可以按预期工作。由于我在查询字符串中传递数据,我想知道是否存在大小限制,因为它跟随URL scheme (GET query string limits)

思想应用与浏览器不同,我只想确定是否有任何限制。我确实在Deep linking / 上查看了android文档,但未提及大小。

P.S:

  • 我拥有这个应用程序(不用担心集成任何第三方应用程序)
  • 应用程序i建筑物不是原生的(使用Kony)。它仅支持这种共享方式,因此我没有其他选择。
  • 我已经在模拟器上使用64k字符串进行了测试,并按预期工作。

1 个答案:

答案 0 :(得分:0)

发布我自己未经验证的答案,因为我没有继续进行此活动。

如上述Simon所述,根据Android文档中关于捆绑包大小的限制

  

通过意图发送数据时,应注意限制   数据大小为几KB。发送过多的数据可能导致系统   抛出TransactionTooLargeException异常。

发件人:https://developer.android.com/guide/components/activities/parcelables-and-bundles

  

在远程过程调用期间,的参数和返回值   呼叫将作为存储在活页夹中的包裹对象进行传输   事务缓冲区。如果参数或返回值太大   以适合事务缓冲区,则调用将失败,并且   会引发TransactionTooLargeException。

     

Binder事务缓冲区的固定大小有限,目前为1Mb,   该流程中所有正在进行的事务共享的内容。   因此,当有很多异常时,可以抛出此异常   即使大多数个人交易都在进行中   尺寸适中。

发件人:https://developer.android.com/reference/android/os/TransactionTooLargeException