是什么区别getContext()
,getApplicationContext()
,getBaseContext()
,和" this
"?
虽然这是一个简单的问题,但我无法理解它们之间的基本区别.如果可能,请举出一些简单的例子.
据我所知,在android"发布版"中签名APK.如何从代码中检查它还是Eclipse有一些秘密定义?
我需要这个来调试从Web服务数据中填充ListView项目(不,logcat不是一个选项).
我的想法:
android:debuggable
,但由于某些原因看起来不可靠.当我在调试模式下运行我的应用程序时,BuildConfig.DEBUG无效(=逻辑设置为false).我用Gradle来构建.我有一个图书馆项目,我在这里检查.BuildConfig.java在构建调试文件夹中看起来像这样:
/** Automatically generated the file. DO NOT MODIFY */
package common.myProject;
public final class BuildConfig {
public static final boolean DEBUG = Boolean.parseBoolean("true");
}
Run Code Online (Sandbox Code Playgroud)
并在发布文件夹中:
public static final boolean DEBUG = false;
Run Code Online (Sandbox Code Playgroud)
在库项目和应用程序项目中.
我试图通过检查一个设置了我的项目类的变量来解决这个问题.该类继承自库并在启动时启动.
<application
android:name=".MyPrj" ...
Run Code Online (Sandbox Code Playgroud)
这导致了另一个问题:我在应用程序类之前运行的DataBaseProvider中使用我的DEBUG变量,并且由于此错误它将无法正常运行.
给出像这样的房间数据库DAO:
import android.arch.persistence.room.Dao;
import android.arch.persistence.room.Query;
import java.util.Date;
import java.util.List;
@Dao
public interface MyDao {
@Query("SELECT * FROM MyTable")
List<MyItem> all();
@Query("SELECT * FROM MyTable WHERE date = :date AND language = :language")
MyItem byDate(Date date, String language);
}
Run Code Online (Sandbox Code Playgroud)
有没有办法添加一个Logger或类似的东西,MyDao
以便我可以看到正在执行哪些语句.这在开发过程中非常有用,因为我可以立即检查函数是否正确转换为预期的SQL语句.
我有一个ListView与项目中的一些内容(TextViews,ImageView ...).我正在使用Nostra的UIL加载项目中的图像,但其中一些无法加载.当我打电话时,这就是我得到的Log.v(String.valueOf(failReason.getCause());
:
11-16 23:52:20.447: V/javax.net.ssl.SSLHandshakeException: Handshake failed(17467): failz
11-16 23:52:20.657: V/NativeCrypto(17467): SSL handshake aborted: ssl=0x15fd758: Failure in SSL library, usually a protocol error
11-16 23:52:20.657: V/NativeCrypto(17467): error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure (external/openssl/ssl/s23_clnt.c:762 0x4c2ed485:0x00000000)
11-16 23:52:21.207: V/NativeCrypto(17467): SSL handshake aborted: ssl=0x1562468: Failure in SSL library, usually a protocol error
11-16 23:52:21.207: V/NativeCrypto(17467): error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure (external/openssl/ssl/s23_clnt.c:762 0x4c2ed485:0x00000000)
Run Code Online (Sandbox Code Playgroud)
你不知道,为什么会出现这个问题或者我该如何解决?
这是一个示例图像,无法加载:
http://bigparty.cz/photos/headlinefoto/13.jpg
(我可以附加一个包含整个错误的日志 - UIL 自动将其放入Log的错误)
android image-loading imageview sslhandshakeexception universal-image-loader
我想在发布版本上隐藏listview项,但在调试版本中使其可见.我在互联网上搜索它,但我找不到任何关于它的东西.有人可以帮帮我吗?
android ×6
android-room ×1
certificate ×1
debug-build ×1
debugging ×1
gradle ×1
imageview ×1
listview ×1
logging ×1
this ×1
visibility ×1