草庐IT

constructor-injection

全部标签

android - 使用 Butter Knife 库进行 View 注入(inject)

我在做什么::我正在尝试运行butterknifelibrary对于我的简单项目我已经按照文档中的所有步骤进行操作,但我仍然获取日志错误我该如何解决这个问题,我是否遗漏了任何步骤我还在libs文件夹中添加了jarMainActivity.javapackagecom.example.butterknife;importandroid.app.Activity;importandroid.os.Bundle;importandroid.widget.TextView;importbutterknife.ButterKnife;importbutterknife.InjectView;pu

android - 无法使用 Butterknife 8.1.0 注入(inject) View

我想在我的项目中使用Butterknife。如所述Here我这样设置了Butterknife。在项目级模块中:buildscript{repositories{jcenter()}dependencies{classpath'com.android.tools.build:gradle:2.0.0'classpath'com.neenbedankt.gradle.plugins:android-apt:1.8'//NOTE:Donotplaceyourapplicationdependencieshere;theybelong//intheindividualmodulebuild.g

android - 如何使用 dagger2 将 Activity 注入(inject) Adapter

AndroidStudio3.0金丝雀8我正在尝试将我的MainActivity注入(inject)我的适配器。然而,我的解决方案工作正常,但我认为它有代码味道,而不是正确的方法。我的适配器fragment看起来像这样,但我不喜欢的是我必须将Activity转换为MainActivity:publicclassRecipeAdapterextendsRecyclerView.Adapter{privateListrecipeList=Collections.emptyList();privateMapviewHolderFactories;privateMainActivitymain

android - "Hidden constructor called more than once per process"是什么意思?

在调试我的应用程序时,在我的LogCat中,我经常得到:E/TelephonyManager(5382):Hiddenconstructorcalledmorethanonceperprocess!我在谷歌上搜索了一下,虽然我注意到其他人提到了这个错误(在其他日志中),但我无法确定它的含义。那么这个错误是什么?为什么我得到它?它的意义是什么? 最佳答案 这是来自Android源代码:/***提供对有关电话服务的信息的访问*设备。应用程序可以使用此类中的方法来*确定电话服务和状态,以及访问一些*订户信息的类型。申请也可以注册*接收电话

android - Dagger 2 从两个组件注入(inject)

我遇到了一个我无法解决的问题。我在我的Android应用程序中使用Dagger2作为DI框架。我试图用两个不同的组件注入(inject)我的Activity,但是apparentlyitcan'tbedone.显而易见的解决方案似乎是创建一个具有所有所需行为的独特组件,但我的模块中有不同的范围。那么什么是正确的方法呢?我是否应该拥有相同的示波器,即使这不是计划? 最佳答案 不可能将两个组件注入(inject)到一个类或Activity中,您应该更改组件结构并将其划分为子组件或为每个类创建一个单独的组件(不推荐),此链接也讨论了您的问

android - 使用 Dagger 2 在单元测试中进行字段注入(inject)

根据Daggerdocumentation中的建议,对于单元测试,我们根本不需要涉及Dagger,对于提供的示例,它是有意义的:classThingDoer{privatefinalThingGettergetter;privatefinalThingPutterputter;@InjectThingDoer(ThingGettergetter,ThingPutterputter){this.getter=getter;this.putter=putter;}StringdoTheThing(inthowManyTimes){/*…*/}}有了这个类结构,单元测试很简单,只需模拟get

SQL Injection (Blind)之盲注(原理、分类、利用)

SQLInjection(Blind)盲注一、SQL盲注概述在SQL注入过程中,SQL语句执行后,选择的数据不能回显到前端页面,此时需要利用一些方法进行判断或者尝试,这个过程称之为盲注。在盲注中,攻击者根据其返回页面的不同来判断信息(可能是页面内容的不同,也可以是响应时间不同)。一般情况下,盲注可分为两类:基于布尔的盲注(Booleanbased)基于时间的盲注(Timebased)1.1基于布尔的盲注某些场合下,页面返回的结果只有两种(正常或错误)。通过构造SQL判断语句,查看页面的返回结果(TrueorFalse)来判断哪些SQL判断条件成立,通过此来获取数据库中的数据。1.2基于时间的盲

android - 在没有第三方框架的情况下测试 Android Activity 时如何注入(inject)依赖项?

我想测试一个AndroidActivityCommentActivity,它通常构造和使用CommentsDataSource的实例(都是我编写的类)。publicclassCommentActivityextendsActivity{@OverrideprotectedvoidonCreate(BundlesavedInstanceState){:CommentsDataSource=newCommentsDataSource(..);:}:}我愿意自己创建MockCommentsDataSource并希望避免使用第三方模拟框架。(为什么?因为我是一名教师,试图减少我需要塞进学期的信

android - ButterKnife 和 Dagger 之类的依赖注入(inject)框架会让应用变慢吗?

我即将开始一个比较大的项目,并且很纳闷使用这些依赖注入(inject)框架的真正好处是什么?DI会增加应用加载时间吗?或者提供任何性能值(value)?Google的文档反对使用Robojuice,因为它会占用RAM,这是所有DI的共同点吗?有兴趣听听大家的意见。 最佳答案 我在NYTimes工作,使用Dagger2在2个范围内实例化数百个托管对象只需不到100毫秒。Dagger帮助我们组织对象并从Activity或业务对象中删除大量样板。我会为任何规模的应用推荐它。 关于android

android - 混淆器 - PersistenceException : Constructor not matched for class

我在我的应用程序中使用retrofit2.0和simpleframework.xml库。问题是当我在没有proguard的情况下运行应用程序时它工作正常但是当我运行proguard时我在日志中收到以下错误。E/ERROR:java.lang.RuntimeException:org.simpleframework.xml.core.PersistenceException:ConstructornotmatchedforclassA类A没有/默认构造函数应该可以工作。我仍然添加了一个NoArgumentConstructor。但这并没有解决问题。A级@Root(name="data",