我正在尝试编写服务所需的AIDL文件。如下图所示:

// ------------------------------------------- ISomeIface.aidl

package com.vinay.mm.aidl;
import android.net.NetworkInfo;

interface ISomeIface
{
    int someFunction( int arg0, int arg1);
}


没有导入android.net.NetworkInfo也可以;在aidl文件中。我得到的错误是
找不到类android.net.NetworkInfo的导入

因此,我将NewtorkInfo文件复制到了我的项目中(必须修复一些错误),如下所示


然后更改导入android.net.NetworkInfo;导入com.vinay.mm.net.NetworkInfo;
如下所示。

package com.vinay.mm.aidl;
import com.vinay.mm.net.NetworkInfo;

interface ISomeIface
{
    int someFunction( int arg0, int arg1);
}


现在它可以正常工作了。您能建议我我在做什么错吗?
谢谢。

最佳答案

出现在aidl导入中的所有文件应在软件包中相同,并且两端都应可打包,这在处理aidl时要注意一点,否则最终会出错。

这就是为什么它最初不起作用的原因,但是当您将其移至相同的程序包时它起作用了。

关于android - 无法在aidl中导入android.net.NetworkInfo,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20650945/

10-12 13:55