Reginer / aosp-android-jar

AOSP编译出的android.jar,sdk里面以前反射调用的方法,现在可以直接调用了。
MIT License
540 stars 79 forks source link

替换32的android.jar在AS编译报错 , This feature requires ASM7 #19

Closed Jeffery336699 closed 1 year ago

Jeffery336699 commented 1 year ago

太感谢作者你这个android.jar包,我采用你的android.jar替换在28、30上都很正常,但是使用32的时候,AS编译的时候就报如下错误

* What went wrong:
Execution failed for task ':testA:parseDebugLocalResources'.
> Could not resolve all files for configuration ':testA:androidApis'.
   > Failed to transform android.jar to match attributes {artifactType=android-platform-attr, org.gradle.libraryelements=jar, org.gradle.usage=java-runtime}.
      > Execution failed for PlatformAttrTransform: C:\Users\jun\AppData\Local\Android\Sdk\platforms\android-32\android.jar.
         > This feature requires ASM7

希望作者能百忙之中帮忙解答下该如何处理 ,万分感谢❤

Jeffery336699 commented 1 year ago

1、根据提示我添加app模块添加asm7依赖之后并且注释掉依赖的两个library后就可以编译运行,但是不知道为什么why(Ps:依赖的两个module仅仅作为startup的演示module)

dependencies{  // app module
         implementation 'org.ow2.asm:asm:7.0'
//    implementation project(path: ':testA')
//    implementation project(path: ':testB')
}
dependencies{  // testA module
         implementation "androidx.startup:startup-runtime:1.1.0"
}

2、如果取消testA、testB的注释就会编译报错

Caused by: org.gradle.api.internal.artifacts.ivyservice.DefaultLenientConfiguration$ArtifactResolveException: Could not resolve all files for configuration ':testA:androidApis'.
Reginer commented 1 year ago

母鸡呀,我能想到的可能是你的AS版本和这个jar对不上,当时我用这个jar的时候是使用的当时AS最新版,也许你升级下AS可以解决。或者你使用33编译

Jeffery336699 commented 1 year ago

@Reginer 感谢你的回复,我改为使用33的android.jar,一切都很好💖