Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/202.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
开发Android 9.0 eSIM LPA(系统应用程序)_Android - Fatal编程技术网

开发Android 9.0 eSIM LPA(系统应用程序)

开发Android 9.0 eSIM LPA(系统应用程序),android,Android,尝试用新的Pie为eSIM开发android LPA系统应用程序 文档说要扩展抽象的EuiccService类。但是这个类不在官方SDK中,文档中的链接只是指向android源repo中相应的文件 我尝试将此文件/类用作依赖项,但它引用了其他内部android类/注释,并导致生成/IDE错误 有人知道如何使用这个吗 我真的需要从中提取android src代码并引用必需的类吗 编辑:我想我已经解决了这个问题,找到了一些可能的解决方案,但它们有点麻烦。从这里使用了android.jar:(包含带有

尝试用新的Pie为eSIM开发android LPA系统应用程序

文档说要扩展抽象的EuiccService类。但是这个类不在官方SDK中,文档中的链接只是指向android源repo中相应的文件

我尝试将此文件/类用作依赖项,但它引用了其他内部android类/注释,并导致生成/IDE错误

有人知道如何使用这个吗

我真的需要从中提取android src代码并引用必需的类吗

编辑:我想我已经解决了这个问题,找到了一些可能的解决方案,但它们有点麻烦。从这里使用了android.jar:(包含带有隐藏API和内部资源的修改后的android.jar)。当我替换整个文件并导致奇怪的构建错误时,它不起作用,但我手动将android\service\euicc\文件夹转移到android-28 sdk的原始android.jar,它工作得很好(类可用,apk构建没有问题)。而且无需浪费时间拉取和构建AOSP

编辑#2:显然不是完全可修复的atm。android gradle插件(至少3.2.x-3.3.x)存在一个问题,在完全同步过程中,一些构建任务会从android.jar生成模拟类,如果修改了,该过程就会失败(讨论如下:)。错误如下所示:

无法使用transform MockableJarTransform将文件“android.jar”转换为匹配属性{artifactType=android mockable jar,returnDefaultValues=false}

虽然不方便,但有一个解决方法:
当您需要对项目进行完全同步时,请将android.jar替换为原始的、运行同步的、恢复修改后的android.jar,IDE现在将运行索引,并且在下次完全同步之前,类将在构建工作中再次可用。
如果/当此帖子已修复或找到新解决方案时,将更新此帖子

编辑#3:这里可能是EuiccService案例的最终解决方案(结果非常明显):

不要将“android/service/euicc”文件夹添加到android.jar中,只需将其放在单独的库中,并将其作为compileOnly依赖项添加即可。由于这些类不在SDK中,因此lib不应引起冲突(如果您需要使用修改后的框架或访问现有类中的隐藏API,则会出现这种情况)。

如果您要创建系统应用程序,您将通过以下几种方式进行:

  • 您可以通过引用调用系统API的一部分(例如方法)
  • 您可以将应用程序作为AOSP项目的一部分(下载AOSP代码,并将您的应用程序作为软件包/apps/的一部分介绍)

如果您要创建一个系统应用程序,可以通过以下几种方式进行:

  • 您可以通过引用调用系统API的一部分(例如方法)
  • 您可以将应用程序作为AOSP项目的一部分(下载AOSP代码,并将您的应用程序作为软件包/apps/的一部分介绍)

我曾尝试过类似的事情(两年前),需要Android内部调用,我必须从AOSP中逐个获取所需的所有文件。最后它起作用了,但很痛苦。我没有找到任何其他方法我曾尝试过做类似的事情(两年前),需要Android内部调用,我必须从AOSP中逐个获取所需的所有文件。最后它起作用了,但很痛苦。我没找到别的办法