问题大全

2017-05-14  本文已影响40人  EvanPoison

1: 在AS中无法clone码云上的项目,报错:error setting certificate verify locations
解决办法:在git的安装路径下找到git.exe目录,进入命令行,git config --global http.sslVerify false
2:1,Error Loading Project: Cannot load module walk
解决:close project , import project
3:scrollview嵌套listview显示不全
原因:scrollView中ListView在OnMeasure阶段无法测出实际的高度,我们需要给他设置AT_MOST模式以支持很大的高度。这时候可以自定义一个MyListView 继承自Listview,然后重写onMeasure方法即可
参考地址:http://blog.csdn.net/hanhailong726188/article/details/46136569
4:Android多工程全局配置
参考地址:Android打包那些事 http://www.cnblogs.com/qianxudetianxia/p/4948499.html
随着产品渠道的铺开,往往一套代码需要支持多个产品形态,这就需要抽象出主要代码到一个Library,然后基于Library扩展几个App Module。
相信每个module的build.gradle都会有这个代码:

     android {
           compileSdkVersion 22
           buildToolsVersion "23.0.1"
           defaultConfig {
             minSdkVersion 10
             targetSdkVersion 22
             versionCode 34
             versionName "v2.6.1"
          }
      }

当升级sdk、build tool、target sdk等,几个module都要更改,非常的麻烦。最重要的是,很容易忘记,最终导致app module之间的差异不统一,也不可控。
强大的gradle插件在1.1.0支持全局变量设定,一举解决了这个问题。
先在project的根目录下的build.gradle定义ext全局变量:

ext {
    compileSdkVersion = 22
    buildToolsVersion = "23.0.1"
    minSdkVersion = 10
    targetSdkVersion = 22
    versionCode = 34
    versionName = "v2.6.1"
}

然后在各module的build.gradle中引用如下:

android {
    compileSdkVersion rootProject.ext.compileSdkVersion
    buildToolsVersion rootProject.ext.buildToolsVersion

    defaultConfig {
        applicationId "com.xxx.xxx"
        minSdkVersion rootProject.ext.minSdkVersion
        targetSdkVersion rootProject.ext.targetSdkVersion
        versionCode rootProject.ext.versionCode
        versionName rootProject.ext.versionName
    }
}

5:activity的过度动画
调用该方法即可: overridePendingTransition()
参考地址:http://www.jianshu.com/p/c19e607f08aa
http://blog.csdn.net/qibin0506/article/details/48129139/
6:报错:[Error:No service of type Factory<LoggingManagerInternal> available in ProjectScopeServices.]
解决方法:clean项目再编译,会有更详细的出错信息,我的出错信息是maven问题,修改一下版本即可
classpath 'com.github.dcendents:android-maven-gradle-plugin:1.4.1',原来是1.3,改为1.4.1
参考地址:http://blog.csdn.net/suwenlai/article/details/55046644
7:在使用terminal编译打包的时候,出现一直下载[http://services.gradle.org/distributions/gradle-2.2.1-all.zip]
解决办法:手动下载gradle-2.2.1-all.zip,
拷贝到C:\Users\天越往事.gradle\wrapper\dists\gradle-2.14.1-all\8bnwg5hd3w55iofp58khbp6yv
可以看到根本没下载完,(然后不需要解压,重启Android studio),打开terminal,执行命令:
gradlew clean assembleRelease --stacktrace --no-daemon
会看到这样的信息:Unzipping。。。。最后:build successful
在项目的app\build\outputs\apk发现打出来的包是:app-release-unsigned.apk,需要在app的build.gradle里配置:

 signingConfigs {
        release {
            storeFile file('robustTest.jks')
            storePassword 'xxxxxx'
            keyAlias 'robusttest'
            keyPassword 'xxxxxx'
        }
    }
    buildTypes {
        release {
            minifyEnabled true
            shrinkResources true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            signingConfig signingConfigs.release
        }
        debug {
            signingConfig signingConfigs.release

        }
    }

8:Android中关于跳转Activity后焦点聚在EditView后自动弹出虚拟键盘问题
解决:在AndroidManifest.xml文件中,找到对应的Activity代码,然后在其内部添加这样的一条语句------android:windowSoftInputMode="adjustUnspecified|stateHidden"
参考地址:http://blog.csdn.net/sightness/article/details/7821191
9:Android中TextView限制行数及末尾已省略号显示
解决:设置xml属性:android:maxLines=”3” 限制最大行数
android:ellipsize=”end” 末尾省略号

上一篇下一篇

猜你喜欢

热点阅读