Articles of 优化

如何在我的应用程序中使用-assumenosideeffects类android.util.Log

我在我的应用程序中写了-assumenosideeffects class android.util.Log 。 但是如何使用这个。 -assumenosideeffects class android.util.Log { public static int d(…); public static int v(…); public static int i(…); public static int e(…); } 在proguard.cfg文件中。 但没有工作。

如何在Google Play商店中添加关键字以优化我的Android应用程序的搜索

我有一个Android谷歌应用程序,例如名称Mytravel247 ,但问题是用户无法在play storefind我的应用程序,如果他们通过以下输入搜索 我的旅行247 Mytravel 247 我的旅行247 我的旅行24×7 mytravel 24×7 mytravel24X7 请求上述解决方案…..提前感谢。

Java / Android代码优化:Java是否在构建时删除无法访问的代码

请看一下这段代码android示例: private static final boolean aBoolean = false; … if(aBoolean){ //do something like logs } 在这种情况下,因为aBoolean的值是false并且它不能在运行时更改,所以//会在构建时忽略像logs语句这样的东西,还是仍然会构建它,每次它都会评估if? 我正在尝试find像预处理器#DEFINE #IF这样的行为…这样当我编码时我得到了我的日志,当我发布时,我切换了一个值,我的所有调试代码都被完全忽略了。 (我也想指出我的问题是面向Android的,所以如果Java和Android之间存在差异,请告诉我)

毕加索“Resize and centerCrop”或ImageView“centerCrop”?

我目前正在优化我的Android应用程序,并且想知道使用Picasso调整图像大小和居中裁剪是否更快,或者只是将图像直接加载到具有set layout_width和layout_height的setView以及“centerCrop”的scaleType属性中。 ”。

使用memento /命令模式快速撤消/重做?

我正在为手机编写绘画/图形Java应用程序(因此内存有限)。 应用程序状态基本上是三个1000×500位图(即绘画层)。 加载三个位图大约需要2到3秒。 我正在尝试编写一个撤销引擎,但我无法find一个好方法来做到这一点。 典型的方法是: 使用命令模式:撤消时,重新加载初始文件的状态,然后播放到目前为止处理的所有命令,最后一个命令除外。 天真地这样做意味着等待2或3秒来加载太慢的初始状态。 内存不足以将初始状态存储在内存中。 使用memento模式:撤消时,替换使用旧状态更改的当前状态部分。 这意味着每个操作都需要将旧状态的位图保存到磁盘,因为移动设备上没有足够的内存将其存储在内存中。 由于保存位图需要时间,如果用户决定快速连续绘制多个画笔笔划,我该如何应对? 我无法让他们等待。 我的所有解决方案都涉及上述模式的复杂混合。 任何人都可以提出一个解决方案,让我能够为我的应用程序进行相当快速的撤销/重做吗?

Android ScrollView与ListView

我正面临一个View的实现,我必须在列表中加载大约100个项目。 我怀疑可能是实现它的最佳方式。 我已经知道ListView回收视图,而ScrollView会将所有内容保存在内存中。 关键是我正在考虑对Scrollview应用分页,以避免在应用程序膨胀所有项目时出现大量加载时间。 应用程序如Google+,Facebook,Twitter或Linkedin,您认为他们使用ListView吗? 谢谢

android png优化

我有一个使用很多.png文件的应用程序,所以为了减少应用程序大小我使用PngOptimizer来优化它们。 我对结果感到满意,png的文件大小从1mb减少到300kb左右。 但出于某种原因,应用程序大小仅下降约100kb。 没人知道为什么吗? 我真的希望我在png文件中看到的文件大小减少,以便继续使用我的应用程序大小。 请帮忙

是否可以立即最小化Android Studio中的所有function?

在处理具有数千行的类时,最小化IDE上的某些function使得管理代码非常方便。 但是,每次我们重启IDE; 或关闭function:它将再次重新打开。 有没有办法保持“最小化”偏好?

APK将无法安装:DalvikVM无法优化它(字节交换和validation失败)

当我尝试在以下条件下安装我的Android应用程序时,我收到一个INSTALL_FAILED_DEXOPT错误(这似乎与此处有关于INSTALL_FAILED_DEXOPT的其他问题没有任何关系): 首先,使用Eclipse和Android插件将应用程序安装到新创建的2.3.3模拟器中。 如上所述,使用Eclipse在先前版本的2.3.3和2.2仿真器上安装了较新版本的应用程序。 我甚至尝试在启动模拟器时单击“擦除用户数据”checkbox。 在HTC G2上安装了较新版本的应用程序,每晚运行CyanogenMod 7.1(2.3.5)。 使用“adb -d uninstall com.jackcholt.reveal”从G2中删除了以前版本的应用程序,然后尝试使用“adb -d install Reveal3.apk”在G2上安装新版本 每次尝试我都会在LogCat中收到以下错误: D/PackageParser( 75): Scanning package: /data/app/vmdl352595685.tmp D/PackageManager( 75): Scanning package com.jackcholt.reveal I/PackageManager( 75): Unpacking native libraries for /data/app/com.jackcholt.reveal-1.apk D/installd( 35): DexInv: — BEGIN ‘/data/app/com.jackcholt.reveal-1.apk’ — E/dalvikvm( 378): Invalid name: ‘menu_item_re‌index’ E/dalvikvm( 378): Trouble with item 282 @ offset 0x17dd8 E/dalvikvm( 378): […]

从文件中读取long 的最快方法?

我有一个文件,其中包含大约200,000个长值,我想尽快读取到long []。 它适用于Android应用; 函数调用很慢(所以任何涉及用“for”循环一次读取很长的东西都会超级慢)我需要加载才能快。 我可以用什么? 我看到的所有内容似乎都只能快速读取字节。 我之前使用过NIO包中的ByteBuffer和FileChannel ,这似乎是一种从文件加载值数组的快速方法。 但是,我无法弄清楚如何使用它将数据读入long []。 我已经尝试将long []包装为LongBuffer,但是我无法看到任何可以将文件中的数据提供给LongBuffer的方法。 编辑:无论我使用什么方法,我都需要能够在Arrays.binarySearch的long[]数组上使用Arrays.binarySearch 。