问题标签 [android-application-class]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 错误:不兼容的类型:应用程序无法转换为 AnalyticsApplication。:Android Studio 2.3.2
我将我的 Android Studio 更新到 2.3.2,之后 gradle 构建失败并出现以下错误:
我试过搜索它,但找不到任何相关的东西。
build.gradle 文件:
我在这里遇到错误,
分析应用程序.java:
java - Android:启动一个 AndroidApplication 类
在我的活动中,我想启动一个扩展 AndroidApplication 类的类,但我不知道该怎么做。我当然想调用AndroidApplication类的onCreate方法。
这是清单:
android - 全局变量和暗模式
我正在尝试Global Variable
为我的整个app
. 但似乎它不起作用。
我已经按照指南制作了一个Global Variable
. 这是我到目前为止所拥有的:
这是我on touch event
的工作:
这是darkMode method
:
我更改了状态,boolean
以便在切换活动时变量保持不变。只有当用户长按屏幕时,才会切换。
出现2个问题:
- 它的布尔值不会在整个应用程序中保持其状态。
当关闭和重新打开同一个活动时,日志语句会在打开时显示为假,在长按时再次显示为假。真实和真实。
这是我的清单
应用索引。有关更多信息,请参阅https://g.co/AppIndexing/AndroidStudio。-->
这是我的全局变量类:
java - 按扩展的多个应用程序类
我想拥有多个应用程序类只是为了清理我的代码。
所以我创建了4个类。
1.A通用类供以后参考:
我的时间函数的时间类:
}
和 4 的实现方式与 2 扩展原始类的方式相同
这是我的清单:
错误:
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.edonfreiner.siddur/com.example.edonfreiner.siddur.MainActivity}: java.lang.ClassCastException: com.example.edonfreiner.siddur.GlobalVariables cannot be cast to com.example.edonfreiner.siddur.SetStyles
不合格部分:
android - Android 7.0 和 7.1 getApplication() ClassCastException
在开发人员控制台中,我看到很多这样的堆栈跟踪崩溃
BaseActivity 的 getApp 方法是
应用类是
并且在清单应用程序标记中包含对此类的引用
98% 的崩溃是针对 android 7.0,其余的是 7.1。其他安卓版本不受影响。
编辑:我使用 proguard 所以它可以以某种方式相关但保持类
注意:它可能不相关,但在相同的 android 版本中,看起来 App 的 onCreate 方法有时没有被调用。我观察到它是因为在 onCreate 中创建的某些对象在从 Service(由 AlarmManager 启动)或 BroadcastReceiver 访问时为空
有谁知道什么会导致它,如何修复它或解决它?谢谢
编辑2:我最终得到了这样的东西:
它至少不会崩溃,我可以检查 getApp() == null
android - NotificationListenerService 在 Application.onCreate 代码之前调用
我的应用程序中有一个NotificationListenerService
实现。
似乎我在课堂上初始化的某些东西在我运行Application
时没有初始化。NotificationListenerService
此外,崩溃不是进入Crashlytics
,而是进入Google Play
,所以我假设初始化crashlytics
也没有发生。
NotificationListenerService
是否在应用程序的进程中没有调用扩展的服务类?Application
它是在上下文之外调用的吗?
我的代码的简化实现:
android - 一小部分用户的应用程序类中的 java.lang.VerifyError
(这不是其他类似问题的重复,因为这只发生在一小部分用户身上,我无法重新创建)
在我最新的产品版本中,我突然看到班上java.lang.VerifyError
的一条线路出现类型崩溃的巨大高峰。Application
这条线很简单:
Settings
一个方便的包装类在哪里SharedPreferences
。似乎只有不到百分之一的用户找不到该类。
我们无法在我团队的任何设备上重现崩溃,Google Play 的发布前报告显示 0 个错误。
这是完整的堆栈跟踪:
Settings.init
:
我应该补充一点,这个问题在我拥有的单个生产应用程序版本上发生了 97%,我无法重新创建运行该版本或之后的任何版本的崩溃,但似乎只有那个版本受到影响,到目前为止所有版本几乎都有没有这次崩溃。
但是,我仍然看到该应用版本在 Google Play 中出现崩溃,我担心它可能会在未来的版本中再次出现,因为我认为我没有以任何方式更改该版本中的任何内容与堆栈跟踪有关。
android - Android:扩展应用程序类。为什么我们需要实现单例模式?
我想将我的数据库连接对象放入 Application 类。我阅读了一些教程,并且到处都能看到单例模式的显式实现。像这样的东西
我的问题是为什么我需要做这个明确的实现?没有人解释。
我想在那里添加一些属性,初始化onCreate()
并在活动中获取它的值。
真的有必要实现单例模式吗?
android - 显示来自 UncaughtExceptionHandler 的 Toast 消息
我正在尝试显示来自 customExceptionHandler 类的 Toast 消息。但我无法做到这一点。
我已经看到了类似的问题,例如从 Application 类中显示 Toast 消息但是,它仍然没有解决我的问题。有什么我在这里想念的吗。
我可以在 Logcat 中看到 Log 语句,但是 toast 没有出现
我又尝试了一件事情,我知道静态方法和变量不是最佳解决方案,但是我在一个 util 类中创建了一个静态方法,在静态变量中维护了 activitiy 上下文,并用它来显示一个也没有的祝酒词不工作
喜欢
在 uncaughtException() 方法中
android - Android 架构组件 ViewModel 上下文
我正在研究 google 的架构组件以在我的应用程序中实现 ViewModel 和 LiveData,官方文档说:
注意:由于 ViewModel 比特定的 Activity 和 Fragment 实例的寿命更长,它不应该引用 View 或任何可能持有对 Activity 上下文的引用的类。如果 ViewModel 需要 Application 上下文(例如,寻找系统服务),它可以扩展 AndroidViewModel 类,并在构造函数中有一个接收 Application 的构造函数(因为 Application 类扩展了 Context)
之后,我最终得到了这样的代码:
我应该在活动中正常实例化它吗?
不是很糟糕吗?在需要访问 SharedPreferences 或任何需要上下文的东西时使用此应用程序变量?如果是,我是否应该避免在 ViewModel 上使用它而只在视图上使用它?特别是如果我想用需要上下文的值更新 UI 组件。我有点不知道如何解决这个问题,我愿意接受任何建议。
提前致谢