android studio 常见错误

本文总结了Android Studio开发过程中遇到的各种常见错误及其解决方案,包括构建配置、JNI调用、依赖管理、资源加载等多个方面的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

android studio 常见错误

1. 
pkg: /data/local/tmp/com.example.nativecodec
Failure [INSTALL_FAILED_OLDER_SDK]
修改AndroidManifest.xml,删除或者修改<uses-sdk android:minSdkVersion="21"/>

2.
(大小写敏感,classpath不包括包名,class包括包名)
javah -d <outputdir> -classpath <classpath> <fully_qualified_class>

javah -d aaa -classpath "C:\opus\OpusPlayer\opuslib\build\intermediates\classes\debug" top.oply.opuslib.OpusTool

3.
ndk-build
Android NDK: Could not find application project directory !

ndk-build NDK_PROJECT_PATH="path"

一般在src/main/jni目录执行ndk-build

4. jni 
<div class="linenums" style="color:rgb(30,52,123); margin-top:0px; margin-bottom:0px; padding-left:0px"><div class="L0" style="color:rgb(190,190,197); line-height:18px; padding-left:0px; list-style-type:none"><code class="language-java" style="font-family:Consolas,'Liberation Mono',Menlo,Courier,monospace; word-wrap:break-word"><span class="pln" style="color:#48484c;"><span style="font-size:9pt">len </span></span><span class="pun" style="color:#93a1a1;"><span style="font-size:9pt">=</span></span><span class="pln" style="color:#48484c;"> </span><span class="pun" style="color:#93a1a1;"><span style="font-size:9pt">(*</span></span><span class="pln" style="color:#48484c;"><span style="font-size:9pt">env</span></span><span class="pun" style="color:#93a1a1;"><span style="font-size:9pt">)-></span></span><span class="typ" style="color:teal;"><span style="font-size:9pt">GetStringLength</span></span><span class="pun" style="color:#93a1a1;"><span style="font-size:9pt">(</span></span><span class="pln" style="color:#48484c;"><span style="font-size:9pt">env</span></span><span class="pun" style="color:#93a1a1;"><span style="font-size:9pt">,</span></span><span class="pln" style="color:#48484c;"><span style="font-size:9pt"> op</span></span><span class="pun" style="color:#93a1a1;"><span style="font-size:9pt">);//op不能为NULL, 否则出错</span></span></code></div></div><div class="linenums" style="color:rgb(30,52,123); margin-top:0px; margin-bottom:0px; padding-left:0px"><div class="L1" style="color:rgb(190,190,197); line-height:18px; padding-left:0px; list-style-type:none"><code class="language-java" style="font-family:Consolas,'Liberation Mono',Menlo,Courier,monospace; word-wrap:break-word"><span class="pun" style="color:#93a1a1;"><span style="font-size:9pt">(*</span></span><span class="pln" style="color:#48484c;"><span style="font-size:9pt">env</span></span><span class="pun" style="color:#93a1a1;"><span style="font-size:9pt">)-></span></span><span class="typ" style="color:teal;"><span style="font-size:9pt">GetStringUTFRegion</span></span><span class="pun" style="color:#93a1a1;"><span style="font-size:9pt">(</span></span><span class="pln" style="color:#48484c;"><span style="font-size:9pt">env</span></span><span class="pun" style="color:#93a1a1;"><span style="font-size:9pt">,</span></span><span class="pln" style="color:#48484c;"><span style="font-size:9pt"> op</span></span><span class="pun" style="color:#93a1a1;"><span style="font-size:9pt">,</span></span><span class="pln" style="color:#48484c;"> </span><span class="lit" style="color:#195f91;"><span style="font-size:9pt">0</span></span><span class="pun" style="color:#93a1a1;"><span style="font-size:9pt">,</span></span><span class="pln" style="color:#48484c;"><span style="font-size:9pt"> len</span></span><span class="pun" style="color:#93a1a1;"><span style="font-size:9pt">,</span></span><span class="pln" style="color:#48484c;"><span style="font-size:9pt"> opBuf</span></span><span class="pun" style="color:#93a1a1;"><span style="font-size:9pt">);</span></span></code></div></div><span style="color:#222222;line-height:22.1px"><span style="font-size:9pt">请见</span></span><a target=_blank target="_blank" class=" wrap external" href="http://stackoverflow.com/questions/32062819/subversion-command-line-client-version-is-too-old-error-in-android-studio" rel="nofollow noreferrer" style=""><span style="font-size:9pt">svn - "Subversion command line client version is too old" error in Android Studio</span><span class="icon-external" style="width:7px; height:7px; display:inline-block; vertical-align:0px; margin-left:4px"></span></a><div class="linenums" style="color:rgb(30,52,123); margin-top:0px; margin-bottom:0px; padding-left:0px"><div class="L0" style="color:rgb(190,190,197); line-height:18px; padding-left:0px; list-style-type:none"><code class="language-c" style="font-family:Consolas,'Liberation Mono',Menlo,Courier,monospace; word-wrap:break-word"><span class="pun" style="color:#93a1a1;"><span style="font-size:9pt"><</span></span><span class="pln" style="color:#48484c;"><span style="font-size:9pt">script src</span></span><span class="pun" style="color:#93a1a1;"><span style="font-size:9pt">=</span></span><span class="str" style="color:#dd1144;"><span style="font-size:9pt">"file:///android_asset/js/jquery.mobile-1.4.2.min.js"</span></span><span class="pun" style="color:#93a1a1;"><span style="font-size:9pt">></</span></span><span class="pln" style="color:#48484c;"><span style="font-size:9pt">script</span></span><span class="pun" style="color:#93a1a1;"><span style="font-size:9pt">></span></span><span class="pln" style="color:#48484c;">  </span></code></div></div>
<span style="font-size:9pt">8.org/gradle/api/publication/maven/internal/DefaultMavenFactory</span>
<span style="font-size:9pt">解决方法:如果用的是gradle2.4以上的版本,那么请</span>
<span style="font-size:9pt">将依赖</span><div class="linenums" style="color:rgb(30,52,123); margin-top:0px; margin-bottom:0px; padding-left:0px"><div class="L0" style="color:rgb(190,190,197); line-height:18px; padding-left:0px; list-style-type:none"><code class="language-c" style="font-family:Consolas,'Liberation Mono',Menlo,Courier,monospace; word-wrap:break-word"><span class="pln" style="color:#48484c;"><span style="font-size:9pt">classpath </span></span><span class="str" style="color:#dd1144;"><span style="font-size:9pt">'com.github.dcendents:android-maven-plugin:1.2'</span></span></code></div></div><span style="font-size:9pt">改为</span><div class="linenums" style="color:rgb(30,52,123); margin-top:0px; margin-bottom:0px; padding-left:0px"><div class="L0" style="color:rgb(190,190,197); line-height:18px; padding-left:0px; list-style-type:none"><code class="language-c" style="font-family:Consolas,'Liberation Mono',Menlo,Courier,monospace; word-wrap:break-word"><span class="pln" style="color:#48484c;"><span style="font-size:9pt">classpath </span></span><span class="str" style="color:#dd1144;"><span style="font-size:9pt">'com.github.dcendents:android-maven-gradle-plugin:1.3'</span></span></code></div></div><span style="font-size:10.5pt">
</span><span style="font-size:9pt">9 </span><span style="font-size:10.5pt; line-height:1.5"><span style="font-size:9pt">Gradle's dependency cache may be corrupt </span></span>
<span style="font-size:9pt">Unable to find method 'org.gradle.api.internal.project.ProjectInternal.getPluginManager()Lorg/gradle/api/internal/plugins/PluginManagerInternal;</span>
<span style="font-size:9pt">解决方法:清除gradle的cache</span>
<span style="font-size:9pt">10. EmptyThrowable</span>
<span style="font-size:9pt">Invalid Stub element type in index</span>
<span style="font-size:9pt">解决方法: Android studio内部缓存混乱。点击Android Studio -> File -> Invalidate caches/restart。重启之后解决</span><span style="font-size:10.5pt">
</span><span style="font-size:9pt">11.</span>


5. 精简代码错误
精简代码的方法
android {
    buildTypes {
        release {
            minifyEnabled true
            shrinkResources true
        }
    }
}
有时候引用第三方库是为了反射获得资源。精简指令的话,各种报错。用proguard来防止代码混淆

6. svn
Can't use Subversion command line client: C:\TortoiseSVN\bin\svn.exe Subversion command line client version is too old (1.9.2)
Android Studio版本1.3.1,svn目前最新版是1.9.2,居然提示版本太老?其实是版本太新了。更换成1.8版本就不会报错。

7. webview js
webview加载asset中的html,其中html引用的本地路径要设置成asset例如
8. 控件有时不能充满整个屏幕:
 
<div class="linenums" style="color:rgb(30,52,123); margin-top:0px; margin-bottom:0px; padding-left:0px"><div class="L0" style="color:rgb(190,190,197); line-height:18px; padding-left:0px; list-style-type:none"><code class="language-c" style="font-family:Consolas,'Liberation Mono',Menlo,Courier,monospace; word-wrap:break-word"><span class="pln" style="color:#48484c;">        </span><span class="typ" style="color:teal;">LinearLayout</span><span class="pln" style="color:#48484c;"> panel </span><span class="pun" style="color:#93a1a1;">=</span><span class="pln" style="color:#48484c;"> </span><span class="kwd" style="color:#1e347b;">new</span><span class="pln" style="color:#48484c;"> </span><span class="typ" style="color:teal;">LinearLayout</span><span class="pun" style="color:#93a1a1;">(</span><span class="kwd" style="color:#1e347b;">this</span><span class="pun" style="color:#93a1a1;">);</span></code></div><div class="L1" style="color:rgb(190,190,197); line-height:18px; padding-left:0px; list-style-type:none"><code class="language-c" style="font-family:Consolas,'Liberation Mono',Menlo,Courier,monospace; word-wrap:break-word"><span class="pln" style="color:#48484c;">        </span><span class="typ" style="color:teal;">LinearLayout</span><span class="pun" style="color:#93a1a1;">.</span><span class="typ" style="color:teal;">LayoutParams</span><span class="pln" style="color:#48484c;"> llp </span><span class="pun" style="color:#93a1a1;">=</span><span class="pln" style="color:#48484c;"> </span><span class="kwd" style="color:#1e347b;">new</span><span class="pln" style="color:#48484c;"> </span><span class="typ" style="color:teal;">LinearLayout</span><span class="pun" style="color:#93a1a1;">.</span><span class="typ" style="color:teal;">LayoutParams</span><span class="pun" style="color:#93a1a1;">(</span></code></div><div class="L2" style="color:rgb(190,190,197); line-height:18px; padding-left:0px; list-style-type:none"><code class="language-c" style="font-family:Consolas,'Liberation Mono',Menlo,Courier,monospace; word-wrap:break-word"><span class="pln" style="color:#48484c;">                </span><span class="typ" style="color:teal;">LinearLayout</span><span class="pun" style="color:#93a1a1;">.</span><span class="typ" style="color:teal;">LayoutParams</span><span class="pun" style="color:#93a1a1;">.</span><span class="pln" style="color:#48484c;">FILL_PARENT</span><span class="pun" style="color:#93a1a1;">,</span></code></div><div class="L3" style="color:rgb(190,190,197); line-height:18px; padding-left:0px; list-style-type:none"><code class="language-c" style="font-family:Consolas,'Liberation Mono',Menlo,Courier,monospace; word-wrap:break-word"><span class="pln" style="color:#48484c;">                </span><span class="typ" style="color:teal;">LinearLayout</span><span class="pun" style="color:#93a1a1;">.</span><span class="typ" style="color:teal;">LayoutParams</span><span class="pun" style="color:#93a1a1;">.</span><span class="pln" style="color:#48484c;">FILL_PARENT</span><span class="pun" style="color:#93a1a1;">);</span></code></div><div class="L4" style="color:rgb(190,190,197); line-height:18px; padding-left:0px; list-style-type:none"><code class="language-c" style="font-family:Consolas,'Liberation Mono',Menlo,Courier,monospace; word-wrap:break-word"><span class="pln" style="color:#48484c;">        panel</span><span class="pun" style="color:#93a1a1;">.</span><span class="pln" style="color:#48484c;">setLayoutParams</span><span class="pun" style="color:#93a1a1;">(</span><span class="pln" style="color:#48484c;">llp</span><span class="pun" style="color:#93a1a1;">);</span></code></div><div class="L5" style="color:rgb(190,190,197); line-height:18px; padding-left:0px; list-style-type:none"><code class="language-c" style="font-family:Consolas,'Liberation Mono',Menlo,Courier,monospace; word-wrap:break-word"><span class="pln" style="color:#48484c;">        root</span><span class="pun" style="color:#93a1a1;">.</span><span class="pln" style="color:#48484c;">addView</span><span class="pun" style="color:#93a1a1;">(</span><span class="pln" style="color:#48484c;">panel</span><span class="pun" style="color:#93a1a1;">);</span></code></div></div>

而应该是:
 
<div class="linenums" style="color:rgb(30,52,123); margin-top:0px; margin-bottom:0px; padding-left:0px"><div class="L0" style="color:rgb(190,190,197); line-height:18px; padding-left:0px; list-style-type:none"><code class="language-c" style="font-family:Consolas,'Liberation Mono',Menlo,Courier,monospace; word-wrap:break-word"><span class="pln" style="color:#48484c;">        </span><span class="typ" style="color:teal;">LinearLayout</span><span class="pln" style="color:#48484c;"> panel </span><span class="pun" style="color:#93a1a1;">=</span><span class="pln" style="color:#48484c;"> </span><span class="kwd" style="color:#1e347b;">new</span><span class="pln" style="color:#48484c;"> </span><span class="typ" style="color:teal;">LinearLayout</span><span class="pun" style="color:#93a1a1;">(</span><span class="kwd" style="color:#1e347b;">this</span><span class="pun" style="color:#93a1a1;">);</span></code></div><div class="L1" style="color:rgb(190,190,197); line-height:18px; padding-left:0px; list-style-type:none"><code class="language-c" style="font-family:Consolas,'Liberation Mono',Menlo,Courier,monospace; word-wrap:break-word"><span class="pln" style="color:#48484c;">        </span><span class="typ" style="color:teal;">LinearLayout</span><span class="pun" style="color:#93a1a1;">.</span><span class="typ" style="color:teal;">LayoutParams</span><span class="pln" style="color:#48484c;"> llp </span><span class="pun" style="color:#93a1a1;">=</span><span class="pln" style="color:#48484c;"> </span><span class="kwd" style="color:#1e347b;">new</span><span class="pln" style="color:#48484c;"> </span><span class="typ" style="color:teal;">LinearLayout</span><span class="pun" style="color:#93a1a1;">.</span><span class="typ" style="color:teal;">LayoutParams</span><span class="pun" style="color:#93a1a1;">(</span></code></div><div class="L2" style="color:rgb(190,190,197); line-height:18px; padding-left:0px; list-style-type:none"><code class="language-c" style="font-family:Consolas,'Liberation Mono',Menlo,Courier,monospace; word-wrap:break-word"><span class="pln" style="color:#48484c;">                </span><span class="typ" style="color:teal;">LinearLayout</span><span class="pun" style="color:#93a1a1;">.</span><span class="typ" style="color:teal;">LayoutParams</span><span class="pun" style="color:#93a1a1;">.</span><span class="pln" style="color:#48484c;">FILL_PARENT</span><span class="pun" style="color:#93a1a1;">,</span></code></div><div class="L3" style="color:rgb(190,190,197); line-height:18px; padding-left:0px; list-style-type:none"><code class="language-c" style="font-family:Consolas,'Liberation Mono',Menlo,Courier,monospace; word-wrap:break-word"><span class="pln" style="color:#48484c;">                </span><span class="typ" style="color:teal;">LinearLayout</span><span class="pun" style="color:#93a1a1;">.</span><span class="typ" style="color:teal;">LayoutParams</span><span class="pun" style="color:#93a1a1;">.</span><span class="pln" style="color:#48484c;">FILL_PARENT</span><span class="pun" style="color:#93a1a1;">);</span></code></div><div class="L4" style="color:rgb(190,190,197); line-height:18px; padding-left:0px; list-style-type:none"><code class="language-c" style="font-family:Consolas,'Liberation Mono',Menlo,Courier,monospace; word-wrap:break-word"><span class="pln" style="color:#48484c;">        root</span><span class="pun" style="color:#93a1a1;">.</span><span class="pln" style="color:#48484c;">addView</span><span class="pun" style="color:#93a1a1;">(</span><span class="pln" style="color:#48484c;">panel</span><span class="pun" style="color:#93a1a1;">.</span><span class="pln" style="color:#48484c;"> llp</span><span class="pun" style="color:#93a1a1;">);</span></code></div></div>
9. 拼写错误
<div class="linenums" style="color:rgb(30,52,123); margin-top:0px; margin-bottom:0px; padding-left:0px"><div class="L0" style="color:rgb(190,190,197); line-height:18px; padding-left:0px; list-style-type:none"><code class="language-c" style="font-family:Consolas,'Liberation Mono',Menlo,Courier,monospace; word-wrap:break-word"><span class="pun" style="color:#93a1a1;"><</span><span class="pln" style="color:#48484c;">uses</span><span class="pun" style="color:#93a1a1;">-</span><span class="pln" style="color:#48484c;">permission android</span><span class="pun" style="color:#93a1a1;">:</span><span class="pln" style="color:#48484c;">name</span><span class="pun" style="color:#93a1a1;">=</span><span class="str" style="color:#dd1144;">"android.permission.BLUETOOTH"</span><span class="pln" style="color:#48484c;"> </span><span class="pun" style="color:#93a1a1;">/></span></code></div></div>

而不是 
<div class="linenums" style="color:rgb(30,52,123); margin-top:0px; margin-bottom:0px; padding-left:0px"><div class="L0" style="color:rgb(190,190,197); line-height:18px; padding-left:0px; list-style-type:none"><code class="language-c" style="font-family:Consolas,'Liberation Mono',Menlo,Courier,monospace; word-wrap:break-word"><span class="pun" style="color:#93a1a1;"><</span><span class="pln" style="color:#48484c;">user</span><span class="pun" style="color:#93a1a1;">-</span><span class="pln" style="color:#48484c;">permission android</span><span class="pun" style="color:#93a1a1;">:</span><span class="pln" style="color:#48484c;">name</span><span class="pun" style="color:#93a1a1;">=</span><span class="str" style="color:#dd1144;">"android.permission.BLUETOOTH"</span><span class="pln" style="color:#48484c;"> </span><span class="pun" style="color:#93a1a1;">/></span></code></div></div>

10. android.view.InflateException: Binary XML file ...
 selector(XML资源定义)中千万不要将@null给drawable否则,XML inflate时,会报错。
解决方法:采用透明图代替这个@null
 
11. 对于像ListView、GridView的上下边距,如果怎么设置都达不到效果的时候,可以看看这个clipToPadding的这个属性,其值默认为false的,保证你看完有相见恨晚的感觉。

12. png格式不正确
AAPT err(1718128596):..xxx.png: libpng warning: iCCP: Not recognizing known sRGB profile that has been edited
出现这种错误,一般是用jpg图片当png图片使用。
### 回答1: 1. Gradle同步失败:这可能是由于Gradle版本不兼容或网络连接问题引起的。可以尝试更改Gradle版本或检查网络连接。 2. 编译错误:这可能是由于代码错误、缺少依赖项或版本不兼容引起的。可以尝试修复代码错误、添加缺少的依赖项或更改版本。 3. 设备连接问题:这可能是由于设备驱动程序问题、USB连接问题或设备未启用调试模式引起的。可以尝试更新设备驱动程序、更换USB线或启用调试模式。 4. Emulator启动问题:这可能是由于Emulator配置错误、缺少系统镜像或硬件要求不满足引起的。可以尝试更改Emulator配置、下载所需的系统镜像或升级计算机硬件。 5. 插件问题:这可能是由于插件版本不兼容或插件未正确安装引起的。可以尝试更新插件版本或重新安装插件。 6. 资源文件问题:这可能是由于资源文件缺失、命名错误或格式不正确引起的。可以尝试添加缺失的资源文件、更正命名错误或更改格式。 7. Android SDK问题:这可能是由于Android SDK未正确安装或版本不兼容引起的。可以尝试重新安装Android SDK或更改版本。 8. 版本控制问题:这可能是由于版本控制冲突或错误引起的。可以尝试解决版本控制冲突或撤销错误提交。 9. 内存问题:这可能是由于内存不足或内存泄漏引起的。可以尝试优化代码、释放不必要的内存或增加计算机内存。 10. 其他问题:这可能是由于其他未知问题引起的。可以尝试查找错误日志或寻求帮助。 ### 回答2: Android Studio是一款非常流行的开发Android应用程序的集成开发环境,但是在使用中,会出现一些常见错误。下面我们将介绍一些常见错误和解决方案。 1. Gradle build错误: 这个错误通常表示您的构建脚本存在问题。要解决此问题,请检查gradle脚本是否有任何语法错误或逻辑错误,并且您的依赖项是否正确。 2. 资源未找到错误: 这个错误通常发生在您未正确引用资源文件。要解决此问题,请检查资源引用的文件名是否正确,以及是否正确引用资源的文件夹。 3. 编译错误: 这个错误通常发生在您的代码存在语法错误或逻辑错误。请检查您的代码是否正确,并且是否使用正确的Java语法。 4. 设备连接错误: 这个错误通常表示您的Android设备无法与Android Studio建立连接。要解决此问题,请检查您的连接是否正确,并检查您的设备是否启用了USB调试模式。 5. Emulator启动失败: 这个错误通常表示您的模拟器配置存在问题。要解决此问题,请检查您的模拟器配置是否正确,并确保您的计算机满足模拟器的要求。 6. 编译版本错误: 这个错误通常表示您的项目使用了错误的编译版本。要解决此问题,请确保您的编译版本正确,并重新构建您的项目。 总之,在使用Android Studio开发应用程序时,常见错误是无法避免的。但是,遵循最佳实践并遵循正确的开发流程可以减少这些错误的发生。在出现错误时,要保持冷静,并找到正确的解决方案以解决问题。 ### 回答3: Android Studio是开发Android应用程序时最流行的集成开发环境,但是使用它时还是会出现一些常见错误。本文将介绍一些Android Studio常见错误及其解决方案。 1. Gradle错误 Gradle是Android Studio使用的构建工具,它负责将Java代码编译成可执行的Apk文件。Gradle错误可能是由于网络连接问题造成,也可能是代码中存在错误。 解决方案:如果Gradle下载失败,则可以尝试手动下载Gradle文件并将其复制到Gradle目录中。如果Gradle构建过程中发生错误,则可以尝试清除Gradle缓存,重新构建项目或者检查项目中的代码错误。 2. Emulator错误 Android Studio自带模拟器(Emulator),但它不太流畅,并且需要大量的系统资源。如果模拟器出现了错误,可能会影响应用程序的开发和测试。 解决方案:使用其他第三方模拟器,例如Genymotion。如果计算机配置过低,可以尝试使用真实设备进行测试。 3. SDK路径错误 Android Studio需要指定Android SDK的路径。如果SDK路径错误,则可能导致应用程序无法正常构建和运行。 解决方案:在Android Studio中打开SDK管理器,检查SDK路径是否正确。如果SDK路径错误,则可以手动更改路径并重新启动Android Studio。 4. 版本兼容问题 Android应用程序的版本兼容问题可能会导致一些错误,例如在运行时出现异常或应用程序在某些设备上无法运行。 解决方案:检查应用程序在不同版本的Android系统上的兼容性,使用最新的Android SDK版本和Android API,并在应用程序中使用适当的兼容性库。 5. Android Studio崩溃 Android Studio可能会崩溃并导致应用程序无法运行。这可能是因为缺少系统资源或由于Android Studio本身的错误。 解决方案:尝试关闭Android Studio并重新打开它。如果问题依然存在,则可以尝试重新安装Android Studio或更新到最新版本。 总之,在使用Android Studio时,经常会遇到各种各样的错误,但这不是问题,所有的错误都是可以解决的。要想有效的解决错误,需要仔细阅读错误信息,并仔细调试问题。只要专注和耐心,相信你可以轻松解决Android Studio的所有常见错误
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值