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

Prime31 Unity Plugins Officially Live! [CLOSED]

Discussion in 'iOS and tvOS' started by prime31, Aug 27, 2010.

Thread Status:
Not open for further replies.
  1. ovakin

    ovakin

    Joined:
    Dec 18, 2011
    Posts:
    37
    hi there,
    I've got the Mobclix plugin with Admob support, I followed the doc on your website and the video, created a new project, import the package, added the mobclix app ID and generated manifest file.
    But I can't get ads to display, I don't know what the problem is. I'm using Unity3D 3.5.0.f5 on Window 7 64 bit. Testing on the Kindle Fire.
    I created an onscreen text to display value of MobclixAndroid.isFullScreenAdReady(); , it's "false".

    edit: oops, sorry I didn't notice this is the iOS forum, I will post this question in the Android forum.
     
    Last edited: Apr 11, 2012
  2. maddymanu

    maddymanu

    Joined:
    Apr 9, 2012
    Posts:
    12
    hey prime31,

    I'm using the Game Center Turn Based Multiplayer plugin.
    I can't figure out how to end the game when its NOT the current players turn and he quits. Could you kindly help me with it?
    Thanks!
     
  3. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @maddy, only the current player can end a match. A player who is not the current player can quit by calling participantQuitOutOfTurnWithOutcome
     
  4. maddymanu

    maddymanu

    Joined:
    Apr 9, 2012
    Posts:
    12
    @prime31,

    Thanks for the quick reply!
    Anyways, participantQuitOutOfTurnWithOutcome isn't seem to be working properly.
    Can you tell me how participantQuitOutOfTurnFinishedEvent is to be implemented along with it.?
     
  5. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @maddy, it is just a standard event like any other .NET/Mono event. You listen to it with the "+=" operator. See the demo scene for examples.
     
  6. maddymanu

    maddymanu

    Joined:
    Apr 9, 2012
    Posts:
    12
    @prime31,

    Again Thanks a lot.....but still . (Im such a noob)
    Anyways, i've tried it and there are no errors....but still if the not active player quits the game, the current player gets NO notification using this method.

    Is it because it is wrongly place?...i've placed it in the start function.

    here's my code :

    GameCenterTurnBasedManager.participantQuitOutOfTurnFinishedEvent += () =>
    {


    Debug.Log("QUIT OUT OF TURN SUCCESSFUL");

    };


    and the calling function :

    GameCenterTurnBasedBinding.participantQuitOutOfTurnWithOutcome(GKTurnBasedMatchOutcome.Lost);
     
  7. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @maddy, if you stick the *EventListener prefab in any of your scenes with multiplayer and watch the logs you will see every event that gets fired in there.
     
  8. maddymanu

    maddymanu

    Joined:
    Apr 9, 2012
    Posts:
    12
    @prime31..

    Thanks again.....are you talking about the the GameCenterTurnBasedEventListener Class OR the GameCenterEventListener prefab that came with the Game Center plugin?
     
  9. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @maddy, while debugging there is no reason not to have both in there.
     
  10. yuriythebest

    yuriythebest

    Joined:
    Nov 21, 2009
    Posts:
    1,121
    Hi! New question- after upgrading, this code seems to no longer be valid:

    Code (csharp):
    1. StoreKitManager.purchaseSuccessful += purchaseSuccessful;
    2. StoreKitManager.purchaseCancelled += purchaseCancelled;
    3. StoreKitManager.purchaseFailed += purchaseFailed;
    4.    
    5. StoreKitBinding.requestProductData( someInteger);
    please forgive me noobishness- is there an example somewhere? The StoreKitGUIManagerCS script doesn't seem to have em at all

    EDIT: Hey wait! It does have StoreKitBinding.requestProductData but doesn't use the previous stuff!! sorcery!!
     
    Last edited: Apr 11, 2012
  11. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @yuri, the included demo scene has examples of every method and event. The docs (http://prime31.com/unity/docs) have a list of every available method and event. Give them a look.
     
  12. yuriythebest

    yuriythebest

    Joined:
    Nov 21, 2009
    Posts:
    1,121
    Thanks!! (indeed I should have checked there sooner, forgive me)

    and one more question! :)

    How do I disable the "____ successfully integrated" notifications- I have to click through 5-6 of them and it's annoying
     
  13. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @yuri, if you install Growl the scripts will use that for uninstrusive notifications. Otherwise just use the Prime31 menu item to disable them.
     
  14. devil1121

    devil1121

    Joined:
    May 10, 2011
    Posts:
    45
    @Prime31 HI, i have a little issue with the StoreKit integration. I tested my In-Apps purchase on a test project and everything worked fine. But now i just integrated the plugin to my project and it works but the thing is it takes about 1 minute before the confirmation box appear. I was wondering what may be the cause of this huge delay.

    Thanks
     
  15. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @devil, you will need to open a bug report with Apple about that. From the time a purchase is started until the time the event fires it is 100% in Apple's code and on their servers.
     
  16. samshosho

    samshosho

    Joined:
    Apr 12, 2010
    Posts:
    370
    Hi Prime31

    I have added the new method that calls all product ids in one string array call, then called

    Code (csharp):
    1. function Start () {
    2.         var productIdentifiers: String[] = [ "XXX.XXXXXXX.XXXXX01", "XXX.XXXXXXX.XXXXX02" ];
    3.     StoreKitBinding.requestProductData( productIdentifiers );
    4. }
    However, this is what i keep getting in Xcode,,,

    Then if i click on to purchase one of the two products, this is what i get in Xcode...

     
  17. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @sam, you can't buy a product that Apple hasn't returned. Your log is showing that no products were received.
     
  18. Ben-BearFish

    Ben-BearFish

    Joined:
    Sep 6, 2011
    Posts:
    1,204
    Thanks for the info Prime.
    Also, does your Social Networking Plugin have ability to add a Facebook Like/Share button?
     
  19. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @absurb, the entire Graph API is exposed.
     
  20. samshosho

    samshosho

    Joined:
    Apr 12, 2010
    Posts:
    370
    Prime31, come on man, i understand that very well, that's what it says fine, but then what am i suppose to do so Apple will return the product ,, did i construct the method and called it correctly ? if yes, then why is Apple not returning it , or am i missing something else that need to be called ?
    Unless it's just Apple's problem as usual with not working well in a Sandbox environment ,, then i am all set and i can upload my binary ?
     
  21. Ben-BearFish

    Ben-BearFish

    Joined:
    Sep 6, 2011
    Posts:
    1,204
    Ok, thanks. When you say it is exposed, do you mean we implement native Graph API calls or do you have an interface to work with that as well?
     
  22. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @sam, assuming your product Id's are correct than you did correctly call the method to request product data. I can't provide any more information for you than what Apple provides via their API. When you send off a product data request they return a list of valid product and a list of invalid product Id's. We return them directly to you. If you feel this is occurring in error you need to open a bug report with Apple. We have no visibility as to what happens on their servers.


    @absurd, calling Graph API methods is as simple as passing in the required parameters and graph path to our graphRequest method. It will handle the access token, marshaling the request, fetching the response and decoding the JSON for you.
     
  23. spartan

    spartan

    Joined:
    Mar 10, 2010
    Posts:
    174
    @prime31 iCloud plugin from the asset store is not recognizing jailbroken device and every time I open the app, the plugin has not saved the values on PlayerPrefs. I'm using P31Prefs.
    PS: Do you provide the plugin source code like on your other plugins? Because on the asset store I only get the .a file, and I can't fix this by my self because I don't have the Xcode code.

    Thanks
     
  24. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @spartan, jailbroken devices do not work with P31Prefs (NSUbiquitousKeyValueStore). This is a known issue and only affects jailbroken devices that have installed a particular package that allows them to run cracked/stolen apps. There is no fix. iCloud's NSUbiquitousKeyValueStore cannot work with devices that have that package installed. There is a bit of a hack in there that checks for jailbroken devices and fires the entitlementsMissingEvent when it detects the issue but it is not 100% by any means. Source code is included with most of our iOS plugins except for those that are cross platform (iOS and Mac) due to the extra massive complexity in there.
     
  25. samshosho

    samshosho

    Joined:
    Apr 12, 2010
    Posts:
    370
    Prime31 , thank you. I fully understand all that.
    I just wanted to make sure that it's not something related to coding, since the new update of the plugin and got a bit mixed up with having to call all product ids in one string array. So i just wanted to make sure, there is no extra methods that need to be called before actually calling the method to place the order.

    As to Apple, i know you have no control, thanks for making that clear ;)

    Even before i updated your plugin, every now and then, i did get that product ids are not correct, when they are 100% correct, just what you would expect from a shaky sandbox environment.

    Thanks for your time...
     
  26. wilfred

    wilfred

    Joined:
    Nov 14, 2011
    Posts:
    17
    Hi, I just got the error "getTapPoints cannot be called until response from the server has been received" when I using tapjoy plugins.
    I had called TapjoyBinding.init before call TapjoyBinding.getTapPoints(), do you know what's the problem?

    Wilfred
     
  27. maddymanu

    maddymanu

    Joined:
    Apr 9, 2012
    Posts:
    12
    Hey prime31,

    Yesterday i bought the Social Network unity plugin and i get an error in the sample scenes.

    The error is as follows:
    FacebookManager does not contain a definition for 'loginSucceededEvent'.
    Infact, there are loads of errors.

    What should i do?
     
    Last edited: Apr 12, 2012
  28. samshosho

    samshosho

    Joined:
    Apr 12, 2010
    Posts:
    370
    Another Questions for Prime31...

    this method used to return the product identifier, so i used to compare the returned product identifier with the one that's being purchased before actually confirming the purchase and giving the user his item/s.
    However now i see that the method is returning two things, product identifier and a receipt...

    Was it always like that ? or is it actually different now, thus i can't compare the return with the actual product identifier that's being purchased ?
    Please clarify.

    Here is a code snippet with what i used to do before with the old method.

    Code (csharp):
    1. var OriginalproductIdentifier: String;
    2. function Update () {
    3.        OnBuyProduct01Touch {
    4.                 OriginalproductIdentifier = XXX.XXXXXXXX.XXXX01
    5.        }
    6. }
    7. function IsSuccessful( ReturnedproductIdentifier ) {
    8.     if (OriginalproductIdentifier == ReturnedproductIdentifier) {
    9.                 //GiveUserHisPurchase
    10.         }
    11. }
    Should i still include the if condition in the IsSuccessful function ? Or it does not work that way anymore, since the returned value has more information other than the productidentifier ?
     
  29. master_first

    master_first

    Joined:
    Apr 4, 2012
    Posts:
    4
    Hi Prime31,

    I'm a nooby. (_ _)''

    I just bought "Unity iOS Social Networking Plugin" then follow your doc and video in http://prime31.com/unity/docs/#socialDoc. Build and run "SocialNetworkingtestScene" but I got some error.
    Now, I don't know where to start. (~ ~;

    Environment: OS X 10.7.3, Unity Basic 3.5.0f5, XCode 4.3.2

    This is some error in XCode. Please guide me how to fix it. Many thanks.
    Code (csharp):
    1. ld: warning: directory not found for option '-L"/Users/master_first/workspace/unity/TestPrime31/iOS"'
    2. ld: warning: directory not found for option '-L"/Users/master_first/workspace/unity/TestPrime31/iOS/Libraries"'
    3. Undefined symbols for architecture i386:
    4.   "DecompressDXT1(int, int, int, unsigned long const*, unsigned long*)", referenced from:
    5.       UnpackBlock(void*, unsigned long, unsigned long, unsigned long*) in libiPhone-lib.a(WiiTextureCompression.o)
    6.   "_FMOD_OggVorbis_Malloc", referenced from:
    7.       __FMOD_vorbis_block_alloc in libiPhone-lib.a(block.o)
    8.       _FMOD_vorbis_synthesis_init in libiPhone-lib.a(block.o)
    9.       _FMOD_vorbis_staticbook_unpack in libiPhone-lib.a(codebook.o)
    10.       _FMOD_ogg_sync_buffer in libiPhone-lib.a(framing.o)
    11.       _FMOD_ogg_stream_init in libiPhone-lib.a(framing.o)
    12.       _FMOD_mdct_init in libiPhone-lib.a(mdct.o)
    13.       _FMOD_res0_look in libiPhone-lib.a(res0.o)
    14.       ...
    15.   "_FMOD_OggVorbis_Free", referenced from:
    16.       __FMOD_vorbis_block_ripcord in libiPhone-lib.a(block.o)
    17.       _FMOD_vorbis_dsp_clear in libiPhone-lib.a(block.o)
    18.       _FMOD_vorbis_block_clear in libiPhone-lib.a(block.o)
    19.       _FMOD_floor1_free_look in libiPhone-lib.a(floor1.o)
    20.       _FMOD_floor1_free_info in libiPhone-lib.a(floor1.o)
    21.       _FMOD_ogg_sync_clear in libiPhone-lib.a(framing.o)
    22.       _FMOD_ogg_sync_destroy in libiPhone-lib.a(framing.o)
    23.       ...
    24.   "_FMOD_OggVorbis_ReAlloc", referenced from:
    25.       __FMOD_vorbis_block_ripcord in libiPhone-lib.a(block.o)
    26.       _FMOD_ogg_sync_buffer in libiPhone-lib.a(framing.o)
    27.       _FMOD_ogg_stream_pagein in libiPhone-lib.a(framing.o)
    28.       __fetch_headers in libiPhone-lib.a(vorbisfile.o)
    29.       __bisect_forward_serialno in libiPhone-lib.a(vorbisfile.o)
    30.   "_FMOD_OggVorbis_Calloc", referenced from:
    31.       _FMOD_vorbis_synthesis_init in libiPhone-lib.a(block.o)
    32.       _FMOD_floor1_look in libiPhone-lib.a(floor1.o)
    33.       _FMOD_floor1_unpack in libiPhone-lib.a(floor1.o)
    34.       _FMOD_vorbis_synthesis_headerin in libiPhone-lib.a(info.o)
    35.       _FMOD_vorbis_info_init in libiPhone-lib.a(info.o)
    36.       _FMOD_mapping0_unpack in libiPhone-lib.a(mapping0.o)
    37.       _FMOD_res0_look in libiPhone-lib.a(res0.o)
    38.       ...
    39. ld: symbol(s) not found for architecture i386
    40. clang: error: linker command failed with exit code 1 (use -v to see invocation)
     
  30. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @wilfred, after calling init it takes some time for the TJ library to initialize. You can either just call init at app launch and wait a bit to call any other methods or wait for the featuredAppDidLoad/Fail event to fire which is an indicator the library is ready for use.


    @sam, the StoreKitTransaction class contains the product identifier. Open the file to see which fields it offers.


    @master, that log appears to be building for i386 platform. Plugins are only supported on an actual device (ARM platform).
     
  31. samshosho

    samshosho

    Joined:
    Apr 12, 2010
    Posts:
    370
    okay, then it should be called with the parameter transaction.productIdentifier, to get only that part, then it can be compared.

    Thanks,
     
  32. renman3000

    renman3000

    Joined:
    Nov 7, 2011
    Posts:
    6,697
    Just getting started with this product and am wondering.
    In order to test for the iOS, do I need to build on an iOS? Can I do testing from my desktop?

    Also, in order to get it running could I simply create the FacebookBinding.cs, install a button function, attach that to the button object, then on button pressed, login, check connection etc? Upon each of those clearing post message etc?

    Thanks.
     
  33. maddymanu

    maddymanu

    Joined:
    Apr 9, 2012
    Posts:
    12
    Hey prime31,

    Yesterday i bought the Social Network unity plugin and i get an error in the sample scenes.

    The error is as follows:
    FacebookManager does not contain a definition for 'loginSucceededEvent'.
    Infact, there are loads of errors.

    What should i do?
     
  34. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @renman, plugins are native code and will only run on an actual device. See the included demo scene for examples.


    @maddy, set your Unity build settings to iOS.
     
  35. renman3000

    renman3000

    Joined:
    Nov 7, 2011
    Posts:
    6,697
    ok, and am I right to assume I can just pop in a button type function, (onTouch up) to the object, and that can fire the whole process?
     
  36. maddymanu

    maddymanu

    Joined:
    Apr 9, 2012
    Posts:
    12
    thanks that worked!
     
  37. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @renman, you can't just willy nilly call a whole pile of functions in a row. Every action takes time (login can literally take minutes) so you need to listen to the proper events so that you know when things completed.
     
  38. renman3000

    renman3000

    Joined:
    Nov 7, 2011
    Posts:
    6,697
    ok. so this is where your listeners and managers videos come into play?
     
  39. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @renman, correct. Be sure to play with the demo scene. It has examples of every event and most of the methods.
     
  40. renman3000

    renman3000

    Joined:
    Nov 7, 2011
    Posts:
    6,697
    Ok. Thank you.
     
  41. samshosho

    samshosho

    Joined:
    Apr 12, 2010
    Posts:
    370
    Hey Prime31,

    One more concern, i finally got apple to respond back with the list of products , sent in the requestproducts method.
    So far so good, but then when i actually try to make the purchase, this is what i get ...

    And it just stays in there, for ever!

    No response, not even purchase failed, or cancelled or anything,,, and i do have the StoreKitEvenetListener and StoreKitManager prefabs in the scene ,, any idea ?
     
  42. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @sam, once the purchase starts it is 100% in Apples hands. You will need to open a bug report with them if there are any issues with that portion of a purchase.
     
  43. maddymanu

    maddymanu

    Joined:
    Apr 9, 2012
    Posts:
    12
    Hey prime31,

    I keep getting this error when using the Social Network Plugin to integrate Facebook :

    The user hasn't authorized the application to perform this action (OAuthException).

    Heres the code...just in case you require it:

    using UnityEngine;
    using System.Collections;

    public class FacebookClickListener : MonoBehaviour {

    void Start () {

    FacebookBinding.init( "424396640907029" );


    }

    void completionHandler( string error, object result ) {
    if( error != null )
    Debug.LogError( error );
    else
    ResultLogger.logObject( result );
    }




    void OnClick() {

    bool isLoggedIn = FacebookBinding.isSessionValid();

    var token = FacebookBinding.getAccessToken();
    Debug.Log( "access token: " + token );


    if(!isLoggedIn) {

    FacebookBinding.login();

    }
    else
    {

    Facebook.instance.postMessageWithLink("I just won on Tic Tac Toe!!!!!" , "www.youtube.com" , "GAmer" , completionHandler);
    }

    }
    }
     
  44. Alessaint

    Alessaint

    Joined:
    Mar 21, 2011
    Posts:
    43
    Hi Prime,

    I've got a project where I'm using several of your IOS plugins. It used to be IOS only (and it worked just fine) - then, for some time, I have worked on android version of the project on PC. Now I moved the project back to Mac to build an updated IOS version.

    When I (with Xcode closed) try to do Build, it seems that PostprocessBuildPlayer is not processed at all and so all the IOS plugins throw errors when I open the project in Xcode. Do you have any idea what might have gone wrong?

    Thanks
     
  45. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @maddy, that error is pretty clearly stating that you have not requested a required permission and then performed an action that needs it. Consult Facebooks documentation for which permissions are required for each action.


    @alessaint, switching back and forth between Mac and Windows will destroy file permissions. I you delete the build system files in the Editor folder and reimport any plugin to get a new copy of it that should fix the issue.
     
  46. Ben-BearFish

    Ben-BearFish

    Joined:
    Sep 6, 2011
    Posts:
    1,204
    Hey Prime,

    We bought your GameCenter plugin and Mobclix with Admob Support plugin from your website using a credit card and because the plugins don't show up on the asset store we were unsure of how we go about updating your plugins when they need to be. Currently, we are having problems with xCode linking because the Mobclix plugin is out of date, so we were hoping for a solution for that.
     
  47. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @Absurd, here is a snippet of text from your receipt email that might point you in the right direction: "IMPORTANT: Please keep this email for future reference. The link will be valid for all future updates so please keep a copy of this email handy."
     
  48. maddymanu

    maddymanu

    Joined:
    Apr 9, 2012
    Posts:
    12
    Hey prime31,

    I was just wondering when the Game center plugins will come out for the Mac OS.
    It would be of great help as Mountain Lion is coming out soon :)
     
  49. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @maddy, Mountain Lion is still a few months away. Once it gets closer to release we will have it available. ML is still in active development so having to chase betas with releases isn't much fun so when things solidify we will release it.
     
  50. giza

    giza

    Joined:
    May 4, 2008
    Posts:
    69
    First off thanks very much for an awesome plugin! I've tested it with all the MoPub ad networks and it works brilliantly with all of them except one: AdMob. I've integrated the "newest" AdMob SDK MPGoogleAdMobAdapter into the editor as per your API docs instructions. However, I get the following xCode error:

    Code (csharp):
    1. Undefined symbols for architecture armv7:
    2.   "_OBJC_CLASS_$_MFMessageComposeViewController", referenced from:
    3.       objc-class-ref in libGoogleAdMobAds.a(GADOpener.o)
    4.   "_OBJC_CLASS_$_MFMailComposeViewController", referenced from:
    5.       objc-class-ref in libGoogleAdMobAds.a(GADOpener.o)
    6. ld: symbol(s) not found for architecture armv7
    7. clang: error: linker command failed with exit code 1 (use -v to see invocation)
    The SDK is version 5.0.8 dated 23 November 2011 and the adapter is dated 5/1/11. I also get the same error when I set the app to armv6 exclusively. What might be causing this issue?
     
Thread Status:
Not open for further replies.