Search Unity

[Released] IOS Native Unity3D Plugin

Discussion in 'Assets and Asset Store' started by stanislav-osipov, Apr 22, 2013.

  1. Thorny2000

    Thorny2000

    Joined:
    Sep 18, 2014
    Posts:
    53
    UNET multiplayer on iOS - you need to make your own match making interface and a match making server. e.g.


    Using Game Center, the match making interface is done for you and the user already has their Game Center account, already know the Game Center match making interface. Makes lots of sense to use this if say your game is casual-ish multiplayer with just a couple of players connecting. Unity are doing a match making server service, I haven't looked at it so can't comment on how it works, it is in preview: https://unity3d.com/services/multiplayer
    UNET is also cross-platform - good if you are releasing on multiple platforms.

    Best way is to test the different systems in your game or even just download the sample projects and run them to get an idea of how things work. A lot depends on the type of game you're making.
     
  2. darkinyourass

    darkinyourass

    Joined:
    Sep 24, 2015
    Posts:
    28
    The first time I hear about this problem. You can try to create a blank project and try again. Let me know about the result.

    Unfortunately this is not possible with our plugin.

    Sorry for long response. Next time, when you have an urgent problem, it is better to write on e-mail support. IOS Native doesn't crash when you build on Apple TV, but we don't have an API for Apple TV.Unfortunately, too few people have requested this. We add this to our to-do list.

    It looks like a special case. Try to create a new project, if the problem persists, please write me an email.
     
  3. stanislav-osipov

    stanislav-osipov

    Joined:
    May 30, 2012
    Posts:
    1,790
    Hey @Illuvatar the easiest way here is to simply add the callback, and wait until all data will be loaded (you got callback for each request key) you may use simple counter to achieve this. When all data is loaded you may continue your game load.

    Cloud manager can't be used in the separate thread, since native integration us build using Unity API, and as you know Unity API may work only on main thread. Using it outside if this thread will may cause an issues.

    By the way I do recommend to take a look in the new cloud API released by apple (API included to IOS Native as well):
    https://unionassets.com/iosnative/cloud-kit-513

    Cheers!
     
  4. DarkCooker

    DarkCooker

    Joined:
    Jan 7, 2015
    Posts:
    119
    The iCloud save does not work properly...
    After we send the string to iCloud.
    I cannot be identified/load from another device...

    Please help...
     
  5. Usagination

    Usagination

    Joined:
    Nov 30, 2015
    Posts:
    1
    Hello. Thank you that you who have made a nice plug-ins.
    Use the iOS Native plug-ins, it was trying to implement in-app billing, not payment while out, such as the following error.
    I tried to find the error, you question if you can not find the information, such as this. Or the following errors may occur in any case?

     
  6. darkinyourass

    darkinyourass

    Joined:
    Sep 24, 2015
    Posts:
    28
    I think the best idea to write me direct via email, and I will help you - support@stansassets.com
     
  7. darkinyourass

    darkinyourass

    Joined:
    Sep 24, 2015
    Posts:
    28
    It is difficult to say something, with the amount of information that you have provided. Can you describe in detail what you were trying to do and how you tried.

    And of course I'll ask if you tried our test scene, and if you follow the documentation, and remember that if you have an urgent question, it is best to contact via email - support@stansassets.com. So I can see your question in more detail, and faster.
     
  8. Max_power1965

    Max_power1965

    Joined:
    Oct 31, 2013
    Posts:
    127
    Hello,
    I'm having some trouble with your plugin. Here is the problem. I've downloaded and successfully installed the "Google mobile ADS SDK" and all works, but after I've installed iOS native, when compiling in Xcode, I have 124 errors (see the image attached).
    Unity version 5.3.3f1 Xcode version: 7.2.1
    Is there any compatibility problems between Google mobile ADS SDK and iOS Native? how can i solve ?
    Thanks
     

    Attached Files:

  9. darkinyourass

    darkinyourass

    Joined:
    Sep 24, 2015
    Posts:
    28
    It looks like you don't press install button in IOS Native Settings. Try to create a new empty project and repeat all again. If you still will have problems, contact me via email - support@stansassets.com
     
  10. Shiroboi

    Shiroboi

    Joined:
    Aug 25, 2014
    Posts:
    9
    Hey there, We've been using your assets for a long time. Apple has recently changed their policy and since the beginning of the year, we've gotten rejections on 2 different apps. Apparently, they are now mandating that if the user buys an item with in game currency, that item needs to be restorable. Previously, this only applied to in-app purchases but now they've extended this to in game currency purchases as well. They mentioned that you could use iCloud or Game center to do this. Is this something supported by the current generation of software or will it be soon? Thanks!
     
  11. Thorny2000

    Thorny2000

    Joined:
    Sep 18, 2014
    Posts:
    53
    Isn't it as simple as saving your number of coins (in game currency) to the cloud and read it back in from the same location: https://unionassets.com/iosnative/coding-guidelines-26
     
    Shiroboi likes this.
  12. Shiroboi

    Shiroboi

    Joined:
    Aug 25, 2014
    Posts:
    9
    It might be. It's not just coins though. Apple doesn't care about the coins, they care about restoring the items purchased with the coins. Thanks for the link, I bookmarked it.
     
  13. Kellyrayj

    Kellyrayj

    Joined:
    Aug 29, 2011
    Posts:
    936
    Hi there!

    Running into an error and a crash when I attempt to call the SaveTextureCameraRoll.

    This is what Xcode says during the crash:

    Screen Shot 2016-03-02 at 6.45.20 PM.png

    I'm curious if this refers to not having access to the camera roll? Though it does prompt me to grant access to the gallery when I select a photo from the phone.
     
  14. darkinyourass

    darkinyourass

    Joined:
    Sep 24, 2015
    Posts:
    28
    Contact me via email - support@stansassets.com. In your case, this will be the fastest and best way.
     
  15. Kellyrayj

    Kellyrayj

    Joined:
    Aug 29, 2011
    Posts:
    936
    I've figured it out. I was trying to save a photo texture that was outside the bounds of the screen. I've recalculated the pixels that need to be in the texture and everything is peachy. Thanks!
     
  16. SniperED007

    SniperED007

    Joined:
    Sep 29, 2013
    Posts:
    345
    Since upgrading to the latest IOS Native plugin update my builds keep failing with this, anybody else have this issue?

    [xcode] clang: error: linker command failed with exit code 1 (use -v to see invocation)
     
  17. darkinyourass

    darkinyourass

    Joined:
    Sep 24, 2015
    Posts:
    28
    Can you try to disable bitcode?
     
  18. vexe

    vexe

    Joined:
    May 18, 2013
    Posts:
    644
    Wasn't sure where to post this but here goes... Getting tons of errors building on iOS. No idea how this happened, just a couple of days ago it was building fine now all of a sudden 159 build errors.



    And then at the end, the last error: "clang: error: linker command failed with exit code 1 (use -v to see invocation)"

    Any thoughts, ideas, help would be appreciated.
     
  19. vexe

    vexe

    Joined:
    May 18, 2013
    Posts:
    644
    It's most likely something I forgot to set in xcode just don't know what exactly...
     
  20. darkinyourass

    darkinyourass

    Joined:
    Sep 24, 2015
    Posts:
    28
    It looks like you forget to press install button in IOS Native Settings.
     
  21. gamedivision

    gamedivision

    Joined:
    Nov 4, 2012
    Posts:
    47
    i found that when updating the asset it removed all the settings files from plugins/IOS folder so i put the files back from a duplicated project and all the errors are gone
     
  22. vexe

    vexe

    Joined:
    May 18, 2013
    Posts:
    644
    Thanks guys. It was just the Unity package exporter that screwed me over not including some of the files in the package when I moved the files from the dev machine to the Mac. Working now.
     
  23. aer0ace

    aer0ace

    Joined:
    May 11, 2012
    Posts:
    1,513
    I was planning to use iOS Native Plugin for banner ads in my game, but I found out that Apple is discontinuing the iAd Network. What happens to banner ads in iOS Native Plugin if the iAd Network is being discontinued? Will it still be usable for other ad services? Or has Apple set up a different ad service that iOS Native Plugin works with?
     
  24. darkinyourass

    darkinyourass

    Joined:
    Sep 24, 2015
    Posts:
    28
    You do not need to worry. If Apple no longer support iAd, and introduces a new Ad system. We immediately integrate it into our plugin.
     
  25. aer0ace

    aer0ace

    Joined:
    May 11, 2012
    Posts:
    1,513
    Thanks for your response. I am in the predicament where I am starting to integrate banner ads, but I'm not sure if it'll work. I have no way of creating an iAd Network contract in iTunesConnect, so I am not sure if banner ads will work with your plugin.

    EDIT:
    I decided to just implement it, and banner ads actually show up! I have no idea how Apple identifies the ad unit with the app (probably through Apple Id?) but it is apparently "working", without an iAd Network contract.
     
    Last edited: Mar 16, 2016
  26. Robota

    Robota

    Joined:
    Feb 7, 2012
    Posts:
    82
    I try to load mp3 from the shared folder and play it. The unity doc say it should be possible but it doesn't work.

    So, I would like to know if it is possible to dynamically load a mp3 file and play it with this plugins ?
    Thanks.
     
  27. Robota

    Robota

    Joined:
    Feb 7, 2012
    Posts:
    82
    Ok, finally I made my own iOS plugin to do it.
     
  28. aer0ace

    aer0ace

    Joined:
    May 11, 2012
    Posts:
    1,513
    I'm implementing IAP for my app, and a problem I'm having is, I don't know how to determine if a non-consumable product has already been purchased. If I can't do this, when the user restarts the app, he/she will be forced to Restore the products manually. This is annoying.

    How can I tell if a non-consumable product has been purchased?

    I believe this is the same problem as what @Tarzan111 was having earlier:
    http://forum.unity3d.com/threads/released-ios-native-unity3d-plugin.179379/page-16#post-2294356

    His solution was to read the IAP ProductId from PlayerPrefs, but this doesn't seem ideal.


    I've tried some alternative solutions, like force Restore on startup, but this returns an error if the user didn't actually have any products to restore.

    I've also thought of using verification, but it doesn't look like this is what it's intended for.


    I am able to get this info with Android Native Plugin, but not iOS. Android has a callback ActionBillingSetupFinished after which I can call RetrieveProductDetails to determine if the product has already been purchased. Is there something equivalent in iOS Native Plugin?
     
  29. Huy Thach

    Huy Thach

    Joined:
    Mar 27, 2013
    Posts:
    6
    In your Video API, do you support to load and play a video from Camera Roll?
     
  30. darkinyourass

    darkinyourass

    Joined:
    Sep 24, 2015
    Posts:
    28
    I glad that you solved this problem, you can contact me via email - support@stansassets.com, and explain how you solved this problem and maybe we will implement it in our plugin.

    List of all the products' comes only when you call the restore method. The best solution for your problem with the non-consumable product, it is to save it in PlayerPrefs and check for it when you need. The policy of Apple advises having a button in your game Restore Purchase. When you call this method you get all item of the current player. I think this is the best logic for this situation, if you have any idea on this occasion, I am pleased to hear you.

    Unfortunately, we don't have this functionality.
     
  31. aer0ace

    aer0ace

    Joined:
    May 11, 2012
    Posts:
    1,513
    No better ideas. This sounds reasonable. I am definitely going to have a Restore Purchases button somewhere, but for just logging back into a game, the Android API got it right, as you don't have to locally store anything that can potentially get hacked to unlock paid content for free. The iOS API can learn a thing or two from it.

    Anyway, thanks for your timely response!
     
  32. alvifarooq

    alvifarooq

    Joined:
    Sep 14, 2015
    Posts:
    21
    Hi,

    I just bought the asset yesterday and so far it has been a breeze implementing the functions. I just wanted to check what's the expected behaviour when posting an image to Facebook. I'm doing this for achievements in my game and here's what I note:

    1. If the Facebook app is installed, I get the app's prompt which ignores the image I'm passing.

    2. If a user's added their Facebook account in IOS (through Settings), I get the expected prompt with image, text and link.

    Both cases I'm using: IOSSocialManager.instance.FacebookPost ("text", "link", texture);

    I want to post the image so I would like the second behaviour but regardless whether an account has been added or there's no account added but a facebook app is installed.

    Also, will Twitter follow the same strategy?

    Thanks for the help!

    Regards,

    Farooq
     
  33. darkinyourass

    darkinyourass

    Joined:
    Sep 24, 2015
    Posts:
    28
    I answer you via email.
     
  34. dleight

    dleight

    Joined:
    Jan 28, 2014
    Posts:
    7
    Hi,

    I'm trying to implement allowing the user to take a screenshot and then share it using iOS Native 8.2, Playmaker 1.8.0 and Unity 5.3.1p1. I have a state that is set-up as an action sequence and includes ISN_Take Screen Shot (saving texture to a variable) followed by ISN_Share Screen Shot (using same variable).

    When I enter this state, it gets stuck on ISN_Take Screen Shot and goes no further.

    I've tried a bunch of variations, but am out of ideas for the moment.

    Please any help would be greatly appreciated! I am on a tight deadline!

    Thanks in advance!

    Daniel
     
  35. darkinyourass

    darkinyourass

    Joined:
    Sep 24, 2015
    Posts:
    28
    I answer you via email.
     
  36. kineticabstract

    kineticabstract

    Joined:
    Nov 15, 2014
    Posts:
    10
    Since this seems to be the "Can't get iOS Native to build" thread -

    I'm running Xcode 7.3, Unity 5.3.3f1. I installed Ultimate Mobile today, and my tests on Android went great. On iOS, however, I can't convince it to build. I've installed (and re-installed, and removed and installed) the plugin, but when I run the build in XCode, it always complains about the same six ISN functions (LoadSaveData, ResolveConflictingSaved, FetchSavedGames, DeleteSavedGames, SaveGame).

    I'm only using "Social Sharing" on iOS right now.

    Any thoughts?

    Thanks.
     
  37. Sempe4

    Sempe4

    Joined:
    Feb 16, 2016
    Posts:
    2
    Hi.

    I have problem with testing IAP. Created products in iTunes Connect, checked Cleared for Sale, they have status ready to submit, generated and installed a new provisioning profile, used it in xcode, I did't upload binary to itunes. When run app with xcode on test device, in xcode console windown there is message "StoreKit Init Succeeded Available products count 5", but when i perform buy action (fire IOSInAppPurchaseManager.Instance.BuyProduct(productId)) nothing happens, and console shows messages: OnTransactionComplete - OnTransactionFailed - error code 4 - Product Not Available. I found this message comes from here:
    Code (CSharp):
    1. -(void) buyProduct:(NSString *)productId {
    2.  
    3.  
    4.     SKProduct* selectedProduct = [_products objectForKey: productId];
    5.     if(selectedProduct != NULL) {
    6.         SKPayment *payment = [SKPayment paymentWithProduct:selectedProduct];
    7.         [[SKPaymentQueue defaultQueue] addPayment:payment];
    8.     } else {
    9.         NSMutableString * data = [[NSMutableString alloc] init];
    10.      
    11.         [data appendString:productId];
    12.         [data appendString:@"|"];
    13.         [data appendString:@"Product Not Available"];
    14.         [data appendString:@"|"];
    15.         [data appendString:@"4"];
    16.      
    17.      
    18.         NSString *str = [data copy];
    19. #if UNITY_VERSION < 500
    20.         [str autorelease];
    21. #endif
    22.         UnitySendMessage("IOSInAppPurchaseManager", "onTransactionFailed", [ISN_DataConvertor NSStringToChar:str]);
    23.     }
    24. }
    25.  
    Why products not available? Help me with this, spent a lot of time
     
  38. mimminito

    mimminito

    Joined:
    Feb 10, 2010
    Posts:
    780
    @lacost I am getting errors with Ultimate Mobile on iOS. I have installed the plugin (pressed the install button) and it states "IOS Native Plugin 8.02 is installed". I have Camera And Gallery and Social Sharing enabled, everything else disabled. When I build I get errors relating to ISN_GameSaves classes:

    Screen Shot 2016-03-31 at 11.16.23.png

    Any help is appreciated.
     
    VicM likes this.
  39. darkinyourass

    darkinyourass

    Joined:
    Sep 24, 2015
    Posts:
    28
    Disable iCloud in IOS Native Setting, and find script iCloudManager.cs and comment first line #defineSA_DEBUG_MODE. And try to build, let me know about the result.

    Disable iCloud in IOS Native Setting, and find script iCloudManager.cs and comment first line #defineSA_DEBUG_MODE. And try to build, let me know about the result.
     
  40. skullthug

    skullthug

    Joined:
    Oct 16, 2011
    Posts:
    202
    I'm having the exact same problem cited by @mimminito
    I tried your suggestions regarding #defineSA_DEBUG_MODE and they unfortunately didn't change anything, I'm still receiving the errors.
    I'm only using Billing, so Cloud was already unchecked to begin with.

    The project is one that I've used iOS Native successfully in the past, and have just begun work on updating.
    Unity 5.3.3
     
  41. kineticabstract

    kineticabstract

    Joined:
    Nov 15, 2014
    Posts:
    10
    I tried including all of the modules one at a time, to see which one was insisting on including these ISN functions. I found that if I _include_ the Game Center module in my build, everything runs fine. If I remove the Game Center module, it breaks again.
     
    skullthug likes this.
  42. skullthug

    skullthug

    Joined:
    Oct 16, 2011
    Posts:
    202
  43. darkinyourass

    darkinyourass

    Joined:
    Sep 24, 2015
    Posts:
    28
    Thanks for reporting about this problem, we fix it, contact me via email and I will send you the working package.

    Thanks for reporting about this problem, we fix it, contact me via email and I will send you the working package.
     
  44. SidarVasco

    SidarVasco

    Joined:
    Feb 9, 2015
    Posts:
    163
    Hi for my project I'm only interested in the iCloud feature. But I only see "Cloud kit" on the IOS native libs checklist.

    Im getting the following error in xcode:


    Code (csharp):
    1.  
    2.  
    3. Undefined symbols for architecture armv7:
    4.   "__ISN_LoadSaveData", referenced from:
    5.       _ISN_GameSaves__ISN_LoadSaveData_m1699023131 in Bulk_Assembly-CSharp_1.o
    6.       _ISN_GameSaves__ISN_LoadSaveData_m1699023131 in Bulk_Assembly-CSharp_1.o
    7.      (maybe you meant: _ISN_GameSaves__ISN_LoadSaveData_m1699023131)
    8.   "__ISN_ResolveConflictingSavedGames", referenced from:
    9.       _ISN_GameSaves__ISN_ResolveConflictingSavedGames_m345627302 in Bulk_Assembly-CSharp_1.o
    10.       _ISN_GameSaves__ISN_ResolveConflictingSavedGames_m345627302 in Bulk_Assembly-CSharp_1.o
    11.      (maybe you meant: _ISN_GameSaves__ISN_ResolveConflictingSavedGames_m345627302)
    12.   "__ISN_FetchSavedGames", referenced from:
    13.       _ISN_GameSaves__ISN_FetchSavedGames_m4211987068 in Bulk_Assembly-CSharp_1.o
    14.       _ISN_GameSaves_FetchSavedGames_m3893829684 in Bulk_Assembly-CSharp_1.o
    15.       _ISN_GameSaves__ISN_FetchSavedGames_m4211987068 in Bulk_Assembly-CSharp_1.o
    16.       _ISN_GameSaves_FetchSavedGames_m3893829684 in Bulk_Assembly-CSharp_1.o
    17.      (maybe you meant: _ISN_GameSaves__ISN_FetchSavedGames_m4211987068)
    18.   "__ISN_DeleteSavedGame", referenced from:
    19.       _ISN_GameSaves__ISN_DeleteSavedGame_m192224236 in Bulk_Assembly-CSharp_1.o
    20.       _ISN_GameSaves__ISN_DeleteSavedGame_m192224236 in Bulk_Assembly-CSharp_1.o
    21.      (maybe you meant: _ISN_GameSaves__ISN_DeleteSavedGame_m192224236)
    22.   "__ISN_SaveGame", referenced from:
    23.       _ISN_GameSaves__ISN_SaveGame_m3316807573 in Bulk_Assembly-CSharp_1.o
    24.       _ISN_GameSaves__ISN_SaveGame_m3316807573 in Bulk_Assembly-CSharp_1.o
    25.      (maybe you meant: _ISN_GameSaves__ISN_SaveGame_m3316807573)
    26. ld: symbol(s) not found for architecture armv7
    27. clang: error: linker command failed with exit code 1 (use -v to see invocation)
    28.  

    Im asssuming one of the packs is missing due to the fact I didn't select any plugins. Again I'm only interested in saving simple key values to icloud. I don't want Cloud Kit. Any suggestions?

    Edit:
    I notice those functions are in GameCenter.mm?
     
    Last edited: Apr 4, 2016
  45. mimminito

    mimminito

    Joined:
    Feb 10, 2010
    Posts:
    780
    @darkinyourass Hi, thanks for the fix via email, its working great now.

    I was wondering if you could add in a new feature to the plugin. We are creating GIF's and need to save them into the camera roll. We have extended your plugin to add in this support (added a new method into your camera class) and it works great. Basically, the ability to save a "file" into the photos directory.
     
  46. darkinyourass

    darkinyourass

    Joined:
    Sep 24, 2015
    Posts:
    28
    Contact me via email, and I will send you a fix.

    Contact me via email, and we will look in more detail at these additions.
     
  47. aer0ace

    aer0ace

    Joined:
    May 11, 2012
    Posts:
    1,513
    So I published my iOS app, with banner ads implemented with iOS Native, and now I don't know how to check ad statistics. I don't know how to sign up for an iAd Workbench account. Itunesconnect doesnt allow me to. How do I see ad performance?
     
  48. XCO

    XCO

    Joined:
    Nov 17, 2012
    Posts:
    380
    Hello I am using the latest IOS native with unity 5.1.4 and PlayMaker I am having some issues:

    - Billing not initializing
    - Score not being submitted to leader boards
    - Leader boards show up but than get stuck on the screen

    Any help would be great :)

    Maybe im just not doing something right, its been a while lol
     
    Last edited: Apr 11, 2016
  49. darkinyourass

    darkinyourass

    Joined:
    Sep 24, 2015
    Posts:
    28
    We tested the latest version of the plug-in, and did not find these errors. I think better to continue communication through the mail - support@stansassets.com , and I will try to help you as soon as possible.

    Honestly, this issue relates more to support iTunes. But you can try to follow this link - https://iad.apple.com
     
    XCO likes this.
  50. aer0ace

    aer0ace

    Joined:
    May 11, 2012
    Posts:
    1,513
    Apple is simply discontinuing the iAd network by June. I'll have to use another asset for mobile ads. I'm looking at one that does AdMob integration for iOS.