Есть ли способ запустить файл Scratch Android Studio, в котором используются классы, реализующие android.os.parcelable?Android

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Есть ли способ запустить файл Scratch Android Studio, в котором используются классы, реализующие android.os.parcelable?

Сообщение Anonymous »

У меня есть несколько классов данных для моего приложения для Android, и я хотел бы поиграть с ними в файле царапин (или что -то подобное). Пока они не используют API платформы Android, я могу использовать их в файле Scratch в Android Studio. Например, определение класса: < /p>

Код: Выделить всё

@Serializable
class Day(val epochDays: Int) { }
и файл царапины с использованием classpath myapp.app.main : Тем не менее, я хочу, чтобы некоторые из моих классов данных были использованы с помощью Rememembleable Compose, поэтому им необходимо реализовать Android.os.parcelable . Достаточно просто: < /p>

Код: Выделить всё

@Serializable
@Parcelize
class TaskId(val string: String) : Parcelable { }
< /code>
Но теперь я не могу использовать это в своем файле царапин: < /p>
TaskId("test")
Потому что приподнятый является частью API платформы Android. Это дает мне эту ошибку: < /p>

Код: Выделить всё

Exception in thread "main" java.lang.NoClassDefFoundError: android/os/Parcelable
at java.base/java.lang.ClassLoader.defineClass1(Native Method)
at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1012)
at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:150)
at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:862)
at java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(BuiltinClassLoader.java:760)
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:681)
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:639)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
at org.jetbrains.kotlin.idea.scratch.generated.ScratchFileRunnerGenerated$ScratchFileRunnerGenerated.generated_get_instance_res2(tmp.kt:11)
at org.jetbrains.kotlin.idea.scratch.generated.ScratchFileRunnerGenerated.main(tmp.kt:22)
Caused by: java.lang.ClassNotFoundException: android.os.Parcelable
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
... 11 more
< /code>
< /blockquote>
Я мог бы рефактировать свою кодовую базу для поддержки файлов царапин, но файлы царапин не являются артефактами, поэтому я не хочу делать свой код свергнуть только для них. И, кроме того, приподнятый 
- просто интерфейс. Есть ли какой -нибудь способ сказать, что Android Studio заменить в альтернативном android.os.parcelable определение для файлов царапин, похожее на то, что делает Robolectric? что это будет Android.os.parcelable :

Код: Выделить всё

package android.os
import org.example.TaskId
interface Parcelable
println(TaskId::class)
Но ошибка появляется идентичной: она все еще «не может» найти Android/OS/Parcelable .

[*] Я попытался установить класс точки на myapp.app.unittest (или даже myApp.App.AndIdTest ) вместо myApp.App.UntteTeteTeteSteTeSteSteTeSteSteSteSteSteSteSteSteSteSteSteSteSteSteSteSteSteSteSteSteSteSteSteSteSteSteSteSteSteSteSteSt.OUNTETST. Когда я это делаю, он даже не может найти taskid для начала!



Подробнее здесь: https://stackoverflow.com/questions/797 ... -implement
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Есть ли способ запустить файл Scratch Android Studio, в котором используются классы, реализующие android.os.parcelable?
    Anonymous » » в форуме Android
    0 Ответы
    5 Просмотры
    Последнее сообщение Anonymous
  • Классы исключений, реализующие интерфейс
    Anonymous » » в форуме JAVA
    0 Ответы
    7 Просмотры
    Последнее сообщение Anonymous
  • Невозможно запустить файл Scratch в студии Android.
    Anonymous » » в форуме JAVA
    0 Ответы
    18 Просмотры
    Последнее сообщение Anonymous
  • Невозможно запустить файл Scratch в студии Android.
    Anonymous » » в форуме Android
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous
  • При переборе двух списков используются только первые пять членов, а остальные не используются.
    Anonymous » » в форуме Python
    0 Ответы
    31 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Android»