我是Robolectric的新手,请帮助我理解,这些之间有什么区别
loginActivity = new LoginActivity(); loginActivity = Robolectric.setupActivity(LoginActivity.class); loginActivity = Robolectric.buildActivity(LoginActivity.class).create().start().resume().get();
我正在查看google示例中的新架构组件,在那里我找到了如下代码:
dependencies {
// Support libraries
implementation deps.support.app_compat
implementation deps.support.v4
implementation deps.support.design
implementation deps.support.cardview
// Architecture components
implementation deps.lifecycle.runtime
implementation deps.lifecycle.extensions
annotationProcessor deps.lifecycle.compiler
implementation deps.room.runtime
annotationProcessor deps.room.compiler
// Android Testing Support Library's runner and rules
androidTestImplementation deps.atsl.runner
androidTestImplementation deps.atsl.rules
androidTestImplementation deps.room.testing
androidTestImplementation deps.arch_core.testing
// Espresso UI Testing
androidTestImplementation deps.espresso.core
androidTestImplementation deps.espresso.contrib
androidTestImplementation deps.espresso.intents
// Resolve conflicts between main and test APK:
androidTestImplementation deps.support.annotations
androidTestImplementation deps.support.v4
androidTestImplementation deps.support.app_compat
androidTestImplementation deps.support.design
}
Run Code Online (Sandbox Code Playgroud)
我无法理解为什么他们写了所有的依赖开头deps.*.任何人都可以帮我理解代码.提前致谢.这是回购的链接.
我是 android 新手,正在开发一个应用程序,我需要所有拨出呼叫日志、号码、通话时长和联系人姓名。所以我的问题是我能否获取 Android 系统 CallLog.Calls.CONTENT_URI 表的拨出呼叫的名称和号码,或者我需要从单独的表中读取它并映射它。下面是我的代码。提前致谢。
私有字符串 getCallDetails() {
StringBuffer sb = new StringBuffer();
// 游标管理游标 =
// getContentResolver().query(CallLog.Calls.CONTENT_URI, null,
// 空,空,空);
光标 ManagedCursor = getContentResolver().query(CallLog.Calls.CONTENT_URI, null, CallLog.Calls.DATE + ">?",
new String[] { String.valueOf("1451586601000") }, CallLog.Calls.NUMBER + " asc");
int number = ManagedCursor.getColumnIndex(CallLog.Calls.NUMBER);
int 类型 = ManagedCursor.getColumnIndex(CallLog.Calls.TYPE);
int date = ManagedCursor.getColumnIndex(CallLog.Calls.DATE);
int 持续时间 = ManagedCursor.getColumnIndex(CallLog.Calls.DURATION);
int name = ManagedCursor.getColumnIndex(CallLog.Calls.CACHED_NAME);
// int 地理代码列 =
// ManagedCursor.getColumnIndex(CallLog.Calls.GEOCODED_LOCATION);
// sb.append("通话详情:");
while (managedCursor.moveToNext()) {
String phNumber = ManagedCursor.getString(number);
String callType = ManagedCursor.getString(type);
String … 我是 android 数据绑定的新手,我正在查看如下代码
@get:Bindable
var userIds: MutableList<Long> = mutableListOf()
private set(value) {
field = value
notifyPropertyChanged(BR.userIds)
}
Run Code Online (Sandbox Code Playgroud)
那么,@get:Bindable这里有什么。是@Bindable和@get:Bindable一样吗?
我是kotlin的新手并且无法理解getter和setter在kotlin中的行为,所以如果我将setter设置为private.那么更新值的方法是什么.
package foo
class Person() {
var name: String = "defaultValue"
private set
}
Run Code Online (Sandbox Code Playgroud)