Android studio
情况一:
描述:写Android app时,出现activity对应的layout预览图所显示的activity是有标题栏的,但是运行该app,无论是模拟器还是真机,却出现没有了标题栏的情况,而自己没有特地隐藏标题栏。
解决:此时出现标题栏消失可能是因为activity继承是Activity而不是AppCompatActivity,而我们在创建app之初,AS默认是继承AppCompatActivity,AndroidManifest.xml文件里对应的theme则是
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
情况二:
描述:多个Fargment使用同一layout ID,在进行来回切换操作时出现“Java.lang.IllegalStateException: commit already called”的错误。
解决:由于本人将FragmentTransaction变量定义为全局变量,导致只能commit一次,所以只要将FragmentTransaction变量定义为局部变量即可。
情况三:
描述:使用FragmentTransaction的replace方法时出现错误:
'replace(int, android.app.Fragment, java.lang.String)' in 'android.app.FragmentTransaction' cannot be applied to '(int, com.jarwell.learnactionbar.ContentFragment, java.lang.String)'
解决:此种情况发生在ContentFragment所继承的Fragment是android.support.v4.app.Fragment,而FragmentTransaction对象所导入的包是android.app.FragmentTransaction,由此出现不兼容的情况。据此只要统一导入包的类型即可,譬如可以分别:import android.app.Fragment和import android.app.FragmentTransaction
情况四:
描述:如何添加assets文件夹?
解决:
首先,在“工程名.iml”文件里的configuration标签下添加以下代码:
<option name="ASSETS_FOLDER_RELATIVE_PATH" value="/src/main/assets"/>
然后,在main文件夹里新建一个子文件夹并命名为assets,到此完成,之后就可以往里面添加文件了。
情况五:
描述:在JSON解析时出现了以下错误日志:
08-31 15:36:59.369 13195-13195/? E/dalvikvm: Could not find class 'android.util.ArrayMap', referenced from method com.android.tools.fd.runtime.MonkeyPatcher.monkeyPatchExistingResources
08-31 15:36:59.370 13195-13195/? E/dalvikvm: Could not find class 'android.util.ArrayMap', referenced from method com.android.tools.fd.runtime.MonkeyPatcher.pruneResourceCache
08-31 15:36:59.381 13195-13195/? E/dalvikvm: Could not find class 'android.os.PersistableBundle', referenced from method com.jarwell.learnjson.MainActivity.access$super
08-31 15:36:59.382 13195-13195/? E/dalvikvm: Could not find class 'android.os.PersistableBundle', referenced from method com.jarwell.learnjson.MainActivity.access$super
08-31 15:36:59.382 13195-13195/? E/dalvikvm: Could not find class 'android.media.session.MediaController', referenced from method com.jarwell.learnjson.MainActivity.access$super
08-31 15:36:59.383 13195-13195/? E/dalvikvm: Could not find class 'android.widget.Toolbar', referenced from method com.jarwell.learnjson.MainActivity.access$super
08-31 15:36:59.386 13195-13195/? E/dalvikvm: Could not find class 'android.app.ActivityManager$TaskDescription', referenced from method com.jarwell.learnjson.MainActivity.access$super
08-31 15:36:59.391 13195-13195/? E/dalvikvm: Could not find class 'android.app.SharedElementCallback', referenced from method com.jarwell.learnjson.MainActivity.access$super
08-31 15:36:59.393 13195-13195/? E/dalvikvm: Could not find class 'android.os.PersistableBundle', referenced from method com.jarwell.learnjson.MainActivity.access$super
08-31 15:36:59.395 13195-13195/? E/dalvikvm: Could not find class 'android.transition.TransitionManager', referenced from method com.jarwell.learnjson.MainActivity.access$super
08-31 15:36:59.402 13195-13195/? E/dalvikvm: Could not find class 'android.app.SharedElementCallback', referenced from method com.jarwell.learnjson.MainActivity.access$super
08-31 15:36:59.410 13195-13195/? E/dalvikvm: Could not find class 'android.app.assist.AssistContent', referenced from method com.jarwell.learnjson.MainActivity.access$super
08-31 15:36:59.412 13195-13195/? E/dalvikvm: Could not find class 'android.view.SearchEvent', referenced from method com.jarwell.learnjson.MainActivity.access$super
08-31 15:36:59.416 13195-13195/? E/dalvikvm: Could not find class 'android.os.PersistableBundle', referenced from method com.jarwell.learnjson.MainActivity.access$super
08-31 15:36:59.477 13195-13195/? E/dalvikvm: Could not find class 'android.graphics.drawable.RippleDrawable', referenced from method android.support.v7.widget.AppCompatImageHelper.hasOverlappingRendering
08-31 15:37:32.664 518-795/? E/FWKEXT: Enter GetCurrentOP
解决:出现以上情况,是因为代码所调用的一些方法只能在较高的API level(高于minSdkVersion)上使用,而调试用的机子或模拟器所用的SDK Version小于该API level。如日志第一行提示中的ArrayMap,通过查看Android官方API可得到如下信息:
Added in API level 19
而本人的project的build.gradle如下:
apply plugin: 'com.android.application'
android {
compileSdkVersion 24
buildToolsVersion "24.0.0"
defaultConfig {
applicationId "com.jarwell.learnjson"
minSdkVersion 17
targetSdkVersion 24
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:24.2.0'
}
其中所使用的minSdkVersion为17,targetSdkVersion 为24,而run app的机子对应的API level恰好是17(17<19<24),因此出现了以上的错误日志信息,尝试用level为19以上的机子或模拟器则运行正常。
Android studio的更多相关文章
- Android Studio配置 AndroidAnnotations——Hi_博客 Android App 开发笔记
以前用Eclicps 用习惯了现在 想学学 用Android Studio 两天的钻研终于 在我电脑上装了一个Android Studio 并完成了AndroidAnnotations 的配置. An ...
- Android Studio 多个编译环境配置 多渠道打包 APK输出配置
看完这篇你学到什么: 熟悉gradle的构建配置 熟悉代码构建环境的目录结构,你知道的不仅仅是只有src/main 开发.生成环境等等环境可以任意切换打包 多渠道打包 APK输出文件配置 需求 一般我 ...
- Android Studio —— 重装 HAXM
Android Studio -- 重装 HAXM 版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 文中如有纰漏,欢迎大家留言指出. Android SDK 自带模拟器一直以慢.卡 ...
- android studio 使用 jni 编译 opencv 完整实例 之 图像边缘检测!从此在andrid中自由使用 图像匹配、识别、检测
目录: 1,过程感慨: 2,运行环境: 3,准备工作: 4,编译 .so 5,遇到的关键问题及其解决方法 6,实现效果截图. (原创:转载声明出处:http://www.cnblogs.com/lin ...
- 使用 Android Studio 检测内存泄漏与解决内存泄漏问题
本文在腾讯技术推文上 修改 发布. http://wetest.qq.com/lab/view/63.html?from=ads_test2_qqtips&sessionUserType=BF ...
- 【详细教程】论android studio中如何申请百度地图新版Key中SHA1值
一.写在前面 现在越来越多的API接口要求都要求提供我们的项目SHA1值,开发版目前还要求不高,但是发布版是必定要求的.而目前定位在各大APP中也较为常见,当下主流的百度地图和高德地图都在申请的时候会 ...
- 【走过巨坑】android studio对于jni调用及运行闪退无法加载库的问题解决方案
相信很多小伙伴都在android开发中遇到调用jni的各种巨坑,因为我们不得不在很多地方用到第三方库so文件,然而第三方官方通常都只会给出ADT环境下的集成方式,而谷歌亲儿子android studi ...
- android studio你可能忽视的细节——启动白屏?drawable和mipmap出现的意义?这里都有!!!
android studio用了很久了,也不知道各位小伙伴有没有还在用eclipse的,如果还有,楼主真心推荐转到android studio来吧,毕竟亲儿子,你会知道除了启动速度稍微慢些,你找不到一 ...
- 解决Android Studio 无法显示Layout视图问题
在Android Studio 当中,如果你选择的SDK的版本 与你所显示的视图版本不一致时,会出现这个错误 Exception raised during rendering:com/android ...
- Android Studio快捷键
一.android studio 默认快捷键 刚开始接触一款开发软件,想必很想了解它的快捷方式,这会对你的编程起到很好的帮助,提高工作效率,接下来给你介绍下Android Studio一些常用的快 ...
随机推荐
- nginx+lua
一场电闪与雷鸣的结合, 公司原有服务器已经配置好nginx,需要重新装载lua模块,哈哈哈,无法无法. 安装LUA模块需要以下 pcre ftp://ftp.csx.cam.ac.uk ...
- jquery 通过submit()方法 提交表单示例
jquery 通过submit()方法 提交表单示例: 本示例:以用户注册作为例子.使用jquery中的submit()方法实现表单提交. 注:本示例仅提供了对表单的验证,本例只用选用了三个字段作为测 ...
- datatables中的Options总结(3)
datatables中的Options总结(3) 十.ColReorder colReorder.fixedColumnsLeft 不允许x列重新排序(从左数) colReorder.fixedCol ...
- angular $http请求
angular使用post.get向后台传参的问题 一.问题的来源 我们都知道向后台传参可以使用get.put,其形式就类似于name=jyy&id=001.但是在ng中我却发现使用$http ...
- ArcGIS中的标注和注记
在ArcMap中可以使用标注和注记来识别要素,选择标注或注记取决于你需要如何控制文本显示以及在ArcMap中如何存储文本. 1.标注只是临时显示相关数据或字段 2.标注用于长时间保存数据以及显示方式. ...
- 便于开发的Helper类
一.将config封装实体层: 例子config: <?xml version="1.0" encoding="utf-8" ?> <Sett ...
- iOS陀螺仪 参数意义
self.mManager = [[CMMotionManager alloc]init]; self.mManager.deviceMotionUpdateInterval = 0.5; if (s ...
- Mac利用PD虚拟机安装Centos7
一.PD虚拟机的安装1.Parallels Desktop ,简称PD,号称是Mac上最好用的虚拟机,具体的就在此不进行过多描述.下附Mac .app文件夹下载,下载后放入/Applications/ ...
- Eclipse for Java EE软件操作集锦(二)
看本文章之前请确保已经了解eclipse建立web工程,如果有疑问请查看本系列文章第一篇 eclipse软件操作集锦(一) 1.我们添加一个servlet 配置一下web.xml测试一下是否能正常显示 ...
- 如何写出让java虚拟机发生内存溢出异常OutOfMemoryError的代码
程序小白在写代码的过程中,经常会不经意间写出发生内存溢出异常的代码.很多时候这类异常如何产生的都傻傻弄不清楚,如果能故意写出让jvm发生内存溢出的代码,有时候看来也并非一件容易的事.最近通过学习< ...