Search Unity

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. xavierwielemans

    xavierwielemans

    Joined:
    Mar 18, 2013
    Posts:
    1
    Hello,

    I'm a free-lance multimedia developer, and I'm currently working on a museal augmented-reality application using Unity on iPad.

    I have bought your iOS Etcetera Two plugin to be able to play a movie in my Unity iPad app, without needing to buy Unity Pro + iOS Pro, which I can't really afford at this point.

    I have been struggling for hours and hours on the following issue: when I build and run your test scene included in the iOS Etcetera Two plugin, and click the "play movie" button on my iPad screen, everything works fine and I see Popeye happily walking and singing...

    Trouble starts when I try to play my own local video file instead of the remote video url included in the test scene.

    I have simply adapted the test button as follows:

    Code (csharp):
    1.    
    2. if( GUI.Button( new Rect( xPos, yPos+=heightPlus, width, height ), "Play test" ) )
    3.             {
    4.                 string url = Application.dataPath + "/Raw/" + "test.mp4";
    5.                 Debug.Log ("Playing " + url);
    6.                 EtceteraTwoBinding.playMovie( url, true, true, true );
    7.             }
    8.  
    When I click the button, here is what appears in xCode log:

    If I add a symbol breakpoint

    Code (csharp):
    1.     -[NSObject(NSObject) doesNotRecognizeSelector:]
    in my xCode project, it points me when I click the button at the following line:

    Code (csharp):
    1.     moviePlayer = [[P31MoviePlayerViewController alloc] initWithVideoFilePath:url];
    2.  
    inside the "playMovieAtUrl" method of EtceteraTwoManager.mm

    If I print the url arg to the call to initWithVideoFilePath, it shows:

    Which seems quite all right.

    I have done the following tests and checks before writing this message:
    - check with iExplorer that the "test.mp4" file was indeed present in the ConcocterVideoTest.app/Data/Raw/ folder - it is and I can preview it correctly from iExplorer
    - check that the video file format is ok and readable by the iPad. It is indeed - when I sync it with iTunes and open "videos" on my iPad, I see it and it plays perfectly.
    - try with other video files (mainly the sample videos found on this quicktime support web page: http://support.apple.com/kb/ht1425)
    - try several access paths for my video file, based on what I read on forums, etc.

    Code (csharp):
    1.             string url = Application.dataPath + "/Raw/test.mp4";
    2.             string url = "file://" + Application.dataPath + "/Raw/test.mp4";
    3.             string url = "Data/Raw/test.mp4";
    4.             string url = "Raw/test.mp4";
    5.             string url = "test.mp4";
    6.  
    - drag&drop the "test.mp4" in my "Unity iPhone" xCode project (in the root folder, next to "Default.png" and "Icon.png" before running the test again (with url="test.mp4").

    In that latter case, the url arg of the call to initWithVideoFilePath is :

    Path to app bundle is identical, this time test.mp4 is indeed looked for at the root of the bundle. Iexplorer confirms that the file is there indeed, accessible and previewable.

    My setup:

    - MacBook Pro, Mac OS X v 10.7.5 (2.4 GHz Intel Core i5)
    - Unity basic v4.0.1f2, with basic iOS license
    - iPad4 3G, iOS v6.1.3 (10B329)
    - xCode v4.6.1 (4H512)

    I'm running out of options at this point, so I could really use some help...

    Thanks in advance, kind regards,

    Xavier
     
  2. sanjodev

    sanjodev

    Joined:
    May 29, 2012
    Posts:
    63
    Hi Prime31,

    I got a issue with GameCenterMultiplayerBinding.getAllConnectedPlayerIds(). I'm calling it when the GameCenterMultiplayerManager.findMatchFinished event triggers from a GameCenterMultiplayerBinding.findMatchProgrammaticallyWithMinMaxPlayers() call. I'm using 2 as both my minimum players and max players to find. The find match succeeds, but when I call getAllConnectedPlayerIds(), I get a list back, but it has a player id value of a empty string "", which is not a real id. I remember it used to work fine for me a couple months ago where I got valid Ids I believe, but now I'm working on GameCenter stuff again and it doesn't appear to be working correctly. I've upgraded to the latest Unity version as well as updating my Prime31 plugins as well, but still no luck in it giving me correctly values. On a side note, when it did work for me, maybe I was using the UI version of the findMatch function?
     
  3. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @sanjo, the method returns directly the currentMatch.playerIDs property. If you are getting a blank playerId it is most likely that the player has not been entered into the currentMatch yet
    .
     
  4. sanjodev

    sanjodev

    Joined:
    May 29, 2012
    Posts:
    63
    It seems to be populated correctly after waiting a few frames and player enters the match. Thanks for the info.
     
  5. raul82

    raul82

    Joined:
    Mar 27, 2013
    Posts:
    3
    hello Prime31,
    can you update Tapjoy SDK to last 9.0.3 version?
     
  6. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @raul, it is already in the works. Minor SDK changes you can also do yourself by just dropping the new SDK on top of the old.
     
  7. pretender

    pretender

    Joined:
    Mar 6, 2010
    Posts:
    865
    is it necessary to update to new version of old one is working (you introduced some changes, no manager object, and i do not want to update)
    admob plugin for android
     
  8. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @pretender, if all is working then it is not at all necessary to install the update unless the release notes mention something huge like AdMkb deprecating a feature for example.
     
  9. cjow

    cjow

    Joined:
    Feb 29, 2012
    Posts:
    132
    Has something changed with Twitter login recently? On some devices we've started getting the error:

    Code (csharp):
    1.  
    2. Login failed.
    3.  
    4. <?xml version="1.0"
    5. encoding="UTF-8"?>
    6. <hash>
    7.     <error>Required oauth_verifier
    8. parameter not provided</error>
    9.  
    10. <request>/oauth/access_token</request>
    11. </hash>
    12.  
    EDIT: Appears a lot of people are experiencing the same issue.
     
    Last edited: Apr 17, 2013
  10. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @cjow, Twitter changes how authentication works mean the latest update of the plugin.
     
  11. cjow

    cjow

    Joined:
    Feb 29, 2012
    Posts:
    132
    Kk, thanks for the update. The strange thing is that exactly the same build is working perfectly on other devices.
     
  12. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @cjow, Twitter often rolls out its changes in waves. It's possible those devices are just hitting the old auth methods.
     
  13. cjow

    cjow

    Joined:
    Feb 29, 2012
    Posts:
    132
    I see. Thanks for the info <3
     
  14. Ali-Be

    Ali-Be

    Joined:
    Aug 29, 2012
    Posts:
    11
    Hello Prime31,
    I believe, there is a bug in plugin GameCenter_2013-04-10. If You try to issue a score challenge and You put local player ID in the fourth parameter, the game crash.
    Something like this: GameCenterBinding.issueScoreChallenge(999,0,"MyLeaderboard", new string[] {"Player1", "Player2", GameCenterBinding.playerIdentifier()},"Beat This");
     
  15. Gigiwoo

    Gigiwoo

    Joined:
    Mar 16, 2011
    Posts:
    2,981
    Mike,

    Does Prime31 have a plugin for Flurry in the UNITY_WEBPLAYEr? I own the Prime31 Flurry iOS as well as your Google Analytics, Storekit, etcetera, etc... And, would like to have the same simple integration for the WEBPLAYER.

    If it's a super easy integration, I could do it myself, if someone has some suggestions. Or, if it's super easy, maybe you guys could develop a cheap integration (ex $10).

    Gigi.
     
  16. JonnyHilly

    JonnyHilly

    Joined:
    Sep 4, 2009
    Posts:
    749
    Just updated to the 4/24/2013 Social plugin, but now I get a weird compile error...
    (null): error: /Users/........./Assets/Editor/SocialNetworking/FBDialog.bundle: No such file or directory

    soln...
    just delete build folder and do a fresh build. OR from build settings window do a build and run, and replace
     
    Last edited: May 4, 2013
  17. Theformand

    Theformand

    Joined:
    Jan 2, 2010
    Posts:
    271
    [RETRACTED]: This seems to not have been a plugin issue, but rather strange behaviour on Apple's side. All of the sudden, the call to ask for a formatted price went through just fine. Still a bit ....troublesome, that the app just crashes if the price is not available, perhaps it has to do with being on the wrong app store (country-wise). I dont have enough knowledge about the deeper workings of xCode, or Storekit to try and figure out where the problem lies, sadly.

    Hi, Prime!

    I'm having a weird issue with Storekitproduct.formattedprice. Whenever I try setting the price on my UI elements representing an IAP, the app simply crashes without notice of what happened.

    I'm running two different versions of the same app. One Danish, and one English. The Danish is only available in the Danish app store, and the English in every other app store. In the english version, this happens everytime, I try reading the price on a Storekitproduct. Everything has been set up correctly with the correct product ID's, and I have confirmed that the StoreKit plugin has loaded all the IAP's I've set up in Itunes Connect. They're all there, but for some reason the app crashes when I try to look at the price. Anything like this ever happened before? I can't seem to find anything about this subject anywhere.

    Hope you're able to help, please let me know if more info is needed
     
    Last edited: May 10, 2013
  18. Ben-BearFish

    Ben-BearFish

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

    We downloaded you ChartBoost plugin, but we're at a loss of what to do after that. We setup our app with a ChartBoost account and added our AppID and appSignature into the init function in you ChartBoost test scene, but after that we're not sure what to do.

    On the ChartBoost website it says we need to download the SDK and if an app has a green "SDK" button next to the title, it indicates the game has been successfully integrated.

    Currently, we do not have a green SDK button. Does your plugin include the SDK and should it automatically integrate it for us in xCode, or do we need to manually integrate the SDK from the ChartBoost website into xCode?

    There doesn't seem to be any documentation regarding this.
     
  19. JonnyHilly

    JonnyHilly

    Joined:
    Sep 4, 2009
    Posts:
    749
    Just updated to latest iAd and Admob plugin. but how do I tell if iAds feature is working or not (in this country/on this device) ? (so I can try using Admob instead)
    I used to be able to check adapter .iAdsEnabled()
    but this seems to be gone.

    is there a new way to do this ? I can't see a way in the P31 docs.
    help appreciated. thx
     
  20. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @jonny, In the future please do not SPAM multiple support outlets. Your email was already answered. You should use the following event: adViewDidChange
     
  21. JonnyHilly

    JonnyHilly

    Joined:
    Sep 4, 2009
    Posts:
    749
    Thanks for the reply, and sorry for sending email also.
     
    Last edited: May 19, 2013
  22. ganesh-pingale

    ganesh-pingale

    Joined:
    Dec 19, 2012
    Posts:
    11
    I am working prime31 IAP for android and playhaven but when I integrate playhaven In app purchase. Game crash while buying coins. please give any solution.
     
  23. JChilton

    JChilton

    Joined:
    Jul 25, 2012
    Posts:
    21
    Has prime31 removed any references to ios UDID in Etcetera and SocialNetworking plugins?
     
  24. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @jchilton, you have the source code so why not just Command-F and search it ;) We have never had any UDID access in either of the two plugins at any point.
     
  25. mayur.bendale

    mayur.bendale

    Joined:
    Oct 3, 2012
    Posts:
    6
    hi prime31,

    I am using mobclix since last 3 to 4 month but not able to yet got add correctly working in Ipad. In iphone its properly working but in Ipad not. I am using ad size 468X60 for Ipad.

    Add for 468X60 display on screen but not properly some part of white background appear.Means add not showing properly in banner. Add left some righmost part of banner and display from half part of banner. Please see screenshot for your reference.
    Please tell me whats the issue???
     

    Attached Files:

    Last edited: May 22, 2013
  26. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @mayur, first off remove your App ID from your post immediately. That is your private information and should not be shared with anyone besides Mobclix themselves. Secondly, you'll need to open a bug report with Mobclix. They are responsible for all ad display.
     
  27. mayur.bendale

    mayur.bendale

    Joined:
    Oct 3, 2012
    Posts:
    6
    done. Sorry, i have already submit ticket there but they are not providing proper solution to me??? what to do???
     
  28. trickpirata

    trickpirata

    Joined:
    Jun 17, 2011
    Posts:
    12
    I am having some weird problems with FQL queries using the SOCIAL NETWORKING PLUGIN. Seems like the plugin is not stopping from executing the queries. Here's my code for the fql query:

    Code (csharp):
    1.     private void RequestUserLocation()
    2.     {
    3.         var dict = new Dictionary<string, object>();
    4.        
    5.         dict.Add( "q", "SELECT current_location FROM user WHERE uid = me()");
    6.        
    7.         Facebook.instance.graphRequest("fql", HTTPVerb.GET, dict, UserLocationComplete);
    8.        
    9.     }
    10.  
    11.  
    12.     void UserLocationComplete( string error, object result )
    13.     {
    14.         if( error != null )
    15.             Debug.LogError( error );
    16.         else
    17.         {
    18.             //Prime31.Utils.logObject("[BATTLE STATION] Received User Location" + result );
    19.             var ht = result as Hashtable;
    20.             if(ht.Contains("country"))
    21.             {
    22.                 Debug.Log(ht["country"].ToString());
    23.                 fb_location = ht["country"].ToString();
    24.             }
    25.         }
    26.     }
    The debug.log line seems to always log the query result meaning the method is still executing. Any ideas?
     
  29. Bryson

    Bryson

    Joined:
    Jul 10, 2012
    Posts:
    12
    Hi there Prime,

    A coworker is getting the following errors, and we're having some trouble tracking it down.

    StoreKitTransaction.cs exists in Assets > Plugins > StoreKit. We have tried removing Prime31.meta. We also tried deleting script assemblies, deleting P31RestKit.dll, and updating Prime31 tools (twice).

    One thing that's puzzling is that 'Assets > Plugins > Prime31' is an empty folder. Is this as it should be? It's like that on both our ends -- but my project runs, while my coworker gets those errors.


    Thanks for any insight you can provide!


    EDIT: We found the solution. Platform was set to PC rather than iOS -- oops! I should have caught that right away. Hope this helps someone!
     
    Last edited: May 23, 2013
  30. Bhoomi

    Bhoomi

    Joined:
    Sep 4, 2012
    Posts:
    2
    Hi Prime,

    I have an issue with files being references for the Social Plugin, I'm assuming it's an Xcode import problem, can you help me resolve this issue?

    I did everything that was mentioned at the bottom of the General section of the docs (http://prime31.com/unity/docs/#generalDoc) but still getting the same errors.

    Code (csharp):
    1. Undefined symbols for architecture armv7:
    2.   "__twitterShowOauthLoginDialog", referenced from:
    3.       RegisterMonoModules() in RegisterMonoModules.o
    4.   "__twitterPostStatusUpdateWithImage", referenced from:
    5.       RegisterMonoModules() in RegisterMonoModules.o
    6.   "__twitterLogout", referenced from:
    7.       RegisterMonoModules() in RegisterMonoModules.o
    8.   "__twitterIsTweetSheetSupported", referenced from:
    9.       RegisterMonoModules() in RegisterMonoModules.o
    10.   "__twitterIsLoggedIn", referenced from:
    11.       RegisterMonoModules() in RegisterMonoModules.o
    12.   "__twitterPostStatusUpdate", referenced from:
    13.       RegisterMonoModules() in RegisterMonoModules.o
    14.   "__twitterGetHomeTimeline", referenced from:
    15.       RegisterMonoModules() in RegisterMonoModules.o
    16.   "__facebookRestRequest", referenced from:
    17.       RegisterMonoModules() in RegisterMonoModules.o
    18.   "__facebookShowDialog", referenced from:
    19.       RegisterMonoModules() in RegisterMonoModules.o
    20.   "__facebookSetSessionLoginBehavior", referenced from:
    21.       RegisterMonoModules() in RegisterMonoModules.o
    22.   "__twitterLogin", referenced from:
    23.       RegisterMonoModules() in RegisterMonoModules.o
    24.   "__twitterInit", referenced from:
    25.       RegisterMonoModules() in RegisterMonoModules.o
    26.   "__twitterShowTweetComposer", referenced from:
    27.       RegisterMonoModules() in RegisterMonoModules.o
    28.   "__facebookShowFacebookComposer", referenced from:
    29.       RegisterMonoModules() in RegisterMonoModules.o
    30.   "__facebookReauthorizeWithPublishPermissions", referenced from:
    31.       RegisterMonoModules() in RegisterMonoModules.o
    32.   "__facebookGetFacebookAccessToken", referenced from:
    33.       RegisterMonoModules() in RegisterMonoModules.o
    34.   "__sharingShareItems", referenced from:
    35.       RegisterMonoModules() in RegisterMonoModules.o
    36.   "__facebookInit", referenced from:
    37.       RegisterMonoModules() in RegisterMonoModules.o
    38.   "__facebookReauthorizeWithReadPermissions", referenced from:
    39.       RegisterMonoModules() in RegisterMonoModules.o
    40.   "__facebookLogout", referenced from:
    41.       RegisterMonoModules() in RegisterMonoModules.o
    42.   "__facebookRenewCredentialsForAllFacebookAccounts", referenced from:
    43.       RegisterMonoModules() in RegisterMonoModules.o
    44.   "__facebookLoginWithRequestedPermissions", referenced from:
    45.       RegisterMonoModules() in RegisterMonoModules.o
    46.   "__facebookGetSessionPermissions", referenced from:
    47.       RegisterMonoModules() in RegisterMonoModules.o
    48.   "__facebookIsLoggedIn", referenced from:
    49.       RegisterMonoModules() in RegisterMonoModules.o
    50.   "__facebookEnableFrictionlessRequests", referenced from:
    51.       RegisterMonoModules() in RegisterMonoModules.o
    52.   "__facebookIsFacebookComposerSupported", referenced from:
    53.       RegisterMonoModules() in RegisterMonoModules.o
    54.   "__facebookLoginUsingDeprecatedAuthorizationFlowWithRequestedPermissions", referenced from:
    55.       RegisterMonoModules() in RegisterMonoModules.o
    56.   "__twitterPerformRequest", referenced from:
    57.       RegisterMonoModules() in RegisterMonoModules.o
    58.   "__facebookGraphRequest", referenced from:
    59.       RegisterMonoModules() in RegisterMonoModules.o
    60.   "__twitterLoggedInUsername", referenced from:
    61.       RegisterMonoModules() in RegisterMonoModules.o
    62.   "__facebookGetAppLaunchUrl", referenced from:
    63.       RegisterMonoModules() in RegisterMonoModules.o
    64.   "__facebookCanUserUseFacebookComposer", referenced from:
    65.       RegisterMonoModules() in RegisterMonoModules.o
    66.   "__twitterCanUserTweet", referenced from:
    67.       RegisterMonoModules() in RegisterMonoModules.o
    68. ld: symbol(s) not found for architecture armv7
    69. clang: error: linker command failed with exit code 1 (use -v to see invocation)
    70.  
     
  31. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
  32. Invent4

    Invent4

    Joined:
    Aug 20, 2012
    Posts:
    15
    Hi there,

    Using your plugins, thanks, they are being very helpful.

    But, perhaps I'm missing something, do you have a solution to export the game screen to a video with Android?
    (I mean a movie file MP4 or AVI, MOV)

    I'm working on this few days, but still didn't get a good solution.

    Any clues on this would be very appreciated.

    Cheers,

    A.B.
     
    Last edited: May 30, 2013
  33. PabloAM

    PabloAM

    Joined:
    Dec 25, 2012
    Posts:
    35
    Hello @Prime31,

    Do you have push-notification plugin for Android ?
     
  34. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @pablo, if all goes well the Google Cloud Messaging Plugin will be out next week.
     
  35. itjunkii

    itjunkii

    Joined:
    Dec 1, 2011
    Posts:
    35
    I have been scratching my head on for a few days on a new challenge I am hoping you could point me in the right direction on.

    I am using your GCTurnBasedGUIManager script as my intro to GameCenter to keep it simple. On first launch I see all my events come through and I can enter an Auto-Match and complete on both devices with a successful result from Game Center.

    To end a match I am using this code to successfully end a match with a result:

    GameCenterTurnBasedBinding.setMatchOutcomeForParticipant( GKTurnBasedMatchOutcome.Won, lastPlayerSettings["p2Id"] );
    GameCenterTurnBasedBinding.setMatchOutcomeForParticipant( GKTurnBasedMatchOutcome.Lost, lastPlayerSettings["p1Id"] );
    GameCenterTurnBasedBinding.endMatchInTurnWithMatchData( matchDataStringAsBytes(strFinal) );

    Problem is when I return to the exact same GCTurnBasedGUIManager scene I launched the match from and I press "Find Match" either to start or join nothing will happen. The log is giving me this feedback:

    ============================================
    2013-05-30 23:05:11.043 MiniGolf[950:907] checking for match. requested match: 00e2edcb-0bce-4073-a642-81101315cd41, compared to stored match: a8663f7d-aed7-4220-b9a8-59352ac3ec6c
    2013-05-30 23:05:11.045 MiniGolf[950:907] checking for match. requested match: 00e2edcb-0bce-4073-a642-81101315cd41, compared to stored match: c40476a4-48e2-4a64-bcc6-3ef5dce44c2c
    2013-05-30 23:05:11.046 MiniGolf[950:907] checking for match. requested match: 00e2edcb-0bce-4073-a642-81101315cd41, compared to stored match: 27e77a00-f2e7-4b43-82ad-dc5ffecbd9e1
    2013-05-30 23:05:11.047 MiniGolf[950:907] checking for match. requested match: 00e2edcb-0bce-4073-a642-81101315cd41, compared to stored match: 78d82d8b-5fbe-4fc0-bf0e-fd53e04943bd
    2013-05-30 23:05:11.048 MiniGolf[950:907] checking for match. requested match: 00e2edcb-0bce-4073-a642-81101315cd41, compared to stored match: 9adcdcda-0510-4ac2-913d-65544249aada
    2013-05-30 23:05:11.050 MiniGolf[950:907] checking for match. requested match: 00e2edcb-0bce-4073-a642-81101315cd41, compared to stored match: 974660aa-032d-4730-9854-216f541f52b1
    2013-05-30 23:05:11.051 MiniGolf[950:907] checking for match. requested match: 00e2edcb-0bce-4073-a642-81101315cd41, compared to stored match: a6c0dfce-1f2c-4f52-930b-b36ed7b56dec
    2013-05-30 23:05:11.055 MiniGolf[950:907] checking for match. requested match: 00e2edcb-0bce-4073-a642-81101315cd41, compared to stored match: db5c3dc8-9267-4c65-91db-a3dc69ef100c
    2013-05-30 23:05:11.058 MiniGolf[950:907] checking for match. requested match: 00e2edcb-0bce-4073-a642-81101315cd41, compared to stored match: ba9bd289-ac10-4ddc-a7ab-f7dc26f49ec8
    2013-05-30 23:05:11.060 MiniGolf[950:907] checking for match. requested match: 00e2edcb-0bce-4073-a642-81101315cd41, compared to stored match: c2545ea8-8199-414e-882a-12f73e2ad8a8
    2013-05-30 23:05:11.061 MiniGolf[950:907] checking for match. requested match: 00e2edcb-0bce-4073-a642-81101315cd41, compared to stored match: 37dd93e9-fc5a-46dd-b574-d47d000b87ec
    2013-05-30 23:05:11.063 MiniGolf[950:907] Could not find match with matchId: 00e2edcb-0bce-4073-a642-81101315cd41
    loaded match: 00e2edcb-0bce-4073-a642-81101315cd41. The match data will be automatically fetched for us.

    (Filename: /Applications/buildAgent/work/7535de4ca26c26ac/Runtime/ExportGenerated/iPhonePlayer-armv7/UnityEngineDebug.cpp Line: 54)

    loadMatchesDidFinishEvent
    (Filename: /Applications/buildAgent/work/7535de4ca26c26ac/Runtime/ExportGenerated/iPhonePlayer-armv7/UnityEngineDebug.cpp Line: 54)

    Then nothing happens - I never do see a handleMatchEndedEvent fire when ending the match and when I re-enter the first scene I do call loadMatches() to avoid the stale data issue.

    What am I missing? Ideally I want them to come to GC find game - play - come back play again.

    Tried

    void turnBasedMatchmakerViewControllerDidFindMatchEvent( GKTurnBasedMatch match )
    {
    Debug.Log( "turnBasedMatchmakerViewControllerDidFindMatchEvent: " + match );
    GameCenterTurnBasedBinding.changeCurrentMatch(match.matchId);
    }

    With no luck.

    I am relying on a successful loadMatchDataEvent to pick the level and load for the user - that is what is not getting fired hence nothing happens despite my loadMatches call on the binding.

    IF I kill the app come back I can enter that match and it is there and waiting if it was new and all is normal.

    Thank you!!!
     
  36. Cruz182

    Cruz182

    Joined:
    Apr 1, 2013
    Posts:
    2
    Using the admob plugin for ios, how do we change the ad position dinamically ?
     
  37. zmeinaz

    zmeinaz

    Joined:
    Jul 3, 2012
    Posts:
    27
    Hello prime31,

    I am using StoreKit and I am having a problem. In my game the user can do an in-app purchase from the main menu or from the pause menu in a level. I set up my main menu scene and level scene exactly like the demo scene (with a StoreKitGUIManager and StoreKitEventListener). Transactions on the main menu work flawlessly, however transactions in the level scene never call purchaseSuccessful(), I am using the same StoreKitEventListener in each scene, but it seems like the events handlers are being removed in the level scene.

    ***EDIT***
    Nevermind, I made a stupid mistake. My pause controller was disabling the StoreKitEventListener game object.
     
    Last edited: Jun 4, 2013
  38. MRCty

    MRCty

    Joined:
    May 24, 2012
    Posts:
    31
    Hello Prime31,
    I have some of your plug-in and I'm interesting now to StoreKit for iOS.

    Currently I use UnityScript to write code so can I use StoreKit calling its functions by UnityScript?

    Moreover, in your documentation notes I read:
    "If you intend to use Apple's hosted content for your in app purchases there are some important things to be aware of. ...etc etc"

    What do you mean?
    There are many ways to manage InAppPurchase ?

    thanks
    Marco
     
  39. trooper

    trooper

    Joined:
    Aug 21, 2009
    Posts:
    748
    If anyone is interested in adding a bit more customisation to generating AndroidManifest.xml, I've started some work on "deleting a node based on attributes". It just searches for all elements of a particular name then if they have the desired attribute names and values, it deletes them.

    Here's the code to remove elements of type activity with certain attributes
    Code (csharp):
    1.     <delete element="activity" android:name="com.unity3d.player.UnityPlayerProxyActivity" />
    2.     <delete element="activity" android:name="com.unity3d.player.UnityPlayerActivity" />
    3.     <delete element="activity" android:name="com.unity3d.player.UnityPlayerNativeActivity" />
    Code (csharp):
    1.  
    2. using UnityEngine;
    3. using UnityEditor;
    4. using System.Collections;
    5. using Prime31Editor;
    6. using System.Reflection;
    7. using System.Collections.Generic;
    8. using System.Xml;
    9. using System.IO;
    10.  
    11.  
    12. public class Prime31ManifestExtension {
    13.    
    14.     [UnityEditor.MenuItem ("prime[31]/Generate AndroidManifest.xml File (Enhanced)...", false, 32)]
    15.     private static void generateManifest ()
    16.     {
    17.        
    18.         ManifestGenerator.generateManifest (true, false);  
    19.        
    20.         postProcessManifest();
    21.        
    22.         EditorUtility.DisplayDialog ("Prime31 Message", "Merged and created a new AndroidManifest.xml file", "OK");
    23.            
    24.     }
    25.    
    26.     private static IEnumerable<string> getAllManifestFiles ()
    27.     {
    28.        
    29.         MethodInfo method = typeof(ManifestGenerator).GetMethod("getAllManifestFiles", BindingFlags.Static | BindingFlags.NonPublic);
    30.        
    31.         return (IEnumerable<string>) method.Invoke(null,null);
    32.        
    33.     }
    34.        
    35.     private static void postProcessManifest()
    36.     {
    37.        
    38.        
    39.        
    40.         XmlDocument main = new XmlDocument();
    41.        
    42.         main.Load(Path.Combine (Application.dataPath, "Plugins/Android/AndroidManifest.xml"));
    43.        
    44.         IEnumerable<string> manifests = getAllManifestFiles();
    45.        
    46.         // ************************************************
    47.         // DELETE NODES - START
    48.         // ************************************************
    49.        
    50.         List<XmlNode> deleteNodes = new List<XmlNode>();
    51.        
    52.        
    53.         foreach(string manifest in manifests)
    54.         {
    55.            
    56.             XmlDocument doc =  new XmlDocument();
    57.            
    58.             string xmlString = @"<?xml version=""1.0"" encoding=""utf-8""?>
    59.                                 <manifest
    60.                                     xmlns:android=""http://schemas.android.com/apk/res/android""
    61.                                     package=""com.unity3d.player""
    62.                                     android:installLocation=""preferExternal""
    63.                                     android:theme=""@android:style/Theme.NoTitleBar""
    64.                                     android:versionCode=""1""
    65.                                     android:versionName=""1.0"">";
    66.            
    67.             xmlString += File.ReadAllText(manifest);
    68.            
    69.             xmlString += "</manifest>";
    70.                                        
    71.            
    72.             doc.LoadXml(xmlString);
    73.            
    74.             foreach(XmlNode deleteNode in doc.SelectNodes(".//delete"))
    75.             {
    76.            
    77.                 if (deleteNode.Attributes["element"] != null)
    78.                 {
    79.                    
    80.                     foreach(XmlNode mainNode in main.SelectNodes(".//" + deleteNode.Attributes["element"].Value))
    81.                     {
    82.                    
    83.                    
    84.                         int attribCount = 0;
    85.                            
    86.                         foreach(XmlAttribute deleteAttribute in deleteNode.Attributes)
    87.                         {
    88.                        
    89.                             foreach(XmlAttribute mainAttribute in mainNode.Attributes)
    90.                             {
    91.                                
    92.                                 if (deleteAttribute.Name == mainAttribute.Name  deleteAttribute.Value == mainAttribute.Value)
    93.                                 {
    94.                                     attribCount ++;
    95.                                 }                      
    96.                                
    97.                             }
    98.                            
    99.                         }
    100.                        
    101.                         if (attribCount == (deleteNode.Attributes.Count-1))
    102.                         {
    103.                            
    104.                             deleteNodes.Add(mainNode);
    105.                            
    106.                         }
    107.                        
    108.                        
    109.                     }
    110.                
    111.            
    112.                 }          
    113.                
    114.             }
    115.            
    116.         }
    117.        
    118.        
    119.         foreach(XmlNode deleteNode in deleteNodes)
    120.         {
    121.             deleteNode.ParentNode.RemoveChild(deleteNode);
    122.         }
    123.        
    124.         // ************************************************
    125.         // DELETE NODES - END
    126.         // ************************************************
    127.        
    128.        
    129.    
    130.         main.Save(Path.Combine (Application.dataPath, "Plugins/Android/AndroidManifest.xml"));
    131.        
    132.                
    133.     }
    134.  
    135.  
    136. }
    137.  
     
  40. Anonymous3

    Anonymous3

    Joined:
    Jun 5, 2013
    Posts:
    7
    Hi,
    Bought your Etcetera Plugin for Android!!
    I have a very weird issue w.r.to single/double field prompt. When i open a single/double field prompt in my app, the scene in the background resizes (shrinks when the keyboard shows up so that no part of the scene is obscured by keyboard). But the demo etcetera prime 31 plugin does not resize the background scene. I have tried to mimic every setting in manifest file, but the problem still persists in my app. Will you be able to suggest any fixes? Thanks.
     
  41. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @anon, there is nothing at all special about the demo scene. You have its full source to peruse as well.
     
  42. gecko

    gecko

    Joined:
    Aug 10, 2006
    Posts:
    2,241
    We're using several Prime31 plugins in an AR iOS app. They've worked great for a couple of years, but now we've added LiveTexture (our previous method of taking a screenshot in the app broke in iOS6). And now I'm unable to do a successful build in xcode. My programmer says that he gets the same build failure and errors, but then he reimports the Prime31 plugins in Unity and rebuilds it, and he can do a build in xcode successfully. Unfortunately, I cannot. The errors are below.

    We're using the latest versions of LiveTexture, DeviceMotion, Etcetera, and CoreLocation in Unity 3.5.7 and xcode 4.6.

    Without reimporting the packages, I get none of the alerts at the end of the unity build saying that the plugin is working. After reimporting the plugin packages, I get those alerts for LiveTexture and DeviceMotion, but not for the other two.

    Any suggestions?

    Undefined symbols for architecture armv7:
    "__deviceMotionStart", referenced from:
    RegisterMonoModules() in RegisterMonoModules.o
    "__deviceMotionGetRawGyroData", referenced from:
    RegisterMonoModules() in RegisterMonoModules.o
    "__deviceMotionGetGravityAndAcceleration", referenced from:
    RegisterMonoModules() in RegisterMonoModules.o
    "__deviceMotionGetAttitude", referenced from:
    RegisterMonoModules() in RegisterMonoModules.o
    "__coreLocationStopUpdatingLocation", referenced from:
    RegisterMonoModules() in RegisterMonoModules.o
    "__coreLocationStopUpdatingHeading", referenced from:
    RegisterMonoModules() in RegisterMonoModules.o
    "__coreLocationStartUpdatingLocation", referenced from:
    RegisterMonoModules() in RegisterMonoModules.o
    "__deviceMotionSetReturnRawGyroData", referenced from:
    RegisterMonoModules() in RegisterMonoModules.o
    "__coreLocationStartUpdatingHeading", referenced from:
    RegisterMonoModules() in RegisterMonoModules.o
    "__coreLocationSetHeadingFilter", referenced from:
    RegisterMonoModules() in RegisterMonoModules.o
    "__deviceMotionSetInterval", referenced from:
    RegisterMonoModules() in RegisterMonoModules.o
    "__coreLocationSetDistanceFilter", referenced from:
    RegisterMonoModules() in RegisterMonoModules.o
    "__deviceMotionReset", referenced from:
    RegisterMonoModules() in RegisterMonoModules.o
    "__coreLocationIsCompassAvailable", referenced from:
    RegisterMonoModules() in RegisterMonoModules.o
    "__deviceMotionStop", referenced from:
    RegisterMonoModules() in RegisterMonoModules.o
    "__deviceMotionGetNormalizedQuarternion", referenced from:
    RegisterMonoModules() in RegisterMonoModules.o
    "__coreLocationGetTrueHeading", referenced from:
    RegisterMonoModules() in RegisterMonoModules.o
    "__coreLocationGetMagneticHeading", referenced from:
    RegisterMonoModules() in RegisterMonoModules.o
    ld: symbol(s) not found for architecture armv7
    clang: error: linker command failed with exit code 1 (use -v to see invocation)
     
  43. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
  44. laserlars

    laserlars

    Joined:
    Nov 17, 2011
    Posts:
    255
    I´m using game center turnbased plugin. When I invite friends or recent players (with the native game center modal view) i get an error output: <Error>: FTLoadGlyph failed: error 6

    The app does not crash, but when the first level start (right after the invite is sent) UIToolkit does not respond to touches. The buttons are pushable (shifts between up/down sprite, but does not execute the functions linked to them).

    It´s exactly the same scene as in singleplayer, which never bugs like that.

    Anyone had any issues like this ?
     
  45. MRCty

    MRCty

    Joined:
    May 24, 2012
    Posts:
    31
    @ prime31

    could you please give me an answer?
    thanks



    "Hello Prime31,
    I have some of your plug-in and I'm interesting now to StoreKit for iOS.

    Currently I use UnityScript to write code so can I use StoreKit calling its functions by UnityScript?

    Moreover, in your documentation notes I read:
    "If you intend to use Apple's hosted content for your in app purchases there are some important things to be aware of. ...etc etc"

    What do you mean?
    There are many ways to manage InAppPurchase ?"
     
  46. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @mrcty, if you do not know what Apples hosted content system is then you can ignore that. 99.9% of people will not be using it and it is just included so that 0.1% has access.
     
  47. vaclav_b

    vaclav_b

    Joined:
    Jun 7, 2013
    Posts:
    16
    MDotM plugin is not updated for UDID over a month after change. You should put a note in documentation about this (or remove the thing from sales until it's done).

    This prevented us from uploading our app yesterday...
     
  48. DARK_ETERNAL

    DARK_ETERNAL

    Joined:
    May 9, 2012
    Posts:
    41
    Greetings, Prime31

    I'm facing issues with Twitter oauth_verifier in iOS. It worked fine until some days ago. Android version does work, though.

    I tested it with my consumer and secret keys in your test scene, but it won't work anyway. Although I'll check my tokens, as thet put here https://dev.twitter.com/docs/auth/oauth/faq, they should'n expire. Are there any recently reported issues with the plugin? Something I'm missing? (Although that code hasn't actually changed)

    Thanks in advance.
     
  49. chillypacman

    chillypacman

    Joined:
    Oct 1, 2011
    Posts:
    71
    Hi There,

    I just bought the admob plugin for android, imported it to my unity project and tried to run it and it didn't work.

    I'm not sure how I would go about fixing this, I checked the jar file it's using for admob and it's a bit old (GoogleAdMobAdsSdk-6.0.1 vs GoogleAdMobAdsSdk-6.4.1 which is the new one).

    Any ideas how to fix or is this plugin just due for an update?

    Like I said, it just didn't work out of the box, though all the other prime31 plugins work fine...

    *Note I've been trying to get rid of mobclix but it keeps appearing in the output too..

    Here's the console oupuit:

     
    Last edited: Jun 9, 2013
  50. iossif

    iossif

    Joined:
    Mar 4, 2011
    Posts:
    332
    hello!

    just wanted to ask everyone who works with achievements in ios atm...

    i added the prime31 plugin to my project and it works fine - i also get positive reports on reportAchievementFinished... BUT the achievements do not show up. at first i thought that this is the apple server lag we all know by now. but now it is over 1 week where none of my achievements show up...

    is anyone else experiencing this insane lag at the moment?
     
Thread Status:
Not open for further replies.