Search Unity

NATIVE PLUGINS for Unity: iOS, Android [Need Prime31 / Easy Mobile / Stans Assets replacement??]

Discussion in 'Assets and Asset Store' started by Voxel-Busters, Apr 4, 2015.

?

Do you want to see Windows Mobile support in CPNP? FYI, current market share is less than 3%.

Poll closed Aug 26, 2022.
  1. Ooh la la, Love to see that!

    12 vote(s)
    52.2%
  2. I don't give a damn!

    6 vote(s)
    26.1%
  3. Are you crazy! Who makes games for Windows Mobile.

    5 vote(s)
    21.7%
  1. mimminito

    mimminito

    Joined:
    Feb 10, 2010
    Posts:
    780
    Sure. When I import the latest package in Unity 5.2.1 I get a permanent error in the console which does not let me build relating to the "us.rsp" file. I have to delete this file and then reimport all assets. The error is something to do with an invalid key in a collection or something, I cant send the exact error right now.
     
  2. Voxel-Busters

    Voxel-Busters

    Joined:
    Feb 25, 2015
    Posts:
    1,963
    Thanks for the detailed information. We would like to look into this issue and try to find a solution. So can you please share the logs and us.rsp file.
     
  3. mimminito

    mimminito

    Joined:
    Feb 10, 2010
    Posts:
    780
    Sure. Let me try and replicate it now.
     
  4. mimminito

    mimminito

    Joined:
    Feb 10, 2010
    Posts:
    780
    Its not doing it today... Oh the wonders of Unity. Next time this happens I will let you know and post up screenshots and logs.
     
  5. Voxel-Busters

    Voxel-Busters

    Joined:
    Feb 25, 2015
    Posts:
    1,963
    No problem! We have been there :p Next time when you come across it, do let us know.
     
    mimminito likes this.
  6. Crillst

    Crillst

    Joined:
    Dec 29, 2013
    Posts:
    69
    Thanks for a great plugin, voxel busters!

    I have a suggestion for an enhancement.

    i use cloudbuild to build my game. everytime a build is done you get an email with a build log to your inbox.
    This plugin generates the following warnings, (but it doesn't break the build):

    [Unity] Assets/VoxelBusters/NativePlugins/Scripts/NP/NPSettings.cs(47,89): warning CS0414: The private field `VoxelBusters.NativePlugins.NPSettings.defineSeperators' is assigned but its value is never used
    [Unity] Assets/VoxelBusters/NativePlugins/Scripts/NP/NPSettings.cs(47,89): warning CS0414: The private field `VoxelBusters.NativePlugins.NPSettings.defineSeperators' is assigned but its value is never used

    I like to have a clean log, so if you'd like maybe you could fix these warnings in the next version?
     
    Voxel-Busters likes this.
  7. Voxel-Busters

    Voxel-Busters

    Joined:
    Feb 25, 2015
    Posts:
    1,963
    Thanks for mentioning about it. We will surely focus on removing unnecessary log messages.

    Once again, we appreciate you for taking the time to help us make CPNP better :)
     
  8. Voxel-Busters

    Voxel-Busters

    Joined:
    Feb 25, 2015
    Posts:
    1,963
    Howdy Awesome People,

    Greetings from VB Team!

    So far CPNP journey has been great and it wouldn't be this easy without your support.

    From last update onwards, we have focussed more on quality and ease of use. And according to us, upto certain extent we were successful in achieving it. Anyways, your views matter more than what we think, so please post your views, suggestion and help us build a top notch product.

    Now that all the planned feature set are completed for both iOS and Android platforms. We are considering to extend support to other remaining mobile platforms. You might be already aware about Amazon support announcement. We are currently working on it and soon it will hit the store.

    Also, we are considering extending support to Windows Mobile platform. However stats indicate that Windows Mobile has about 3% market share in Mobile space and those numbers are bit intimidating. So we wanted to gather your opinion regarding this. So please cast your vote and help us in making this decision.

    Once again, thank you for always supporting us and hope to see the same continued support in future as well.

    Cheers
    VB Team
     
  9. jprocha101

    jprocha101

    Joined:
    Apr 8, 2015
    Posts:
    134
  10. Voxel-Busters

    Voxel-Busters

    Joined:
    Feb 25, 2015
    Posts:
    1,963
    @jprocha101 Great! Thanks for sharing :)
    You are really super fast in making games :cool:
     
    jprocha101 likes this.
  11. plokkum

    plokkum

    Joined:
    May 28, 2013
    Posts:
    90
    It's looking great, VB! Very clear. Well done!
     
    Cromfeli and Voxel-Busters like this.
  12. Voxel-Busters

    Voxel-Busters

    Joined:
    Feb 25, 2015
    Posts:
    1,963
    @jprocha101 in the recent release v1.2.1, did you notice that we have added toast message support :)

    Btw it works only on Android platform, in iOS its nop call.
     
    jprocha101 likes this.
  13. Robota

    Robota

    Joined:
    Feb 7, 2012
    Posts:
    82
    Hi Voxel Buster, me again.

    Still about push notifications on iOS. When my app is not running (not even in background), if I receive a push notification and that I click on it, it run the app.
    This is all good... but when the app is launched, I don't catch the notification in "DidReceiveRemoteNotificationEvent".
    Is it something the plugins can't do or is it something impossible on iOS ?

    Thanks.
     
  14. Voxel-Busters

    Voxel-Busters

    Joined:
    Feb 25, 2015
    Posts:
    1,963
    Okie, mostly what you are looking for is launch notification events. If i got you correctly, then please use DidLaunchWithRemoteNotificationEvent, DidLaunchWithLocalNotificationEvent. These events will get fired when an application is launched either using push notification or local notification.

    Btw, DidReceiveRemoteNotificationEvent gets fired only when a push notification is received when application is in active state. Same goes for DidReceiveLocalNotificationEvent.
     
  15. Robota

    Robota

    Joined:
    Feb 7, 2012
    Posts:
    82
    Thank you very much for the quick reply !
     
    Voxel-Busters likes this.
  16. plokkum

    plokkum

    Joined:
    May 28, 2013
    Posts:
    90
    I hope someone can shed some light on this. When testing on Android, I'm getting the following error: AndroidJavaException: java.lang.NoSuchMethodError: com.google.android.gms.common.api.GoogleApiClient.isConnected missing

    Am I missing an SDK package? I can't figure out which one it is? I can't seem to figure it out.
     

    Attached Files:

  17. jprocha101

    jprocha101

    Joined:
    Apr 8, 2015
    Posts:
    134
    YES! I noticed that. Great job! You guys are awesome!
     
    Cromfeli and Voxel-Busters like this.
  18. Voxel-Busters

    Voxel-Busters

    Joined:
    Feb 25, 2015
    Posts:
    1,963
    May I know if you have deleted our Google Play Services Library? If so, what version you have in your project under Assets/Plugins folder?
     
  19. Voxel-Busters

    Voxel-Busters

    Joined:
    Feb 25, 2015
    Posts:
    1,963
    Gear up guys! This month we have few announcements inline.

    Earlier this month, Rebound Games @Baroni were kind enough to include CPNP support in their plugin Simple InApp System. This is our first association with other publisher and we are really excited about it. And we hope that community finds it really useful.

    And we have planned to incorporate Monetisation Analytics support to CPNP. Soon we will be starting off with its integration and by mid of this month it should be ready for release. We will talk more about it, after its released. For now, take this hint: They are from Tel Aviv, Israel :)

    Also later this month, we will be completing CPNP feature-set by adding the last missing native feature i.e., Cloud Storage support. We are done with pre-development phase and coming week we will starting with its development.

    And finally, before wrapping up this post, we have one more thing to share. Thanksgiving is almost near, and we want to celebrate this with everyone. So we have put Ultra Pack on massive discount of 45% off. During this Thanksgiving sale, CPNP Ultra pack will be sold at a special price of $24.99. And these discounts will run until end of this month. So hurry up and make good use of it.

    Also, don't forget to share your views on these.

    Cheers
    VB Team
     
    Baroni and jprocha101 like this.
  20. Cromfeli

    Cromfeli

    Joined:
    Oct 30, 2014
    Posts:
    202
    I really wish you luck with the expansion VB fellas. Just fair warning: Please do not loose the sight of your core advantage of being simple and free of bullshit. I have slight fear of feature creep over simplicity and brutally well working plugins (Tho I love that you make it very explicit to disable / enable features! Just awesome). In any case I have trust in you, you are just freaking incredible team! :)
     
    Voxel-Busters likes this.
  21. Voxel-Busters

    Voxel-Busters

    Joined:
    Feb 25, 2015
    Posts:
    1,963
    Thank you for your valuable feedback. Like you rightly pointed out, we always wanted CPNP to be recognised for its simplicity and ease of use. And apart from feature improvements, in every iteration we have focused on adding addons that we felt will be really helpful for our developer friends. So surely we will we stick to these core principles :)
     
  22. SidarVasco

    SidarVasco

    Joined:
    Feb 9, 2015
    Posts:
    163
    Hey,

    My assumption must be wrong but when a global id has been set there is no need for platform ID's right?

    When I create a leader board with global id, my instance is null. It's ok when I specify a platform id though.
     
  23. Voxel-Busters

    Voxel-Busters

    Joined:
    Feb 25, 2015
    Posts:
    1,963
    When using Global ID's for Game Service feature, our system expects user to provide all platform specific identifier info in which this feature will be used. And this information can be set either using NPSettings->Game Services Settings or else can be done at runtime using SetLeaderboardIDCollection/SetAchievementIDCollection API's.

    When user requests for creating objects using Global ID, internally our system searches for identifier info associated with current platform. And incase if required info is not found, then at that point object creation fails and null value is returned.

    However the same issue won't happen while accessing API's using platform specific Identifier's and the reason is simple i.e, we have a valid identifier provided by user and that info is more than sufficient for creating objects. So that's how you end up having proper instance at the of request.
     
  24. SidarVasco

    SidarVasco

    Joined:
    Feb 9, 2015
    Posts:
    163
    Ah alright. Thanks for the reply!
     
    Voxel-Busters likes this.
  25. plokkum

    plokkum

    Joined:
    May 28, 2013
    Posts:
    90

    Sorry for the late response, I was gone for an extended weekend. I didn't delete the library, but managed to fix the issue by replacing the jar included with CPNP with the latest build from Google.
     
  26. denis_va

    denis_va

    Joined:
    Apr 21, 2015
    Posts:
    9
    Hey VoxelBusters,
    we bought your Ultra Pack recently to add Push Notification support to our app and I have been positively surprised with our easy it was to get running.

    At the moment I'm trying to react to the Push Notifications inside our app and have found two problems:
    1) "DidReceiveRemoteNotificationEvent" gets triggered twice for a single notification which can't be the intended behaviour and which is making my task unnecessarily harder.

    2) "DidReceiveRemoteNotificationEvent" is also triggered when a notification arrives while the app is active/in foreground which I wasn't expecting. Is there any other way to avoid this than trying to add and remove the listener via MonoBehaviour.ApplicationPause()?

    Hope you can help me with this and thanks in advance!
     
    Last edited: Nov 11, 2015
  27. Voxel-Busters

    Voxel-Busters

    Joined:
    Feb 25, 2015
    Posts:
    1,963
    Could you please mention on which platform you see this behaviour. This is not expected. Please make sure you don't register to events twice.

    This is in-fact intentional. If app is in background, the notification is delivered to notification center and info about notification is triggered via callback as well. Incase if you want to control it, you can check the pause status and do your actions.
     
  28. denis_va

    denis_va

    Joined:
    Apr 21, 2015
    Posts:
    9
    This is happening on Android. Guess I should try it on iOS too. And I already made sure that I'm not registering twice to the event. Any help would be greatly appreciated.

    Okay, good to know. I will it try it that way.

    Thanks for the quick reply, btw!
     
  29. SidarVasco

    SidarVasco

    Joined:
    Feb 9, 2015
    Posts:
    163
    Hey is it possible to call the " rate this game" popup manually ?
     
  30. Voxel-Busters

    Voxel-Busters

    Joined:
    Feb 25, 2015
    Posts:
    1,963
    Code (CSharp):
    1. NPBinding.Utility.RateMyApp.AskForReviewNow();
     
  31. SidarVasco

    SidarVasco

    Joined:
    Feb 9, 2015
    Posts:
    163
    Cool! Thanks
     
  32. SidarVasco

    SidarVasco

    Joined:
    Feb 9, 2015
    Posts:
    163
    Btw, eventhough I want to manually call the rate me dialogue I still need to check if the player has hit the " don't ask me" button. I noticed there is no public interface for this so I simply did :

    Code (csharp):
    1.  
    2. private const string kDontShow = "np-dont-show";
    3.  
    4. ....
    5.  
    6.  
    7.         if (PlayerPrefs.GetInt(kDontShow, 0) == 1)
    8.             return;
    9.  
    10.  
    In my own class.

    Or is there a clean way of doing it?
     
  33. Nicolas79

    Nicolas79

    Joined:
    Dec 6, 2013
    Posts:
    24
    Hello,

    I just bought your plugin from the unity asset store : "Cross Platform Native Plugins - Ultra Pack". Mainly for the webview with html 5.

    I tried the demo scene on Android on an html5 page, it works but it has INCREDIBLY bad performances.
    Here is what I tried :
    - Device : Galaxy S6 (far better than what's supposed to be our lower target). All other app closed completely.
    - Unity 5.2.1f1 building on a PC.
    - Build : not development, no texture override. Quality set to simple in Unity.
    - html page : http://html5games.com/ (this is just a simple example, not the actual url/site)
    then chose the first game (which is smarty bubles), and when I play it I have like 1fps. Totally unplayable, and I really can't show that to any client.

    I closed it and tried it with chrome on the same device, the game ran smoothly (maybe 30 to 60 fps, can't tell).

    Is there anything I might do to increase performance with html 5 games with your webview? I suppose there is since the game is pretty simple and the phone pretty good. So far it's just not usable with these performances :(
    I already mailed your support on friday, no answer yet.

    Hope you can help, best regards,

    PS : I know it may be best to recreate the games with unity, unfortunately this is not an option for our client for his own reasons (and since it's a big company, no way I can change their mind). I'm just gonna have to make it work with a webview somehow.
     
  34. Nicolas79

    Nicolas79

    Joined:
    Dec 6, 2013
    Posts:
    24
    Maybe one way is to increase performance for webview is to change the android manifest. Maybe setting android:hardwareAccelerated="true"

    But I don't really understand how the auto-generated manifests that come with the demo of this plugins works. There are many of them, in subfolders of Assets\Plugins\Android. How can I change the manifest used in the build?

    EDIT : also that wont help performances on iOS which are just as bad (testing on iPad3); still it might be a lead to something..
     
  35. Nicolas79

    Nicolas79

    Joined:
    Dec 6, 2013
    Posts:
    24
    Using http://www.kevs3d.co.uk/dev/canvasmark/ as a test, results were much better.
    Problem is I don't really know why, and also I don't know much about html5. I hope it's not just because the actual "game" size on that window is much smaller
     
  36. 0x646877

    0x646877

    Joined:
    Apr 19, 2014
    Posts:
    24
    I have been trying to get leaderboards working on iOS 9.1 I have everything working with the editor but when I build for iOS and go to test it nothing works when I try adding a score to the leaderboards it just sits there and waits for the callback... Has anyone else had any issues with iOS and leaderboards?
     
  37. Voxel-Busters

    Voxel-Busters

    Joined:
    Feb 25, 2015
    Posts:
    1,963
    @Nicholas, mostly by now our tech-support team might have contacted you to discuss about this problem. If incase if no one has contacted you then please let us know.
     
  38. Voxel-Busters

    Voxel-Busters

    Joined:
    Feb 25, 2015
    Posts:
    1,963
    @0x646877, until now we haven't come across such problem. Anyways, are you getting any error messages at the point of posting score? And can you cross check leaderboard identifier being used? But even if its wrong, you will be still getting callback.

    And also, if you don't mind, can you post this in our forum, so that even others facing same problem can followup discussion.
     
  39. 0x646877

    0x646877

    Joined:
    Apr 19, 2014
    Posts:
    24
    From what I have been able to figure out. When you use NPBinding.GameServices.LocalUser.Authenticate it calls Init() which calls NPBinding.GameServices.InvokeMethod("LoadAchievementDescriptions" it makes the user as logged in if it's able to pull achievement descriptions. My game did not have any so even tho it did login it failed due to not having any achievements. I am not sure if this is a mistake or by design?
     
  40. Voxel-Busters

    Voxel-Busters

    Joined:
    Feb 25, 2015
    Posts:
    1,963
    Okie, Sorry for the inconvenience caused. Actually this is a known issue and its already fixed as well. And by this weekend we will submit a new version along with these fixes.

    Also, you can avoid the wait by contacting us over mail and requesting for the fix.
     
  41. Voxel-Busters

    Voxel-Busters

    Joined:
    Feb 25, 2015
    Posts:
    1,963
    Guys! Now that most of the features are in place. What next would you like to see in this plugin??? We are all ears, eager to hear out your suggestions, that will make this product as the obvious choice for others ;)
     
  42. Cromfeli

    Cromfeli

    Joined:
    Oct 30, 2014
    Posts:
    202
    Now that you have good mechanics to exclude / include specific parts of your plugin, I would really appreciate native access to features of new Camera2 or audio. Current unity implementation leaves plenty to hope on features/efficiency for both.
     
    Voxel-Busters likes this.
  43. Voxel-Busters

    Voxel-Busters

    Joined:
    Feb 25, 2015
    Posts:
    1,963
    Thanks for your suggestion, will make a note of this. And can you briefly explain about you expectations from this feature. Like, what functionalities are you looking for under this. And would like to know the problems that you are facing with existing systems. Having this info will help us greatly while evaluating and finding solutions.
     
  44. Voxel-Busters

    Voxel-Busters

    Joined:
    Feb 25, 2015
    Posts:
    1,963
    One more thing, Is anyone looking for any particular Addon service to be integrated along with CPNP? Let us know about it and we will do the needful :)
     
  45. Nicolas79

    Nicolas79

    Joined:
    Dec 6, 2013
    Posts:
    24
    How do you do that btw?
    I only need the webview and having all those scripts compiled and into the app is useless for me.
    I tried to remove stuff I dont need but it's quite too imbricated/interlinked (is that english?) to finally get it working with only needed files.
     
  46. Nicolas79

    Nicolas79

    Joined:
    Dec 6, 2013
    Posts:
    24
  47. Voxel-Busters

    Voxel-Busters

    Joined:
    Feb 25, 2015
    Posts:
    1,963
    Hey @Nicolas79

    Avoiding unused feature related files, frameworks is simple. Just open NPSettings and select Application Settings. Under Application Settings, choose the features that you want to use within your application. And once done, save those changes. Thats it! Now all the unused feature related code will be completely excluded in exported build.

    Btw, this feature is available from v1.2.1. So incase if you are using old version, then please update to latest version.
     
  48. Voxel-Busters

    Voxel-Busters

    Joined:
    Feb 25, 2015
    Posts:
    1,963
  49. Simon_says

    Simon_says

    Joined:
    Oct 19, 2013
    Posts:
    141
    It's been a while after this feature has been discussed, so may I ask about the status of it? Regarding remote notifications full support.
     
  50. gallenwolf

    gallenwolf

    Joined:
    Mar 11, 2012
    Posts:
    118
    Hey there,
    I just got your Ultra pack, and I cannot believe how fast I could get the achievements and leaderboards to work. I do have several questions though:

    a) Google play sign in splash screen does not show up when I first authenticate; if I were to sign out then sign in again, the splash screen appears properly. Do you have any idea why? This happens in both my test app, as well as your nativePlugins/Demo/Scene/DemoScene scene on my phone (Nexus 4, Android 5.1.1)

    b) I've put my leaderboard/achievements into the NPSettings/Achievement ID Collection, how can I access them inside the code?

    Thanks! The ultra pack seems very promising on android at the moment, still need to play around on ios :)

    Cheers!