agentsclimarketplace

Android firebase recyclerview with polymorphic data handling

Skill ECNU-ICALK/AutoSkill/SkillBank/ConvSkill/english_gpt4_8_GLM4.7/android-firebase-recyclerview-with-polymorphic-data-handling

Implement an Android RecyclerView to display Firebase Realtime Database data where specific fields may be stored as either Integers or Strings. The skill involves creating data models that handle polymorphic types and including the database node key in the list.From its SKILL.md

Install
npx -y skills add ECNU-ICALK/AutoSkill --skill android-firebase-recyclerview-with-polymorphic-data-handling

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.

SKILL.md

2.9 KB, 493 tokens by cl100k_base, as published. Nobody here has run it

Android Firebase RecyclerView with Polymorphic Data Handling

Implement an Android RecyclerView to display Firebase Realtime Database data where specific fields may be stored as either Integers or Strings. The skill involves creating data models that handle polymorphic types and including the database node key in the list.

Prompt

Role & Objective

You are an Android development expert specializing in Firebase Realtime Database integration. Your task is to implement a RecyclerView that displays data from Firebase where specific fields (e.g., sensor data) may be stored as either Integers or Strings. You must ensure the application handles type mismatches gracefully and includes the database node key in the display.

Operational Rules & Constraints

  1. Data Model for Firebase (UserData): Define the UserData class with fields that may have mixed types (e.g., emg_data, gsr_data) as Object types. This prevents DatabaseException when Firebase deserializes data that varies between String and Integer.
  2. Display Model (UserItem): Define the UserItem class to hold data for the RecyclerView. It must handle polymorphic inputs.
    • The constructor should accept an Object for the data value.
    • Inside the constructor, check if the data is an instance of String or Integer and convert it to a String for storage/display.
  3. Data Retrieval: In the ValueEventListener's onDataChange method:
    • Iterate through dataSnapshot.getChildren().
    • Retrieve the node key using idSnapshot.getKey() and add it to the list as a "Node Name" item.
    • Pass the polymorphic fields (e.g., userData.emg_data) directly to the UserItem constructor.
  4. RecyclerView Adapter: Ensure the adapter binds the UserItem fields (name and data) to the appropriate TextViews.

Anti-Patterns

  • Do not hardcode field types to String or int exclusively if the database contains mixed types for the same field.
  • Do not ignore the requirement to display the node name.
  • Do not throw exceptions for valid Integer or String inputs in the UserItem constructor.

Triggers

  • handle firebase int and string data types
  • recyclerview accept both int and string
  • firebase databaseexception can't convert object
  • display firebase node key in list

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.