使用Android studio编程进行签名打包时遇到的坑

问题 一、


按照我们的正常思维,如果我的项目编译和运行都是成功的那么签名打包也会成功,但是并不是这样的


public VideoFragment(VideoInterface activity, Context context) {
    this.activity = activity;
    this.context = context;

}

public VideoFragment() {

}
这是在一个fragment中,写了有参构造和无参构造,但是官方推荐是不建议在fragment中这样写有参的,如果这样写就会出错,但是这个错误在编译运行时是允许的,在签名打包时就不允许了。错误提示我就不列出了,直接给解决的办法,

@SuppressLint("ValidFragment")
public class VideoFragment extends Fragment implements VideoInterface
在这个类的前面加一个这个
@SuppressLint("ValidFragment")

这样的话签名也没问题了。

问题 二、

  如果说你的项目中对添加了一个或者多个依赖,可以正常编译运行,但签名打包也不行,这个问题产生的原因可能是jar包重复了,如果知道是哪个重复就很好解决了,如果不知道的法提供一个简单的方法,在你的项目下面的build.gralde下面加上这个

lintOptions {
    checkReleaseBuilds false
    abortOnError false
}
这样做有一个好处,就是如果你的项目可以正常编译运行,但是打包出现问题,加这个的话就会正常。



猜你喜欢

转载自blog.csdn.net/qq_33756493/article/details/63253496