myapplication-application-context
全部标签 AndroidAPI级别8引入了Context.getExternalFilesDir()方法,为应用程序特定的SD卡路径提供File对象引用。我想知道如何在低至API级别5的情况下模仿这一点。我看到有一个Context.getDir()方法,但我无法从阅读中看出这有何不同。 最佳答案 我最终找到了答案here.这是该页面的摘录,它回答了我的确切问题:Ifyou'reusingAPILevel7orlower,usegetExternalStorageDirectory(),toopenaFilerepresentingtheroo
我发布这个问题是希望能得到某种明确的答案。如果没有Activity或上下文引用,真的不可能访问资源吗?当只需要访问一些与UI无关的值、Assets或字符串时,传递此类引用会导致代码过于复杂。加上所有那些潜在的悬挂引用。这也完全破坏了各种设计模式,例如单例,在获取实例时必须提供参数。放置静态引用那么有没有办法或者整个社区是否都可以解决这个问题。 最佳答案 您的资源绑定(bind)到上下文,这是事实,您无法更改。以下是您可以执行的操作:扩展Application,获取应用程序上下文并将其用作静态助手。publicclassAppexte
“如果你不能向一个六岁的child解释,你自己就不会明白。”—阿尔伯特·爱因斯坦在阅读了android开发者网站和网络上其他各个地方的上下文后,我仍然有点模糊。在这行代码中,我有点混淆参数的真正含义。我不以得到一个6岁的答案为耻....TextViewtextView=newTextView(getBaseContext());谢谢 最佳答案 大海有鱼,鸟儿的天空,为小鸟嵌套,兔子的兔子洞,绘制javax.swing.JComponent的空间。上下文是一种描述实体所处的以太/环境以及如何访问生活在该环境中的其他事物并与之交互的方式
我正在使用logback-android在我的android应用程序中,只要启用日志记录(应用程序中的配置),就会将消息记录到文件中。它似乎工作正常,但是当我遇到以下情况时当日志大小达到50MB时轮转日志为发生日志轮换时创建备份文件。例如。testFile.1.log.zip为此,我有以下logback.xml文件:/sdcard/dappLog.logtrue%-4relative[%thread]%-5level%logger{35}-%msg%n/sdcard/dappLog.%i.log.zip1250MB根据this回答因为有bug(src)在SizeBasedTrigger
我通过扩展AsyncTask类定义了一个单独的线程。在此类中,我在AsyncTask的onPostExecute和onCancelled方法中执行了一些Toasts和Dialogs。toasts需要应用程序的上下文,因此我需要做的就是:Toast.makeText(getApplicationContext(),"SomeString",1);对话框是使用AlertDialog.Builder创建的,它在其构造函数中也需要一个上下文。我是否认为thiscontext应该是Activity的context?即AlertDialog.Builderbuilder=newAlertDialo
我发现自己需要在用户单击View上的按钮时播放声音文件。MediaPlayer需要创建上下文。放置MediaPlayer初始化代码的最佳方式是什么?我应该将上下文传递给演示者方法并在那里播放吗?或者只在View上播放是否可以。 最佳答案 Context是MVP中AndroidView层的一部分,所以Presenter一定不知道它,你不应该传递它致主持人。你必须向你的View接口(interface)添加一个方法并在你的androidView组件(即Activity或Fragment)中实现它并使用他们在播放声音时在View层中执行操
我得到一个类转换异常java.lang.ClassCastException:android.app.Application无法转换为greendroid.app.GDApplication当我尝试在我的项目中使用绿色机器人库时。这是相关代码。我一直在试图弄清楚出了什么问题,但仍然没有运气。任何形式的帮助将不胜感激。谢谢。publicclassMainMenuextendsGDActivity{privateQuickActionWidgetmBar;@OverrideprotectedvoidonCreate(BundlesavedInstanceState){//TODOAuto-
我的应用程序中有几个类。有些是Activity、服务和纯java类。我知道我可以在Activity中显示Toast消息,但我想显示纯Java类中的Toast。在java类中,我将上下文传递给构造函数,但这似乎没有显示toast。我在Application类中创建了一个方法,该方法将String作为参数,希望我可以使用Application上下文生成一个Toast,但这里也没有什么乐趣。我如何从不是服务或Activity等的类生成Toast。publicclassLoginValidate{publicLoginValidate(Contextcontext){this.context=
我正在开发一个android应用程序,我想显示.apk的版本和日期,现在我可以使用PackageInfo和现在我想显示创建应用程序的日期或.apk创建日期。 最佳答案 对于新读者:publicstaticStringgetAppTimeStamp(Contextcontext){StringtimeStamp="";try{ApplicationInfoappInfo=context.getPackageManager().getApplicationInfo(context.getPackageName(),0);Stringap
使用roboguice的示例。此代码获取ClassCastException。publicclassMainActivityextendsRoboActivity{@InjectView(R.id.text)TextViewname;@InjectView(R.id.imageView1)ImageViewimageView;Drawableicon;@InjectResource(R.string.app_name)StringmyName;@OverrideprotectedvoidonCreate(BundlesavedInstanceState){//TODOAuto-gene