`
dowhathowtodo
  • 浏览: 778635 次
文章分类
社区版块
存档分类
最新评论

Android的几个常见小错误

 
阅读更多

Android是使用Java作为编译语言的,大部分人使用的IDE是Eclipse,Eclipse是一款很好的开源IDE,在大量“插件”的配合下,可以满足从企业级Java到手机终端Java游戏的开发。在开发Android应用软件的时候需要在Eclipse中安装Google推出的插件ADT。

在Eclipse下建立Android项目,项目中会包括一下几个主要部分:

1.src文件夹,这个文件夹中包含了项目的所有包和源文件(.java文件);

2.res文件夹,这个文件夹中则是包含了项目中的所有资源,比如程序图标(drawable)、布局文件(1ayout)、常量(values)等;

3.gen文件夹。其中包含了R.java文件,这个文件是在建立项目的时候自动生成的,文件是只读模式,不能进行更改,该文件是定义该项目所有资源的索引文件的。

4.Android X.x,这个是显示你这个项目使用的Android AP的版本。

5.AndroidManfest.xml文件.这个文件中包含了该项目中所使用的Activity、Service、Receiver。

下面我们来讨论下新手会犯的几个错误。

1、cannot be solved

刚开始接触Android的人,可能会想到从网上下载几个可以执行的代码来进行运行,但是直接从网上拷贝过来的代码在Eclipse中会显示错误,很多人就会不知道是为什么。在这种情况下,错误一般不是代码的问题,而是从网上拷贝下来的这些代码,这时候把鼠标移到错误的地点去,会提示“cannot be solved”。这个问题就是因为在Android的编写中,我们常常会把一些变量的定义放在布局文件中,而不是直接在源文件中直接定义出来。这时候打开布局文件目录下的main.xml文件,在这其中定义需要定义的变量,这样子问题就会得到解决了。

2、sorry, the application has stop excepted

Android运行的过程中,有一个问题可能会经常出现。在你运行的程序的时候,在进入运行界面后,会弹出一个对话框,上面写着“Sorry,the application has stop excepted”。之后点击按钮之后程序就退出了。这个时候很多人不知道怎么回事,而且无论是在源文件中还

是在布局文件中都不会有错误提示。表面上看来这个程序是没有错误存在的,但是这个程序无论怎么运行都会提示有错误,工程停止了。这个时候,我们需要从我们的变量上去找原因了,因为我们再设置变量的时候经常会遇到设置一个textView,button等,像是这样的变量我们在给它定义的时候需要对它的大小进行设置,要设置它的长度和高度。

有的时候有些问题是需要我们自己去解决的,所以我们需要自己学会去调试自己的程序,很多人可能开始的时候都不知道该如何去发现自己的问题。在Eclipse+ADT的开发环境中也没有直接跟踪内容的方法,在这个时候,我们可以使用Google提供的ADT插件DDMS在Eclipse上轻松的调试Android程序。

首先将Eclipse开发工具的工作界面切换到DDMS标签(DDMS会在Eclipse的右上角)。在DDMS中选择“Device”标签,查看其菜单功能,可以看到Debug Process(调试进程)、Update Threads(更行线程)、Update Heap(更新堆)、Cause GC(引起垃圾回收)、StopProcess(停止进程)、Screen Capture(屏幕截图)、Reset adb(重启Android Debug Bridge)菜单选项。在这里可以观察到Android程序运行时的各种状态,比如进程信息、线程分析、堆内存的占用,结束一个进程。这些操作都是在DDMS框架下进行的。

在DDMS中带有“Logcat”工具,它是通过“android.util.Log”类的静态方法来查找错误和打印系统日志消息。它是一个进行日志输出的API,在Android程序中可以随时为某一个对象插入一个Log,然后在DDMS中观察Logcat的输出是否正常。

在编写Android程序时候我们需要在平时写程序的时候注意一些细节,这样子就会避免很多不必要的错误发生。

下面说明几个需要注意的地方。

1.在编程的时候需要多进行保存,以免数据意外丢失了,并且需要多刷新工程,因为R.java中很可能没有及时生成你新加入的一些元素,从而造成程序的错误。

2.我们再编程的时候需要使用英文输入法,很多人会习惯性的使用中文输入法。然后再中英文之间不停的切换。因为有些中英文符号的差别是很小的,不容易察觉。

3.在编程的时候最好不要把多条语句放在一行上,如果放在一行上,代码将小可以单步执行,而且也不能为同一行上的多条语句设置行断点。

4.在我们出现的问题的时候,不要立刻想着上网求助,而是想想问题可能会出现在哪里,应该如何去解决这些问题,多思考思考,而不是有问题就依赖网上一些高手的帮助。

在Android的编程和调试中,还会有很多的问题发生,也会有更多的使用技巧。需要我们在平时的时候不断的去发现。不断的去找寻问题发生的原因,来更好的学习Android,进行Android的编程。

分享到:
评论

相关推荐

    mtk android 编译常见错误

    编译mtk android源码,几个常见的编译错误,环境配置相关

    android TV版本应用开发学习

    资源为个人android TV版本开发学习用,几个TV开发常见的问题,Android TV TextView如何实现增加滚动条,TV上屏幕适配总结,Android Studio中模拟器中关于VT-x is disabled in BIOS错误的解决方案,Home界面实现原理...

    android xml解析1

    更为方便的是android SDK中提供了DefaultHandler和DefaultHandler2 来协助我们完成构建XML handler,事实上DefaultHandler本身实现了 ContentHander、DTDHander、ErrorHandler,以及EntityResolver这4个接口,相当于把...

    Android高级编程--源代码

    作为使用androidsdk构建这些应用程序的实用指南书籍,《android高级编程》从始至终穿插了一系列示例项目,每个项目都引入android的新功能和新技术,以助您达到最圆满的学习效果。书中介绍android的所有基本功能,并...

    Android快速开发框架AndBase

    AndBase是为Android开发者量身打造的一款开源类库产品,本例中包含最新的源码,示例以及开发文档。 andbase能做什么? 1.andbase中包含了大量的开发常用手段。 如网络下载,多线程与线程池的管理,数据库ORM,图片...

    AndroidStudio是最难用的IDE,没有之一

    这几天试图用AndroidStudio编译imsdroid工程...比如说,如果某个依赖库找不到,这个是比较常见的,要么下载要么路径不对,设置一下就可以了。而AndroidStudio则是你想象不到的地方出错。 提示没有用。莫名其妙,不知所

    基于Android平台的车牌识别系统的研究

    在对Android平台的基础知识以的探究之下,根据前几章所提出的一系列车牌识别的系统步骤,本章将其移植到移动终端上来,实现了一个基于Android平台的车牌识别系统,通过对软件进行了功能测试和分析证明了该系统的有效...

    网狐荣耀版开发使用常见问题解答

    这个问题有原因有几个,一可能是服务器端的IP连接设置有问题;二是游戏更新有问题。 Q-Q457189 三十三、网狐荣耀版或其它安卓项目出现Application cannot be exported due to the erro 网狐荣耀版或其它安卓项目...

    二款android应用开发框架

    继承它你能够获得一个简单强大可设置的操作栏,以及一系列的简单调用,如弹出框,提示框,进度框,副操作栏等。 4.提供效率较高图片缓存管理策略,使内存大幅度节省,利用率提高,效率提高。 程序中要管理大量的图片...

    java恶意代码检测源码-QualityDemo:质量演示

    在这里我就介绍一下我比较常用的几个检测工具吧 # #2.FindBugs 顾名思义,FindBugs是一个寻找bug的工具,更具体的说FindBugs是一个静态检测java代码的工具,可以找到代码中的一些潜在bug,比如说NullPointerException,...

    adb1.0.26包含fastboot.exe

    遇到多设备/模拟器的情况均使用这几个参数为命令指定目标设备,下文中为简化描述,不再重复。 启动/停止 启动 adb server 命令: adb start-server (一般无需手动执行此命令,在运行 adb 命令时若发现 adb server...

    计算机应用技术基础任务1任务2答案.doc

    常用的台式计算机主要由( )、显示器、键盘、鼠标和音箱等几个关键部件组成。 A. 主机 4. BIOS的中文含义是B. 基本输入输出系统 5. 下列哪些不是常见的BIOS品牌之一? D. Asus 6. 如果希望电脑每次启动都要输入...

    依赖项注入检查:依赖项注入用法检查

    当前,该库只有一次检查,可在使用依赖项注入时验证常见的编程错误:在给定的类型层次结构中复制相同依赖项的相同注入(即,超类和子类执行相同的注入,这是无用的) 。 此检查称为DuplicateInjectionInHierarchy。...

    仓库管理系统.zip

    移动端APP开源项目,支持Android、iOS,基于.NET(C#、VB)。SmoWMS仓库管理系统包含了仓库管理、订单、主数据维护、图表分析、个人信息等几大功能 管理系统是一种通过计算机技术实现的用于组织、监控和控制各种...

    阿香婆视频转换器 Ashampoo Video Converter 1.0.2.1.zip

    完美兼容 iPad、iPhone、Apple TV、常见 Android 设备、PlayStation、Xbox、Windows Phone 最高支持 4K 分辨率 画质更出色 操作更简单 为 Facebook、Youtube、MyVideo、Dailymotion 和 Vimeo 自动生成完美格式 从...

    usb_bootloader.zip

    从技术来说,这几种升级方式大同小异,原理类似:都是一个Loader代理接收数据通道的数据,然后解密,烧录到FLASH中;但用户体验完全不同,拿串口升级来说,首先用户需要一个串口软件,然后对于没有硬件串口的PC来说...

    JAVA上百实例源码以及开源项目

     Java数据压缩与传输实例,可以学习一下实例化套按字、得到文件输入流、压缩输入流、文件输出流、实例化缓冲区、写入数据到文件、关闭输入流、关闭套接字关闭输出流、输出错误信息等Java编程小技巧。 Java数组倒置...

    JAVA上百实例源码以及开源项目源代码

    1个目标文件 摘要:Java源码,文件操作,数据压缩,文件传输 Java数据压缩与传输实例,可以学习一下实例化套按字、得到文件输入流、压缩输入流、文件输出流、实例化缓冲区、写入数据到文件、关闭输入流、关闭套接字关闭...

Global site tag (gtag.js) - Google Analytics