草庐IT

parcel-cache

全部标签

android - 当您可以使用静态变量执行相同的任务时,为什么要使用 parcelable?

我是android和java的新手......我正在阅读几天关于androidparceling教程,用于将数据或变量值从一个Activity传输到另一个Activity或一个类到另一个......但我不太了解那。你能告诉我是否有必要为此目的使用Parcelable因为同样的任务也可以使用static关键字作为字符串、int或数组类型的变量来执行,那为什么parcelable请详细解释..提前感谢您的解释,请提供与示例的比较 最佳答案 虽然从技术上讲这两种方法都可行,但存在一些缺陷。首先是静态变量是静态的。如果您有同一个Activi

android - 需要 Android 中 "saving Cache Files "上的示例程序

我需要一个演示在Android中保存缓存文件以及如何使用getCacheDir()方法的示例应用程序?谁能帮我解决这个问题?我需要将文件保存在绝对目录中并需要解析该文件。提前致谢。 最佳答案 使用(在Activity中):StringtextToCache="Sometext";booleansuccess=GetCacheDirExample.writeAllCachedText(this,"myCacheFile.txt",textToCache);StringreadText=GetCacheDirExample.readAl

android - 损坏的缓存异常 : Corrupted IndexBlock 298298 found in cache '/Users/macuser/.gradle/caches/journal-1/file-access.bin'

我的android项目运行并且我的应用程序正常运行,但我不断收到这些错误。谁能解释发生了什么以及我该如何解决?org.gradle.cache.internal.btree.CorruptedCacheException:CorruptedIndexBlock298298foundincache'/Users/macuser/.gradle/caches/journal-1/file-access.bin'.org.gradle.cache.internal.btree.CorruptedCacheException:CorruptedIndexBlock272355foundinca

java - 安卓错误 : Could not read input channel file descriptors from parcel

我已经为Android开发了一个大致像这样工作的应用程序:应用程序与Web服务通信并传输信息(不是文件)我可以使用Intent和startActivity导航到不同的屏幕不幸的是,有时应用程序会在不同的Activity中崩溃并出现以下错误:java.lang.RuntimeException:Couldnotreadinputchannelfiledescriptorsfromparcel.atandroid.view.InputChannel.nativeReadFromParcel(NativeMethod)atandroid.view.InputChannel.readFromP

android - getDrawable() 的效率 : is the Drawable cached by the framework?

我需要在每次点击时更改切换按钮的图像。这样做有效率吗?publicvoidonClickToggleButton(Viewv){if(_on){_on=false;myImageView.setImageDrawable(getResources().getDrawable(R.drawable.btn_off));}else{_on=true;myImageView.setImageDrawable(getResources().getDrawable(R.drawable.btn_on));}}或者这是否意味着Drawable每次都会从PNG文件中解码?在这种情况下,只调用getD

android - 将 Parcelable 与循环引用一起使用

Parcelable似乎不像Serializable那样优雅地处理循环引用。在以下示例中,Bar的序列化工作正常,但将其写入Parcel会导致计算器溢出:I/TestRunner(1571):java.lang.StackOverflowErrorI/TestRunner(1571):atandroid.os.Parcel.writeParcelable(Parcel.java:1106)I/TestRunner(1571):atandroid.os.Parcel.writeValue(Parcel.java:1029)I/TestRunner(1571):atcom.XXX.util

android - 在带有 Parceler 的 Android 中使用 CLEAN 架构

我正在使用CLEAN架构中的项目工作,该项目分为“Presentation”、“Domain”和“Data”模块,其中Domain模块托管基本上是数据模型的“实体”具体到这个项目。此架构的一个示例是here.与其他两个模块不同,“Domain”是一个纯Java库模块,非常适合清晰度和测试,因为它没有Android开销,但这也意味着我现在无法使用像“Parceler”是非常特定于Android的。有解决办法吗? 最佳答案 Parceler允许您在给定模块之外配置bean,以通过@ParcelClass注释生成包装Parcelable。

Android 抛出带有 LOG : Transaction failed on small parcel; remote process probably died 的 DeadObjectException

07-2204:38:07.93315793338EJavaBinder:!!!FAILEDBINDERTRANSACTION!!!(parcelsize=352)07-2204:38:07.93315793338WBroadcastQueue:Can'tdeliverbroadcasttocom.android.systemui(pid2160).Crashingit.07-2204:38:07.93415793338WBroadcastQueue:FailuresendingbroadcastIntent{act=android.intent.action.TIME_TICKflg

android - X 类不是抽象的,也没有实现 android.os.Parcelable 中定义的 fun writeToParcel()

在我的Android应用程序中,我想向我的Intent添加一个包含Place对象的Bundle,如下所述。由于serializable速度慢且不推荐,我更喜欢Parcelable。虽然我使用Kotlin1.3.31,但我在分割某些数据类时遇到了问题。示例:importandroid.os.Parcelableimportkotlinx.android.parcel.Parcelize@ParcelizedataclassPlace(valstreet:String,valpostal:String,valcity:String):ParcelableAndroidStudio提示:Cl

java - Parcelable 继承 : abstract class - Which CREATOR?

我有一个实现了Parcelable的抽象类A。我有一个B类和一个C类,它们都扩展了A。我怎样才能使它们可打包?因为我可以将它链接起来并在A和B中提供一个CREATOR,就像许多帖子中建议的那样。但是由于我有其他存储A-B-C类并实现Parcelable本身的对象,这种方法似乎不起作用,因为当我想传递A的ArrayList时,我会在类型列表中使用CREATORArrayListelements=newArrayList();in.readTypedList(elements,B.CREATOR);//B.CREATOR?C.CREATOR???这显然没有意义。那么我怎样才能正确地制作一个