当前位置: 首页 > 面试题库 >

编写Android项目时的常见错误

何兴邦
2023-03-14
问题内容

在Android项目上工作时应注意哪些常见错误?

这些可以是

  • Android特定错误
  • Java特定错误

问题答案:

我将列出一些错误,我总是会遇到。

文章-十大Java错误

  • NullPointer错误

    1. 当我使用未初始化的变量或对象时,我们正在创建。(Java)
    2. 当我们使用不在xml中的布局布局视图时,我们在上下文中设置的视图。(Android)
  • ClassCast异常

    • 当程序尝试将对象转换为不兼容的类型时。(例如:当我尝试使用在xml布局中声明为相对布局的线性布局时)。
  • StackOverflowError

    • 它也可能发生在正确编写(但深度递归)的程序中。(java和android)
    • 当程序变得无限递归时。
    • 我们创建的布局(深度和复杂)超过了平台或虚拟机的堆栈。递归或布局太多会在Android中创建堆栈溢出错误
    • 内部布局太多。
  • ActivityNotFoundException :无法找到明确的活动类异常

    • 该活动未在清单中声明。
  • Android securityException

    • 您需要在应用程序中声明所有许可。清单中,您的应用程序检查了此链接 (互联网,访问联系人,gps,wifi状态,写入SDCard等)。
  • OutofMemoryError

    • 当使用可用的平台资源无法满足对内存的请求时。主要使用位图,图库等
  • 应用程序无响应(ANR)

    • 主要是在您使网络功能正常或过程较长时出现。

这将阻止UI线程,因此用户无法执行任何工作。为了避免 ANR
阅读与此

这是我在创建Android Project时主要获得的东西。

  • 尝试 在程序的所有位置中使用 Try-Catch 块。 不要 将catch块留空,因为这会隐藏错误:

是:

 try{
    // try something
  } catch (Exception e) {
      Log.e("TAG", "Exception in try catch", e);
      return false;
  }
  return true;

没有:

  try{
    // try something
  } catch (Exception e) {
    return false;
  }
  return true;

对布局中的所有变量和ID 使用正确的 命名转换 。*

我从网上读了一篇文章,其中包含一些错误,现在我要补充说,如果它有冗余,请原谅。

问题
:我以前不错的RelativeLayout正在制作一个丑陋的堆,或者某些元素不再可见…这是怎么回事?我只是在其中移动了一个元素…解决方案:永远不要忘记,在RelativeLayout中,元素是相对于其邻居进行引用和放置的。元素之间的关系层次结构中可能存在问题。尝试在Eclipse中打开大纲视图,然后单击每个元素以查看破裂的位置。

问题
:RelativeLayout中不存在循环依赖项解决方案:您可能已经以两种不同的方式编写了相同的依赖项。例如,一个ImageView作为TextView的android:layout_toRightOf属性,而TextView具有android:layout_toLeftOf该ImageView。只需要其中之一

问题
:我为我的一个视图/布局编写了一种样式,但是当我在xml中应用它时,我在Eclipse的布局查看器中没有显示解决方案:不幸的是,这似乎是android
ADT的错误它,但到目前为止没有消息。无论如何,没有恐慌的样式可以很好地工作,但是在Eclipse中无法正确显示它们。只需构建该应用程序,然后在模拟器或电话上启动它,您就会看到一切正常。

问题 :Toast编写正确,但未显示任何解决方案:这是一个常见的使用错误:只需添加.show()方法以显示Toast并查看其是否工作正常

问题
:我试图显示来自strings.xml的字符串,但是我只有一个数字,如0x7f060001解决方案:这不是错误,由于Android处理资源的方式只是显示。当您要检索资源时,必须使用诸如getString(R.id.something),getDrawable之类的方法,否则,您只需要显示用R类编写的引用即可。

问题
:代码中的某些更改对应用程序没有任何影响解决方案:有2个选项,要么您忘记了Toast的.show()之类的东西,要么模拟器未正确更新您的应用程序。在这种情况下,您必须在Eclipse中的模拟器的启动配置中选中“擦除用户数据”选项。

问题
:如何在我的桌子上显示边框?解决方案:在android中没有直接的方法,您必须使用一个技巧:http : //www.droidnova.com/display-borders-in-
tablelayout,112.html

问题 :模拟器正在用日语编写,而无需更改任何参数解决方案:有时会发生这种情况,很容易解决,只需长按任意EditText字段,然后将输入类型更改为所需

问题 :我无法在仿真器中显示上下文菜单解决方案:长时间单击仿真器似乎并不能在每种视图上注册,您必须按4个方向箭头中心的按钮

问题 :我正在关注有关地图路线的教程,但无法正常工作,android找不到包解决方案:您可能一直在关注为1.5
SDK编写的教程。目前,有一个程序包可在android中显示路由,但已在下一个SDK中将其删除,并且不再可用。只是不可能了。KML文件似乎有一个窍门,但没有官方规定

问题 :将坐标发送到仿真器会给出错误的位置解决方案:确保您编写的坐标类似于51.16548,而不是51,16548或5116548

问题
:只有创建视图层次结构的原始线程才能触摸其视图。解决方案:您必须尝试从UI线程以外的其他线程更新视图内容。修补此问题的2个选项:在您的UI线程中创建一个处理程序,然后将您的Runnable发布到此处理程序,或使用方法runOnUIThread来运行进行更新的代码行

问题 :访问localhost 127.0.0.1不起作用解决方案:它起作用,您只是没有以正确的方式使用:使用10.0.2.2



 类似资料:
  • 下面列出了一些在使用TypeScript语言和编译器过程中常见的容易让人感到困惑的错误信息。 "tsc.exe" exited with error code 1 修复: 检查文件编码,确保为UTF-8 - https://typescript.codeplex.com/workitem/1587 external module XYZ cannot be resolved 修复: 检查模块路径是

  • 我们试图从Jenkins构建一个maven工件并将其部署到我们的Nexus存储库管理器中,但是我们在构建过程中遇到了编译错误。这就是我们得到的错误! 错误]无法执行目标org.apache.maven.plugins:maven-compiler-plugin:3.5.1:在项目上编译(default-compile)studentapp:编译失败错误]此环境中没有提供编译器。您可能是在JRE上运

  • 本文向大家介绍五分钟教你Android-Kotlin项目编写,包括了五分钟教你Android-Kotlin项目编写的使用技巧和注意事项,需要的朋友参考一下 背景 之前就看到过Kotlin这一门语言,也有不少大神和愿意走在知识最前沿的哥哥姐姐们说这一门语言有多么多么的好,但是本人并没有去了解他,直到前段时间Google大会直接说会支持Kotlin语言,所以我就抽出了一点时间准备学习一下,个人觉得到目

  • 下载新的L SDK和20 SDK后,当尝试刷新、构建或清理我的项目时,我会得到一个 我觉得我几乎什么都试过了,但我不知道还能试什么。如有任何帮助,我们将不胜感激。 我刚刚从0.6.0 Canary升级到了新的Android Studio测试版(0.8.0

  • 我试图将我的android项目连接到php上的数据库,我的代码中没有错误,但当我试图在手机上运行我的应用程序时,它不起作用 这就是Json_解析 我知道,这是我在日志中的错误 e/ViewRootImpl: sendUserAction事件()mView==null

  • 本文向大家介绍Android开发常见错误小结,包括了Android开发常见错误小结的使用技巧和注意事项,需要的朋友参考一下 本文实例总结了Android开发的常见错误。分享给大家供大家参考。具体如下: 错误1: 在intent中添加了一个内容,在调用getStringExtra读取的时候,总是报错。代码如下: 其中调用了intent的putExtra方法。 读取代码如下: 调用了getString