草庐IT

java - 如何防止 XML 注入(inject),如 XML 炸弹和 XXE 攻击

我正在开发一个安卓应用android:minSdkVersion="14"在这个需要解析xml的应用程序中。为此,我正在使用这样的DOM解析器DocumentBuilderFactorydbFactory=DocumentBuilderFactory.newInstance();DocumentBuilderdBuilder=null;Documentdoc=null;try{dBuilder=dbFactory.newDocumentBuilder();}catch(ParserConfigurationExceptione){e.printStackTrace();}但是当检查代码

java - 如何模拟未在模块中声明的注入(inject)对象?

对于dagger2模块@ModulepublicclassMyModule{@Provides@SingletonpublicRestServiceprovideRestService(){returnnewRestService();}@Provides@SingletonpublicMyPrinterprovideMyPrinter(){returnnewMyPrinter();}}我们可以将测试模块作为测试publicclassTestModuleextendsMyModule{@OverridepublicMyPrinterprovideMyPrinter(){returnMo

android - 在类Util中注入(inject)对象资源(使用Dagger)

在监督这里的系列文章之后,我花了一些时间用Dagger测试了一些东西:http://antonioleiva.com/dependency-injection-android-dagger-part-1/,回去了解更多信息,我看到了一些像这样的好例子:https://github.com/adennie/fb-android-dagger,其中大部分专注于注入(inject)对Activity、Fragment、Service和相关的依赖项。我想用RoboGuice做类似的事情。在RoboGuice中publicclassUtils{@InjectResource(R.string.h

android - Dagger 2 静态注入(inject)

Dagger2静态注入(inject)的任何示例。我已经试过了:-classA{@InjectstaticBb;static{getAppInstance().getComponent().inject(A.class);}staticanyMethod(){b.anotherMethod();}}publicinterfaceAppComponent{voidinject(ClassaClass);} 最佳答案 所以这是我建议的答案:-classA{privatestaticBb=getAppInstance.getCompone

android - 架构组件 ViewModels 使用来自 Activity/Fragment 的参数注入(inject) Dagger

我正在尝试添加新的架构组件ViewModel到我的应用程序,同时用Dagger注入(inject)它们。我的代码基于谷歌显示的here.我试图避免出现ViewModelFactory对于每个ViewModel类型,所以我使用了ViewModelFactory收到Map,Provider>creators.它适用于ViewModels与@Singleton有依赖关系范围。然而,我的一个ViewModels具有来自fragment的依赖性。这是该fragment的模块:@ModulepublicabstractclassDownloadIssueDialogFragmentModule{@

android - 辅助数据注入(inject) GPS

我正在尝试开发一个使用GPS的应用程序,我想将XTRA数据和时间引用注入(inject)GPS以获得更快的修复。我的代码如下:Bundlebundle=newBundle();booleanxtraInjection=locationmanager.sendExtraCommand(LocationManager.GPS_PROVIDER,"force_xtra_injection",bundle);booleantimeInjection=locationmanager.sendExtraCommand(LocationManager.GPS_PROVIDER,"force_time

android - 注入(inject) GoogleApiClient

我想在我的项目的不同部分注入(inject)Googleapi客户端的实例,但是我没能成功。@Provides@Named("geodata_api")@SingletonGoogleApiClientprovidesGoogleApiClient(Contextcontext){returnnewGoogleApiClient.Builder(context).addApi(Places.GEO_DATA_API).build();}@Provides@Named("location_api")@SingletonGoogleApiClientprovidesGoogleApiCli

java - Android TestCase 中的 Dagger 2 依赖注入(inject)

我已经构建了一个示例应用程序(是的,它实际上只是一个示例,没有多大意义,但有助于理解Dagger2中的Android干净架构和依赖注入(inject))。我的代码可在github上找到.(已过时。参见this帖子)示例应用程序让您在EditText中输入名称,如果您按下按钮,您会看到一条消息“HelloYourName”我有三个不同的组件:ApplicationComponent、ActivityComponent和FragmentComponent。FragmentComponent包含三个模块:Activity模块fragment模块交互模块InteractorModule提供了一

android - Dagger 2 注入(inject)无效

提供Gson、Retrofit、OkHttpClient单例的模块@ModulepublicclassMyModule{@Provides@SingletonGsonprovideGson(){GsonBuildergsonBuilder=newGsonBuilder();returngsonBuilder.create();}@Provides@SingletonOkHttpClientprovideOkHttpClient(){OkHttpClientclient=newOkHttpClient();returnclient;}@Provides@SingletonRetrofit

java - 升级到 Roboguice 3 后注入(inject)的对象变为空

我刚刚将我们的项目升级为使用Roboguice3,突然之间所有注入(inject)的对象都变为空,包括POJO、提供者、View、资源等。我正在努力找出原因。首先是gradle构建文件,尝试打开和关闭Proguard,但没有任何区别。我相信我们目前使用的是Roboguice3.0.1,但我尝试了3.0,但仍然有问题。compile('org.roboguice:roboguice:3.+'){excludemodule:'asm'}provided'org.roboguice:roboblender:3.+而且我们在模块文件中确实有一些自定义绑定(bind),所以这里是我根据wiki指