Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 13 Next capture
2021 2022 2023
1 capture
13 Jun 22 - 13 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
This question was closed Jul 11, 2017 at 02:42 PM by Bunny83 for the following reason:

The question is answered, right answer was accepted

avatar image
3
Question by Game-Dragon · Nov 19, 2014 at 04:27 AM · androidassetsavescriptableobject

Saving a ScriptableObject .asset on Android?

I have a strange issue and I feel like my step up is wrong somehow.

I'm using a ScriptableObject as an item shop, where a bool a checked if you purchased or owned one of the items. While I'm using the Unity Editor, when I run the game and purchase an item, the bool is saved on the .asset file and functions how I want it to.

However when I run the game on my Android device, the bool is checked until the application closes. When you restart the game, it resets to it's original state. How would I make this work on my Android device the same way it does in the editor?

Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

1 Reply

  • Sort: 
avatar image
4
Best Answer

Answer by liortal · Nov 19, 2014 at 08:46 PM

ScriptableObjects are objects that are not owned by game objects, and that can be serialized by Unity's built in serialization system as an asset.

Once loaded into memory (by calling ScriptableObject.CreateInstance), the data you store into this class will only be available at runtime.

AFAIK, Unity's serialization is only available inside the Editor, so you cannot take your ScriptableObject and store that to persistent storage while running on a device.

To achieve that, you can implement your own serialization system, or use the PlayerPrefs class.

Comment
Add comment · Show 2 · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image Bunny83 · Nov 19, 2014 at 08:55 PM 0
Share

Right, the ScriptableObject class is only useful for storing information at edit time. At runtime it's just an ordinary class instance which is initialized from the serialized data that has been stored at edit time.

avatar image wmadwand · Jul 11, 2017 at 01:57 PM 0
Share

Yep, found myself in the same trap :) Eventually, as far as I've figured out, there are lot of the appropriate solutions so as to save&store data and it's up to you which one to use. PlayerPrefs, JSON, Custom serialization etc. PlayerPrefs the easiest one, though. Thank you guys @liortal and @Bunny83 for the clarification!

Follow this Question

Answers Answers and Comments

27 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

ScriptableObject asset not saved to disk 3 Answers

Why unity can't create/save asset (ScriptableObject ) at runtime ? 1 Answer

Export Settings or custom files to release builds 1 Answer

Prefab as a subasset of a ScriptableObject 0 Answers

Saving Array Objects in Android. 0 Answers


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges