Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

uLiveWallpaper - Develop Android Live Wallpapers with Unity!

Discussion in 'Assets and Asset Store' started by ZimM, Dec 20, 2015.

  1. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    963
    Hi everyone!
    I am happy to announce that uLiveWallpaper 1.0 has just been finished and submitted to Asset Store for review. Let's just hope now that the review process won't take too long :)

    I've also added a link to the latest VirtualBox demo with some fixes and improvements.

    Thank you everyone for your support, without it the development could have took much longer :)

    - Serhii
     
    Last edited: Dec 31, 2015
    neodorus and resheez like this.
  2. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    963
    Good to know it works fine on XPeria Mini as well.
    Regarding your question: you can use any assets you are familiar with. uLiveWallpaper imposes no limitations of that kind. I don't know much about GameFlow or PlayMaker, but I'm pretty sure it won't be a problem to use them for making a live wallpaper. There might be some minimal amount of coding required, but the API is really simple and well documented, and there are examples on how to use it. And, of course, you are always free to ask if you'll have any questions or face any problems.
     
    jonfinlay and resheez like this.
  3. resheez

    resheez

    Joined:
    Mar 22, 2013
    Posts:
    66
    thanks for the update ZimM...
     
  4. redred77

    redred77

    Joined:
    May 31, 2013
    Posts:
    23
    Can I just buy your asset directly? (Full version)
    I heard that Unity asset store review would take more than 2 weeks.
    I can pay by Paypal, Bitcoin or something like that.
     
  5. resheez

    resheez

    Joined:
    Mar 22, 2013
    Posts:
    66
    yeah..exactly...thats what i been thinking...can we buy directly from you for now @ZimM??
     
  6. neodorus

    neodorus

    Joined:
    Mar 4, 2015
    Posts:
    41
    I thought about that too, but then we won't benefit from Unity's integrated updates (the seller is unable to give you a license afterwards). :((
     
    resheez likes this.
  7. resheez

    resheez

    Joined:
    Mar 22, 2013
    Posts:
    66
    Indeed..what you saying is true....i don't know if you are a Uni2Lwp user before...Shinx(the creator of Uni2LWP) was at this very situation before where people asked for buying directly from him when he just submitted the plugin to asset store.
    He however did sold his plugin directly to whom asked for it and did managed to provide each of the updates via personal emails.
    And yes of course we will not have the license from asset store.
    I don't how he did it but again..its the authors decision.
    its up to ZimM if he want to sell directly or not..

    but..i really wish he can:D
     
  8. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    963
    It'd be quite complicated for me to sell directly, for various reasons. However, I've listened to you and just started doing some arrangements. I cannot guarantee anything, but there is a chance you'd be able to purchase uLiveWallpaper much sooner after all ;) Stay tuned!
     
    resheez likes this.
  9. resheez

    resheez

    Joined:
    Mar 22, 2013
    Posts:
    66
    glad to hear that...
    Well if you have decided to sell directly(which im hoping for:D).. i suggest you to use Gumroad or Shopify or you can go to much simpler as Paypal or Bitcoin.

    Just recommendation brother... ;)
    Happy New Year:)
     
    ZimM likes this.
  10. neodorus

    neodorus

    Joined:
    Mar 4, 2015
    Posts:
    41
    @resheez
    I didn't know that the same happened with u2lwp, I guess I was lucky I didn't go through the same waiting nightmare :p.
    You may be right, since there won't be so many updates, PayPal may work, provided @ZimM also agrees.
    Either way, happy new year, everybody!
     
    resheez and ZimM like this.
  11. resheez

    resheez

    Joined:
    Mar 22, 2013
    Posts:
    66
    @ZimM
    How you planned about the prices when you selling directly?
    You will going for full prices or have introductory discount for limited period of time?
    we will be very happy if there was a discount there.
    please consider ;)
     
  12. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    963
    I am not currently planning to sell directly for various reasons, the primary ones being that I can't provide a license, and certain PayPal issues I have. Instead, I added uLiveWallpaper to a different store that should react faster than Asset Store (though again, holidays can mess everything up completely). Prices will be exactly the same as they will be for Asset Store. This isn't exactly my decision - Asset Store does not allows selling assets with lower prices that are on Asset Store itself. There will be an introductory sale, however, soo... don't be afraid :)
     
  13. resheez

    resheez

    Joined:
    Mar 22, 2013
    Posts:
    66
    great.. :)... im waiting.. ;)
     
  14. resheez

    resheez

    Joined:
    Mar 22, 2013
    Posts:
    66
  15. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    963
    Not yet. Please, be patient, I didn't promised anything instantaneous. I'll post here if there is anything newsworthy.
    Lets keep this thread clean.
     
  16. hellaandrew

    hellaandrew

    Joined:
    Mar 31, 2010
    Posts:
    33
    Congrats! I am looking forward to using this plugin =]
     
  17. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    963
    Good news everyone.

    The day has come. uLiveWallpaper is now available on Asset Store! To celebrate this event, uLiveWallpaper is 15% off for a limited time, so go grab it!

    I know you guys are awesome, and that you will create beautiful and entertaining stuff with uLiveWallpaper :) Have fun enhancing your home screen with the power of Unity!

    Buy uLiveWallpaper Indie
    Buy uLiveWallpaper Pro
     
    Last edited: Jun 28, 2017
    neodorus likes this.
  18. neodorus

    neodorus

    Joined:
    Mar 4, 2015
    Posts:
    41
    YAY :).

    I don't know if I had any effect, but yesterday I sent an email to unity about this asset and today I received this reply:

    Hidden name (Unity Technologies)

    Jan 12, 17:12

    Hello.

    Thanks for the e-mail.

    I think the asset store is a bit backed up from christmas and new year. I have prompted the admin reviewing the asset. It shall be looked at shortly.

    Let me know if you have any further problems.
     
  19. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    963
    Who knows, maybe it did had some effect :) In any case, thank you!
     
  20. hellaandrew

    hellaandrew

    Joined:
    Mar 31, 2010
    Posts:
    33
    Congrats. Gonna get the pro version!
     
  21. neodorus

    neodorus

    Joined:
    Mar 4, 2015
    Posts:
    41
    @ZimM
    Man, your LWP maker is simply awesome (left you 5 star review as well).
    Quick question, I'm getting a "Detected eclipse ADT project. Please import project to Android studio first." Needless to say that I've done that already.
     
  22. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    963
    When importing an Eclipse project, Android Studio creates a new Android Studio in a different location. So after importing, you can the folder with the Eclipse project, as it is not needed anymore. Afterwards, when you need to update project, go to Upgrade Project tab and select the new Android Studio project there (not the one that was created by using Create Project tab).
     
    neodorus likes this.
  23. resheez

    resheez

    Joined:
    Mar 22, 2013
    Posts:
    66
    @ZimM
    Great plugin man...
    I have one issue..when i update the project the plane in my scene went missing...other gameobjects like particles still there...
    just the plane...
     
  24. ArthurUS83

    ArthurUS83

    Joined:
    Jan 13, 2016
    Posts:
    25
    Hey ZimM, I'M trying to use swipe script, ti's works on Unity, but when it comes on android studio doesn't works,
    Can you help me about that? I'M new in this area and i do not have much knowledge about scripting.
    Thank You so much for this Plugin 5 STAR..
     
  25. Mebsoftware

    Mebsoftware

    Joined:
    Dec 21, 2015
    Posts:
    13
    Hi ZimM ..Great plugin...How do I add new settings? for example, add checkbox I want to hide an object in the program.
     
  26. jonfinlay

    jonfinlay

    Joined:
    Aug 25, 2015
    Posts:
    535
    Excellent! Worked first time on my own design I'd made :)

    Two questions. On import into Android Studio, you get a message asking whether you want to replace .jars, library files and create cradle style project names. Should these be left selected or better to unselect them?

    When the APK's are created, there are two: app-debug.apk and app-debug-unaligned.apk. which one should be used?

    Feature Suggestion

    Hopefully in the future you could add a Settings Wizard. Most liveWallpapers have the option to disable/enable certain objects in the scene. I was a thinking a wizard could help by simply dragging a prefab into the wizard which would then add it to the options, to be disabled or enabled by the user. Would be really helpful for us non-programmers.

    Alternatively, an example demo which features a scene, such as a beach or forest, and the ability to pan left or right when the user switches pages. This is common on all scenic wallpapers. Perhaps also in the example scene would be colours that change depending on the device times, such as morning, evening and night. And perhaps even real-world weather features, whereby the wallpaper would know if it was forecast to rain, then start raining in the scene.

    A second, more advanced feature would be the ability to accept upgrade payments from within the app, which would unlock certain features. This is perhaps a cleaner option than having two seperate apps (a free and Pro version). Most livewalpapers use this rather than use Ads, which don't really work well with LwPs.

    Great job anyway!
     
    Last edited: Jan 13, 2016
  27. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    963
    That's strange. Does it happens if you do a regular Android application build from Unity?

    Which script do you refer to, WallpaperOffsetToObjectRotation? That script is really simple, basically the only thing it does is changes the object rotation based on current wallpaper offset value, so it's the reason is probably not in the script itself.
    Are you running a Samsung or HTC device? The default vendor-provided launchers in many of Samsung and HTC devices, basically, do not support wallpaper scrolling. I'll recite my post from the previous page:

    If you just want to add some new settings to the existing ones, you must edit "res/xml/preferences.xml" file in your Android Studio project, which is a simple XML file. Here is a link for Android documentation for this subject ("Defining Preferences in XML" section)
    http://developer.android.com/guide/topics/ui/settings.html

    Here's an example how to add a checkbox to the default preferences that uLiveWallpaper generates (added <CheckBoxPreference> node):
    Code (CSharp):
    1.  
    2. <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
    3.  
    4.     <PreferenceCategory android:title="@string/pref_category_general">
    5.  
    6.         <ListPreference
    7.             android:defaultValue="1"
    8.             android:entries="@array/pref_graphics_quality_titles"
    9.             android:entryValues="@array/pref_graphics_quality_values"
    10.             android:key="@string/pref_graphics_quality_key"
    11.             android:title="@string/pref_graphics_quality"
    12.             android:summary="@string/pref_graphics_quality_summary"/>
    13.  
    14.         <ListPreference
    15.             android:defaultValue="30"
    16.             android:entries="@array/pref_frames_per_second_titles"
    17.             android:entryValues="@array/pref_frames_per_second_values"
    18.             android:key="@string/pref_frames_per_second_key"
    19.             android:title="@string/pref_frames_per_second"
    20.             android:summary="@string/pref_frames_per_second_summary"/>
    21.  
    22.         <CheckBoxPreference
    23.             android:defaultValue="true"
    24.             android:key="show_object"
    25.             android:title="Show object"
    26.             android:summary="Controls whether the object will be shown"
    27.             />
    28.  
    29.     </PreferenceCategory>
    30.  
    31.     <PreferenceCategory android:title="@string/pref_category_other">
    32.  
    33.         <Preference
    34.             android:key="@string/pref_about_key"
    35.             android:title="@string/pref_about"/>
    36.  
    37.     </PreferenceCategory>
    38.  
    39. </PreferenceScreen>
    40.  
    41.  
     
    Last edited: Jan 14, 2016
  28. resheez

    resheez

    Joined:
    Mar 22, 2013
    Posts:
    66
    nope...normal android build works just fine....
    it happens when i do any changes to the plane...
     
  29. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    963
    Strange. Could you please PM me your Unity project so I can investigate the issue? Thanks.
     
  30. ArthurUS83

    ArthurUS83

    Joined:
    Jan 13, 2016
    Posts:
    25
    Hey ZimM ... i'm using swipe script from
    Uni2LwP live Wallpaper plugin...
    where should i attach it to make it work,?
    I'm runing on Samsung device....
     
  31. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    963
    Why are you using scripts from Uni2Lwp with uLiveWallpaper? I don't own Uni2Lwp, so I don't know how that script works, but obviously, it won't be compatible.
    As I've said, there is no way to get actual wallpaper offset data from TouchWiz launcher (the default one on Samsung devices). You currently have two options:
    1) Leave live wallpapers without screen scrolling for those devices. After all, if the launcher doesn't supports scrolling, users won't expect it in your live wallpaper.
    2) Implement swipe detection using touch input. This is unreliable, and there is no script for that in uLiveWallpaper at the moment. I do plan to implement this in some future update, though.
     
    Last edited: Jan 14, 2016
    resheez likes this.
  32. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    963
    Leave them as they are - selected.
    The answer is - it depends. 'app-debug-unaligned.apk' is basically just a temporary file. 'app-debug.apk' can be used for internal purposes, but you can't upload it to Play Store, since it is signed with a debug key. To create a release APK, you must use your own keystore and use "Build → Build APK" menu option. More info here:
    http://developer.android.com/tools/building/building-studio.html
    http://developer.android.com/tools/publishing/app-signing.html

    Thanks for the suggestions. They sound interesting, but I'm not so sure I'll implement them as built-in uLiveWallpaper features.

    I've made sure that default settings Activity would not require any actual code modifications for general cases, while still being easily extended and supporting all the regular goodies you get from Android, like built-in localization system. You only need to modify the .XML files, which is already easy enough even for non-programmer. Here's how the whole preferences.xml file that defines the default uLiveWallpaper settings looks like:
    upload_2016-1-14_4-33-53.png

    Just read it, it's pretty much self-explanatory already. I've gave a small example on how to expand the settings screen in a message above to @Mebans. And this is all standard Android stuff, so there are plenty of information on this subject on the Internet. Making a fancy interface for this feels a lot like reinventing a wheel, a bad copy of it, actually. It would be a complex, limited and unreliable system, that would only work for certain percent of users, without actually providing any actual improvement whatsoever.

    Some kind of payment solution would be nice, but it'd suffer from similar issues as well.

    I would improve the amount of demo scenes over time, but I believe that currently included scenes cover all the basic stuff you'd need for a live wallpaper: wallpaper scrolling, settings window, saving/loading preferences etc. The rest is project-specific and really up to developer.
    I'd love to make a beautiful live wallpaper as an example to include with uLiveWallpaper, but unfortunately, I'm not a designer, and it's very hard to find free resources of high enough quality. So programmer art it is :)

    Instead, I'll think I'll be writing some tutorials on those subjects. I strongly believe that would be much more generally useful for both programmers and non-programmers, providing knowledge that won't be limited to uLiveWallpaper alone.
     
    Last edited: Jan 14, 2016
    jonfinlay, Mebsoftware and resheez like this.
  33. redred77

    redred77

    Joined:
    May 31, 2013
    Posts:
    23
    Hi
    I'm trying your plugin and found that it's very stable.

    I'm used to call UnityPlayer.UnitySendMessage() to send some message from android instance to unity. Can I use it without limitation? Will unity player crash time to time?

    Or do I have to create related methods at EventsListener and in unity c# source everytime.
     
  34. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    963
    It should be safe to call UnityPlayer.UnitySendMessage() as soon as Unity Player is initialized. To check for that, call LiveWallpaperUnityFacade.getInstance(). That method will return null if Unity player is not yet ready. Basically something like this:
    Code (CSharp):
    1. if (LiveWallpaperUnityFacade.getInstance() != null) {
    2.     UnityPlayer.UnitySendMessage("MyGameObjectName", "MyMethodName", "Message to send");
    3. }
     
    Last edited: Jan 14, 2016
    Mebsoftware and resheez like this.
  35. resheez

    resheez

    Joined:
    Mar 22, 2013
    Posts:
    66
    it appears like the shader that i been using is the problem...
    when i changed to other shader it looks fine..

    agree....should have one version with in-app purchases rather than two different version(free & paid) where user can unlock some options.
    it would be nice if @ZimM can come up with a simple tutorial with that..
     
  36. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    963
    I've just released an update to version 1.0.1 that fixes some errors when doing Update Project that some users have encountered. There is no need to update if everything is working fine for you.

    Full changelog:
    • Improved project create and update operations reliability.
    • Improved ApiDemo demo scene.
    • Improved build system API.
    • Fixed minor UI issues.
     
  37. Deleted User

    Deleted User

    Guest

    subscribing to watch development ! :)
     
  38. resheez

    resheez

    Joined:
    Mar 22, 2013
    Posts:
    66
    @ZimM
    i updated to the latest version and get the following error when creating a new project;

     
  39. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    963
    Sorry for inconvenience, I've had an issue in my build process that resulted in wrong version being uploaded. Version 1.0.1.1 is correct and is already live on Asset Store. Please re-update.
     
  40. resheez

    resheez

    Joined:
    Mar 22, 2013
    Posts:
    66
    @ZimM
    Thanks for the rapid support...
    Downloaded the new version...creating new project was fine but when i tried to update project..i got the following error;

     
  41. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    963
    Sorry again, I really shouldn't be doing fixes at 7 in the morning :confused: Update to 1.0.1.2 is now live on Asset Store.
     
  42. resheez

    resheez

    Joined:
    Mar 22, 2013
    Posts:
    66
    :D....Thanks @ZimM..
    the plugin now works perfectly and very stable now...:)
     
  43. redred77

    redred77

    Joined:
    May 31, 2013
    Posts:
    23
    When live wallpaper is set, hardware volume key is mapped to media volume but it should be ringtone volume.

    It was known issue with uni2lwp, and it was fixed like this.


    FMODAudioDevice fmodAudioDevice;

    .....

    Boolean findFmodAudioDevice() {
    Field f = null;

    try {
    f = UnityPlayer.class.getDeclaredField("s"); // s is the name of fmod variable in the class file.
    } catch (NoSuchFieldException e) {
    e.printStackTrace();
    }

    if (f != null)
    f.setAccessible(true);
    else {
    return false;
    }

    try {
    fmodAudioDevice = (FMODAudioDevice)f.get(player);
    } catch (IllegalArgumentException e) {
    e.printStackTrace();
    } catch (IllegalAccessException e) {
    e.printStackTrace();
    }

    return (fmodAudioDevice != null);
    }

    ........

    public void onVisibilityChanged(boolean visible) {
    boolean reportedVisible = isVisible();

    if (reportedVisible == false && visible == true) {
    return;
    }

    super.onVisibilityChanged(visible);

    if (player != null) {
    if (visible) {
    player.resume();

    //stop audio play
    if(fmodAudioDevice != null || findFmodAudioDevice()){
    fmodAudioDevice.stop();
    }
    } else {
    player.pause();
    }
    }
    }


    This is not the source code I made and not from uni2lwp source. Some good main uploaded this code on uni2lwp forum before.
    I analyzed unity-classes.jar file a bit and found that FMODAudioDevice is no more set as 's' field in UnityPlayer. I think it needs some fix but expect to work on Unity 5 too. I hope this source code helped you.
     
    neodorus likes this.
  44. HeroGames

    HeroGames

    Joined:
    Apr 13, 2013
    Posts:
    2
    The new versions will have an easy implementation of admob? The Uni2lwp offered this.
     
  45. unitywlp

    unitywlp

    Joined:
    Jan 3, 2014
    Posts:
    146
    Hi
    can i get acess internet and show the result into the wallpaper in real time ?
    like accessing int data and show
     
  46. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    963
    Thank you for the info. Yes, I am aware about this issue, but still figuring out the best way to reliably fix this in best way possible. It's probably obvious, but keep in mind that this would also mean no sound in your live wallpaper.
    No. Just because Uni2Lwp offered this doesn't means it's a good idea. There are multiple reasons why I think it's not:
    1) I don't like the idea of putting everything that could be possibly put into uLiveWallpaper. After you created an Android Studio project, you have a pure Android project. And there are hundreds of tutorials over the Internet how to integrate anything that could be integrated, especially for something like AdMob. I honestly can't see the point in making a crippled automatic integration when it's not that hard in the first place, and when you'd be able to actually control the way you want integration to work.
    2) Ads don't really work for live wallpapers, since pretty much the only place they could be shown is the settings screen, which is often used only a few times.

    If the demand is high enough, I think I'll provide some guides or tutorials on this topic. I believe this is a better option.
     
  47. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    963
    The real question is "Can I access the data from the Internet with Unity"? The answer is "Yes you can". uLiveWallpaper is not a separate engine or something, so if you can do something with Unity - you can use it in your live wallpaper as well.
     
    Last edited: Jan 15, 2016
    javier11om likes this.
  48. HeroGames

    HeroGames

    Joined:
    Apr 13, 2013
    Posts:
    2
    Thanks for the answer.I downloaded the apk demo and noticed that size is 17mb. Is there any way to make a smaller apk? I do simple live wallpapers, the small size is very important to me =( I do live wallpapers only with still images.
     
  49. ZimM

    ZimM

    Joined:
    Dec 24, 2012
    Posts:
    963
    Not really. That's the price of using Unity. There are some tricks you can use, but they all come with a price as well. The first thing that comes to mind is making the build only supports ARM devices. That would reduce the minimal APK size to around 10 MB, but it's almost impossible to reduce the APK size any further. Here's some more info that might help you:
    http://docs.unity3d.com/Manual/ReducingFilesize.html
     
  50. unitywlp

    unitywlp

    Joined:
    Jan 3, 2014
    Posts:
    146
    i dont have any knowledge on using android studio or any other similar tools to build apk can you make a video tutorial process showing to make apk from android studio i am thinking to buy.
    and also i use playmaker if i want to change settings i guess i have to make scripts can you make actions for playmaker that will help me.