Android高级部分常见问题

四个月的培训马上就要结束了,感谢新博离校长和各位老师,同学们的帮助,希望新博越办越好,同学们能够找到属于自己的平台,务实奋进,开拓一块属于自己的领域!

下面简单整理下高级部分做项目期间遇到的常见问题以及解决方法:

总结经验

1. 哪些比较好的经验

1) 封装

2) 分析、设计、实现

3) 文件结构:物理架构

4) 时机

5) 命名

6) 常量类

7) 复用

8) 单独例子

9) 错误日志   关键词

10) 积累工具类

11) 延迟加载、多线程机制

12) 控制台信息

  1. 项目出现叹号

    原因:项目配置问题

    解决:项目右键→perferences→java build path→libraries→删除不需要的东西

06-02 07:47:59.154: E/AndroidRuntime(4103): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.ex_templete/com.example.ex_templete.MainActivity}: android.view.InflateException: Binary XML file line #28: Error inflating class fragment

日志提示的原因:

06-02 07:47:59.154: E/AndroidRuntime(4103): Caused by: java.lang.ClassCastException: com.example.ex_templete.MyFragment cannot be cast to android.app.Fragment

原因:继承的Activity内部只能添加android.app.Fragment的片段,不支持supportV4的Fragment

解决:修改继承FragmentActivity

3. 关联supportV4源代码

源代码路径:

D:\Android_Prog\android-sdk_r24.2\extras\android\support\v4\src

关联方法:

在libs目录中新建一个文件,名称为:android-support-v4.jar.properties

打开文件,编辑内容为:

src=源代码路径

关闭项目,再打开.

4.工具环境
1) 路径中不要含有中文和空格

2) 两个版本不能同时使用

5.乱码问题

char

编码:25991 = 文

常见的编码格式:

UTF-8

GBK    简体中文

GB2312

GB18030

Big5    繁体

ISO 8859-1

常见问题场景:客户端与服务端的编码方式不同

如何解决:最好统一为utf-8

6.导入supportv7库

1)问题:编译版本默认不是5.x,

解决:修改编译版本为5.1.1,再clean

2)supportV7源代码

D:\...\android-sdk_r24.2\extras\android\m2repository\com\android\support\appcompat-v7\22.1.1

7.项目引用库时,提示编译报错

原因:项目和库中含有相同jar包的不同版本,

解决:将两个jar包改为一致

或者删除项目中的jar包

8.ListView没有显示

前提:

1) server正常?

2) 检查json字符串是否成功下载?

9.ViewPager嵌套ViewPager的问题

现象:Banner自动切换速度变快

原因:Fragment的onCreateView()方法被多次重复调用

解决:

10.ViewPager嵌套ViewPager,Fragment管理器需要使用ChildFragmentMananger

问题现象:内部的ViewPager图片有时不显示

11.

Unable to execute dex: Multiple dex files define Lcom/nostra13/universalimageloader/cache/disc/DiscCacheAware;

[2015-06-09 17:31:10 - 欢迎界面_01] Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Lcom/nostra13/universalimageloader/cache/disc/DiscCacheAware;

原因:项目多次依赖了同一个库

解决:删除重复的依赖

12.使用ActiveAndroid时提示NullPointerException

原因:清单中没有注册Application,没有初始化ActiveAndroid

13.Banner中三个ImageView无法显示图片

原因:多线程的时机问题

在下载banner数据之前,banner的Item无法显示图片

下载数据成功后,才可以显示图片

解决:下载数据后再初始化Banner

时间: 2024-09-30 06:47:07

Android高级部分常见问题的相关文章

Android 高级面试题及答案

Android 高级面试题及答案 阅读目录 1.如何对 Android 应用进行性能分析 2.什么情况下会导致内存泄露 3.如何避免 OOM 异常 4.Android 中如何捕获未捕获的异常 5.ANR 是什么?怎样避免和解决 ANR(重要) 6.Android 线程间通信有哪几种方式 7.Devik 进程,linux 进程,线程的区别 8.描述一下 android 的系统架构 9.android 应用对内存是如何限制的?我们应该如何合理使用内存? 10. 简述 android 应用程序结构是哪

Android如何实现毛玻璃效果之Android高级模糊技术

自从iOS系统引入了Blur效果,也就是所谓的毛玻璃.模糊化效果,磨砂效果,各大系统就开始竞相模仿,这是怎样的一个效果呢,我们先来看一下,如下面的图片: 效果我们知道了,如何在Android中实现呢,说白了就是对图片进行模糊化处理,小编先给大家讲一下Android高级模糊技术的原理,如下: ·首先我创建了一个空的bitmap,把背景的一部分复制进去,之后我会对这个bitmap进行模糊处理并设置为TextView的背景. ·通过这个bitmap保存Canvas的状态: ·在父布局文件中把Canva

Android WebView开发常见问题

1.添加权限:AndroidManifest.xml中必须使用许可"android.permission.INTERNET",否则会出Web page not available错误. 2.在要Activity中生成一个WebView组件:WebView webView = new WebView(this); 3.设置WebView基本信息: 如果访问的页面中有Javascript,则webview必须设置支持Javascript. webview.getSettings().set

android 高级Canvas绘图

Canvas是图形编程中很实用的一个概念.通常有3个基本部分组成: 1.Canvas 提供了绘图方法,可以向底层的位图绘制基本图形.(我觉得这个解释很好,比解释成画布要好的多) 2.Paint 称为画笔或者刷子,Paint可以指定如何将基本图形绘制到位图上. 3.Bitmap 绘图的表面. Android绘图API支持透明度,渐变填充,圆角矩形和抗锯齿. 1.可以绘制的内容 Canvase类封装了用作绘图表面的位图,它还提供了draw*方法来实现设计. 2.最大限度的利用Paint Pain相当

Android界面编程——Android高级UI组件(三)

Android界面编程 Android高级UI组件 2.4.1适配器组件 适配器的作用 适配器充当适配器控件和该视图数据之间的桥梁.适配器提供访问的数据项,并负责产生数据组中的每个项的视图. 常用的适配器 BaseAdapter:抽象类,具有较高的灵活性. ArrayAdapter:最为简单,智能展示一行文字. SimpleAdapter:有较好的扩充性,可以自定义出各种效果. SimpleCursorAdapter:主要用于操作数据库. 常用的适配器控制 适配器控件扩展自ViewAdapter

android 高级 day01

一. 目标:独立完成Android客户端的开发 做项目,一般规模一般难度的   80% 1. 一般项目规模 15个页面左右 代码量:2~3万 2. 一般难度 稍微复杂的UI 常用的功能 有难度的功能:实时语音或视频通讯 高级职位,项目经理或架构师需要掌握的技能: 1. 精通主流手机平台下的高性能编程及性能调优 2. 熟悉设计模式 3. 有很强的解决,分析,调试技术问题的能力 二. Android项目开发流程和角色 流程:CMM 瀑布模型 大中型公司的人员配备 项目经理 1. 收集需求 售前 2.

如何学习android高级编程

学了android高级编程有前途吗?进入2010年之后,android的应用开发进入了一个爆炸式增长的状态,从去年的不到1万款应用程序增加到现在的9万,而且即将突破10万,这也从开发者这一方面展现了用户不断增多的现象.不过需要注意的是,虽然数值的增长速度很快,开发公司还得做好相关的审查工作,尽快提高 android电子市场整体的应用质量,改善应用的盈利环境. 学了android高级编程有前途吗?随着高配置android手机的上市,全3D手机游戏也将会在更多的手机上运行,而android 2.2版

Android高级编程笔记(四)深入探讨Activity(转)

在应用程序中至少包含一个用来处理应用程序的主UI功能的主界面屏幕.这个主界面一般由多个Fragment组成,并由一组次要Activity支持.要在屏幕之间切换,就必须要启动一个新的Activity.一般的Activity都占据了整个显示屏,但可以创建成半透明或二者浮动的Activity. 一.创建Activity 通过继承Activity类可以创建一个Activity窗口,基本框架如下: 1 public class MyActivity extends Activity { 2 @Overri

Android 高级 Jackson Marshalling(serialize)/Unmarshalling(deserialize)

本文内容 高级 Jackson Marshalling Serialize Only Fields that meet a Custom Criteria with Jackson Serialize Enums as JSON Objects JsonMappingException (No serializer found for class) Jackson – Custom Serializer 高级 Jackson Unmarshalling Unmarshall to Collect