Tag: android lint

AppCompatActivity.onCreate只能从同一个库组中调用

升级到appcompat 25.1.0我开始出现连线错误。 在我的代码中: @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); 我得到皮棉错误: AppCompatActivity.onCreate can only be called from within the same library group (groupId=com.android.support) 如何防止这种行为?

我们如何configurationAndroid Studio在每个构build上运行Lint?

曾几何时,特别是在Eclipse-land中,Lint会在每一个版本上运行,所以如果你失败了Lint检查,你会立即发现。 使用Android Studio(在1.3上testing),Lint不会在构build中默认运行。 新来者可能会犯Lint会检查的错误,但由于Lint并没有真正运行,所以新来的人不会了解它们。 (IOW,如果Linttesting没有在森林中运行,那么是否有Linttesting?) 这个博客文章的评论显示如何有点让林特作为一个生成的一部分运行: 编辑项目configuration 在configuration的“常规”选项卡中,向下滚动并折叠“启动之前”面板 在该面板中,为模块添加一个名为lint “Run Gradle Task” 但是,这会运行命令行Lint,导致使用XML和HTML将报告写入硬盘。 这是有效的,但是让Android Studio运行它的IDE-Lint检查会更清晰,所以结果显示在一个IDE面板中。 有没有办法设置一个项目构build执行in-IDE的Lint检查? 奖励分数,如果它可以设置为只运行Lint,而不是分析>检查代码完成的全部分析。 虽然全面的分析偶尔是有用的,但是Lint已经够慢了,更不用说Android Studio执行的可疑有用的其他分析(例如拼写检查)。 虽然设置这个对于所有项目来说都不是一个好的计划(Lint扫描很慢),但对于Android的新手来说,这可能是一个合适的举措。

为什么0dp被认为是性能提升?

填补了这个问题的答案 ,结合了言论和解决scheme。 题 我周围search,但没有发现任何真正解释为什么Android Lint以及一些Eclipse提示build议用0dpreplace一些layout_height和layout_width值。 例如,我有一个build议改变的ListView 之前 <ListView android:id="@android:id/list" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="1"> </ListView> 后 <ListView android:id="@android:id/list" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1"> </ListView> 同样,它build议对ListView项目进行更改。 这些在变化之前和之后都是一样的,但我有兴趣了解为什么这些是性能提升者。 任何人都有解释为什么? 如果有帮助,这里是与ListView总体布局。 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent"> <ImageView android:id="@+id/logo_splash" android:layout_width="match_parent" android:layout_height="wrap_content"> </ImageView> <LinearLayout android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" android:background="@color/background" android:layout_below="@id/logo_splash"> <ListView android:id="@android:id/list" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1"> </ListView> <TextView android:id="@android:id/empty" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/no_upcoming" /> </LinearLayout> </RelativeLayout> 回答 我在这里给出了一个答案,因为它实际上是下面的答案和参考链接的组合。 […]

避免Android Lint抱怨未翻译的string

是否有可能指定value-*目录中的文件中的string有意不被翻译成其他语言? 我有一堆所有语言通用的string,不需要翻译,所以我在values目录中创build了一个unlocalized-strings.xml文件。运行Android Lint检查是否存在一些问题,说有些翻译缺失..我不想禁用整个项目的这个检查,我想只在一些XML文件中禁用它..是否有可能? "title_widget_updater_service" is not translated in de, en, en-rUS, it Issue: Checks for incomplete translations where not all strings are translated Id: MissingTranslation If an application has more than one locale, then all the strings declared in one language should also be translated in all other languages. By default this detector allows regions […]

Googlesearch(android lint)不支持应用程序索引

在Android工作室上分析我的代码(分析>检查代码)时,我收到了这个lint警告。 Googlesearch不能将应用编入索引; 考虑使用ACTION-VIEW intent-filler添加至less一个Activity。 有关更多详情,请参阅问题说明 这是什么警告,以及如何使我的应用程序可以通过Googlesearch索引? 这对search引擎优化听起来很重要,但是我在Google上找不到任何细节。 我也想知道如何从android studio中访问“问题解释”。

Android Lint contentDescription警告

我得到警告作为“[可访问性] imageview丢失imageDescription属性”。 同时使用android lint 那是什么意思?

如何将baselineAligned设置为false来提高LinearLayout的性能?

我只是在xml中创build了一些UI,而Lint给了我一个警告,并说要设置android:baselineAligned为false来提高ListView的性能。 添加此警告的Lint更改的文档说 布局性能:查找带有权重的LinearLayouts,您应该在其中设置android:baselineAligned =“false”以获得更好的性能,并且还会发现嵌套权重可能导致性能问题的情况。 有人可以解释为什么这会提高性能,特别是当涉及重量?

什么是“android:allowBackup”?

自从新的ADT预览版本(版本21)以来,它们有一个新的lint警告,告诉我清单文件(在应用程序标签中)的下一件事情: 应该明确地将android:allowBackup设置为true或false(默认情况下是true,并且可以对应用程序的数据有一些安全性影响) 在官方网站上 ,他们写道: 几个新的检查:你必须明确地决定你的应用程序是否允许备份和标签检查。 有一个新的命令行标志来设置库path。 在编辑时增加lint分析的许多改进。 这是什么警告? 什么是备份function,我如何使用它? 另外,为什么警告告诉我它有安全隐患? 禁用此function的缺点和优点是什么? 清单的备份有两个概念: “android: allowBackup ”允许通过adb进行备份和恢复,如下所示: 是否允许应用程序参与备份和还原基础架构。 如果此属性设置为false,那么即使执行全系统备份,也不会执行应用程序的备份或还原,否则会导致所有应用程序数据通过adb保存。 此属性的默认值为true。 这被认为是一个安全问题,因为人们可以通过ADB备份您的应用程序,然后将您的应用程序的私人数据存入PC。 不过,我认为这不是问题,因为大多数用户不知道adb是什么,如果他们这样做,他们也会知道如何根设备。 ADBfunction只有在设备启用了debuggingfunction的情况下才能工作,这需要用户启用它。 因此,只有将其设备连接到PC并启用debuggingfunction的用户才会受到影响。 如果他们在使用ADB工具的PC上有恶意应用程序,这可能会造成问题,因为应用程序可能读取私有存储数据。 我认为Google应该在开发者类别中添加一项默认禁用的function,以允许通过ADB备份和恢复应用程序。 “android: backupAgent ”允许使用云的备份和还原function,如下所示: 实现应用程序的备份代理的类的名称,它是BackupAgent的一个子类。 属性值应该是完全限定的类名(例如“com.example.project.MyBackupAgent”)。 但是,如果名称的第一个字符是一个句点(例如,“.MyBackupAgent”),则会将其附加到元素中指定的包名称。 没有默认。 该名称必须指定。 这不是一个安全问题。

Lint:如何忽略“<key>没有翻译成<language>”的错误?

我无法编译/debugging我们的Android应用程序,因为本地化文件还不完美。 我的IDE的validation工具林特创build错误说: newCardsOrderVals不在ar,bg,ca,cs中转换 编译/安装/运行ant工作正常,但我想用我的IDE来缓解debugging。 有没有办法closures这个特定的检查,或者理想的做一个警告,而不是一个错误? 我明白,在发布之前,我们确实需要获得本地化文件,但是暂时不是优先考虑的事情,因为屏幕本身被非常频繁地修改。

这个Handler类应该是静态的或者可能发生泄漏:IncomingHandler

我正在开发一个带有服务的Android 2.3.3应用程序。 我有这个服务与主要活动沟通: public class UDPListenerService extends Service { private static final String TAG = "UDPListenerService"; //private ThreadGroup myThreads = new ThreadGroup("UDPListenerServiceWorker"); private UDPListenerThread myThread; /** * Handler to communicate from WorkerThread to service. */ private Handler mServiceHandler; // Used to receive messages from the Activity final Messenger inMessenger = new Messenger(new IncomingHandler()); // Use […]