问题标签 [aidl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
278 浏览

android - Android远程服务查询

如果我想从 UI 线程中调用远程服务的功能.. 我该怎么做?

0 投票
2 回答
2690 浏览

android - 为什么我们不能直接调用android(基于AIDL)远程服务的api?


我正在编写一个简单的基于 AIDL 的 android 远程服务和一个客户端来访问远程服务公开的 API。我在互联网上查了一下,在每个帖子中,人们都在客户端代码的按钮的 onClickListener() 方法中调用了远程服务 API。但是,当我尝试在 onClickListener() 方法之外调用远程服务公开的 API 时,它会抛出 NullPointerException,表明我的服务对象尚未初始化(请检查客户端代码的 onCreate 方法中的注释)。我已将我的代码附在这个问题上。如果有人可以向我解释为什么会出现这种行为,那就太好了。
这是客户端代码:

这是我的远程服务代码:

这是我的aidl文件:

提前致谢,
Rupesh

0 投票
1 回答
1293 浏览

android - Android:如何打包部署AIDL接口?

我们的应用程序通过 AIDL 接口公开了一个 Android 服务,该接口还依赖于一些子 AIDL 包装器和可解析对象。将这些打包成 jar 文件以供外部使用的推荐方法是什么?

原始 AIDL 文件可以放入 jar 文件中,还是必须先编译成存根?

0 投票
1 回答
116 浏览

android - Android - 活动之间的共享网络

我正在开发一个通过 TCP 使用自定义网络协议的应用程序。应用程序中的几个任务使用不同的活动,但是每个活动都需要启用网络(因为每个活动都必须通过网络发送/接收一些自定义数据包)。所以我的想法基本上是

  1. 在应用程序启动时 - 创建一个服务来处理网络(我在某处读到我应该在该服务的另一个线程中进行网络以防止 ANR)

  2. 运行新活动时,它会绑定到该服务。在此期间,它从服务发送/接收数据。当活动结束时,它与服务解除绑定。

我想知道这是否有意义。

另外,我知道我可以使用aidl接口将数据发送到服务(通过网络发送),但是我将如何从服务接收数据?通过aidl 轮询似乎是我能想到的唯一方法——这意味着我需要在我的每个活动中使用另一个线程来防止ANR。当然还有更好的方法。

感谢您的帮助,并对建议持开放态度。

0 投票
1 回答
4509 浏览

android - android:在aidl文件com.android.internal.telephony.gsm.NetworkInfo中找不到类错误的导入

我正在尝试通过一些自定义在我的应用程序中重新使用PhoneUtils.java( )。~/android_src/packages/apps/ Phone/src/com/android/phone/

我已经添加INetworkQueryServiceCallback.aidlINetworkQueryService.aidl进入我的应用程序文件夹(~/android_src/packages/ apps/USSDActivity/src/com/myapp/ussdactivitytest)但是当我与 android 源一起构建时,我收到以下错误:

安卓.mk:

0 投票
1 回答
3194 浏览

android - 使用aidl的Android远程服务

我正在尝试使用 Android AIDL 在 Eclipse 中创建远程服务。我在 /src 中创建了我的 AIDL 文件 IRemoteService.aidl,如下所示:

构建完成后,我在 /gen 中获得了一个巨大的文件 IRemoteService.java,其中包含以下这些类和方法(它与我在文档中看到的任何内容都不相似):


那么为什么 IRemoteService.java 包含这么多文档中没有提到的垃圾呢?我怎么可能知道如何处理这一切?我怎么可能知道如何处理它?

0 投票
1 回答
2300 浏览

android - 通过跨进程引用返回 AIDL 接口实现

我有一个小 Android 项目正在进行,其中涉及一些 IPC,其中客户端活动绑定到我的服务。
我将 AIDL 用于 IPC 和 RPC,效果很好,但是我无法将服务端实例化的 AIDL 接口实现返回给客户端:

当客户端与服务在同一进程中运行时——意味着在本地运行服务——一切正常。
但是当客户端和服务在不同的进程中分离时,在 ILogDroidBinder.aidl 中定义的方法 startLogSession 总是返回 null。
在这个接口中实现的另一个方法——getSessionIds——它返回一个包含整数的列表,总是有效的(本地和跨进程)。

我在猜测并假设我的 ILogDroidSession 实现也应该实现 Parcelable,但这不起作用,因为我无法打包包含对 SQLiteDatabase 的引用的对象(或者我可以吗?)。

这是相关的代码。如果有人可以在这里帮助我,我真的很高兴。也许我只是在某处遗漏了一点,因为这是我的第一个 Android 项目,我还没有完全参与。

ILogDroidSession.aidl(这是我想要返回给客户端的一个实现):

ILogDroidBinder.aidl(传递给客户端的onServiceConnected的IBinder接口):

LogDroidService.java(我的服务中的相关代码):

MainActivity.java(相关客户端代码):

0 投票
1 回答
249 浏览

android - 援助服务是如何开始的?

我正在学习姜饼的 SIP 堆栈。ISipService.aidl 似乎与服务有关。SipService 的 start() 将服务添加到 ServiceManager。但我不知道是谁调用了这个 start()。同样,我很困惑 TELEPHONY_SERVICE 和 iphonesubinfo 服务是如何启动的。我查看了 AIDL,但这些文档都有一个扩展 Service 的类。有人可以给我看一些热门歌曲吗?非常感谢。

0 投票
1 回答
189 浏览

android - 在android项目中是否有独立调试服务的选项?

在我的项目中,我使用了几个 .aidl 接口,但是在调试时这并没有越过aidl 边界???

我可以独立调试 Android 接口定义语言 (.AIDL) 吗???

0 投票
1 回答
7713 浏览

java - Android:AIDL 中的自定义对象

我有一个通过两个aidl 实现与自定义服务交互的应用程序。运行服务时,我遇到了以下异常:

从这个错误来看,我认为这与执行的编组有关。所以我检查了两个aidl实现;急救(使用原语)似乎工作正常(我认为因为他们不需要我指定导入/实现);但是,第二个(使用自定义对象)似乎崩溃了,给出了上述错误。我已确保自定义对象正确实现了 parcelable(请参阅帖子底部的实现),甚至尝试从单独的aidl 文件中引用自定义对象,如下所示。

(单独的aidl文件。)-(IMyItem.aidl)


(其他辅助文件。) - (IAsyncService.aidl)


(Parcelable 实现)(MyItem)

有什么我遗漏或完全忽略的吗?

谢谢约翰