Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Dismiss Notice

Prime31 Android Plugins Officially Live!

Discussion in 'Android' started by prime31, Jun 6, 2011.

  1. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @oriol, the plugin exposes graph and rest API end points. Anything else you can do yourself with the standard WWW class.
     
  2. crystani

    crystani

    Joined:
    Jul 29, 2011
    Posts:
    68
    Hi prime31,

    I am having troubles with angry users who loss their purchase. Thought this is related with your IAB plugin implementation at first, but now I suspect google's market system itself after reading this: http://code.google.com/p/marketbilling/issues/detail?id=14

    I don't know above issue is the reason for the terrible situation, but anyway It is not yet solved while it is accepted.

    1. For non-managed IABs like virtual currency, Does restore transaction method work for retrieving (possible) lost transactions?
    2. Is it OK to call RestoreTransactions Method after purchase? I mean, is it ok to call that method at anytime other than the app launches (Of course after receiving billingSupported message.)

    Thanks,
     
  3. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @crystani, 1. non-managed IAPs are not able to be restored in any way. 2. technically, you can call restoreTransactions anytime you want. There is no limitation as to when and how often it can be called.
     
  4. serioustommy

    serioustommy

    Joined:
    Jun 12, 2012
    Posts:
    126
    Hi Prime,

    I had issues with the google IAB some days ago where the success event isn't being triggered. It's come back again. Here's the full log:

    09-12 13:26:59.365: I/Prime31-BS(2494): handleCommand() action: com.android.vending.billing.GET_PURCHASE_INFORMATION
    09-12 13:26:59.370: D/Finsky(1225): [1338] MarketBillingService.getPreferredAccount: com.company.game: Account determined from library ownership.
    09-12 13:26:59.375: D/Finsky(1225): [1338] MarketBillingService.getPreferredAccount: com.company.game: Account determined from library ownership.
    09-12 13:26:59.380: D/SensorManager(2494): onAccuracyChanged :: accuracy = 1
    09-12 13:26:59.405: I/ALSAModule(1694): Initialized ALSA PLAYBACK device hifi
    09-12 13:26:59.575: I/SurfaceFlinger(1691): id=465 Removed IabActivity idx=5 Map Size=6
    09-12 13:26:59.575: I/SurfaceFlinger(1691): id=465 Removed IabActivity idx=-2 Map Size=6
    09-12 13:26:59.575: I/power(1850): *** release_dvfs_lock : lockType : 1
    09-12 13:26:59.575: D/PowerManagerService(1850): releaseDVFSLockLocked : all DVFS_MIN_LIMIT are released
    09-12 13:26:59.575: W/ActivityManager(1850): mDVFSLock.release()
    09-12 13:26:59.580: D/Finsky(1225): [1] MarketBillingService.sendResponseCode: Sending response RESULT_OK for request 4558584943295274326 to com.company.game.
    09-12 13:26:59.585: D/Finsky(1225): [1] PendingNotificationsService.setMarketAlarm: Setting alarm for account=serioustommy@gmail.com, duration=120000
    09-12 13:26:59.590: I/Prime31-BS(2494): handleCommand() action: com.android.vending.billing.RESPONSE_CODE
    09-12 13:26:59.590: I/Prime31-RS(2494): responseCodeReceived: RESULT_OK
    09-12 13:26:59.590: I/Prime31(2494): purchase was successfully sent to server
    09-12 13:26:59.620: I/Prime31-BS(2494): handleCommand() action: com.android.vending.billing.PURCHASE_STATE_CHANGED
    09-12 13:26:59.620: I/Prime31-BS(2494): total verified purchases: 0
    09-12 13:26:59.625: D/Finsky(1225): [1] MarketBillingService.sendResponseCode: Sending response RESULT_OK for request 2807066283831734020 to com.company.game.
    09-12 13:26:59.690: I/Prime31-BS(2494): handleCommand() action: com.android.vending.billing.RESPONSE_CODE
    09-12 13:26:59.690: I/Unity(2494): purchaseSignatureVerifiedEvent. signedData: {"nonce":-5870521854453335201,"orders":[{"notificationId":"android.test.purchased","orderId":"transactionId.android.test.purchased","packageName":"com.company.game","productId":"android.test.purchased","purchaseTime":1347452810347,"purchaseState":0}]}, signature:
    09-12 13:26:59.690: I/Unity(2494):
    09-12 13:26:59.690: I/Unity(2494): (Filename: ./Runtime/ExportGenerated/AndroidManaged/UnityEngineDebug.cpp Line: 43)
    09-12 13:26:59.730: I/Prime31(2494): Found pending transaction. Confirming now.
    09-12 13:26:59.730: I/Prime31-PT(2494): preparing to send PendingTransaction. total purchases: 0
    09-12 13:26:59.735: D/Finsky(1225): [1338] MarketBillingService.getPreferredAccount: com.company.game: Account determined from library ownership.
    09-12 13:26:59.735: D/dalvikvm(1850): GC_CONCURRENT freed 20280K, 63% free 21693K/57223K, paused 3ms+7ms
    09-12 13:26:59.740: D/Finsky(1225): [1338] MarketBillingService.getPreferredAccount: com.company.game: Account determined from library ownership.
    09-12 13:26:59.760: I/Prime31-PT(2494): notificationsWereConfirmed: true
    09-12 13:26:59.790: D/dalvikvm(1225): GC_CONCURRENT freed 372K, 9% free 13999K/15239K, paused 2ms+2ms
    09-12 13:26:59.905: D/PowerManagerService(1850): mIsLockZone = true
    09-12 13:26:59.925: E/Volley(1225): [1343] BasicNetwork.performRequest: Unexpected response code 400 for https://android.clients.google.com/vending/api/ApiRequest
    09-12 13:26:59.925: E/Finsky(1225): [1] NotifyingErrorListener.onErrorResponse: Server error on InAppPurchaseInformationRequest: com.android.volley.ServerError
    09-12 13:26:59.935: D/Finsky(1225): [1] MarketBillingService.sendResponseCode: Sending response RESULT_SERVICE_UNAVAILABLE for request 8500302068364374124 to com.company.game.
    09-12 13:26:59.955: I/Prime31-BS(2494): handleCommand() action: com.android.vending.billing.RESPONSE_CODE


    This is with the provided test scene with the listener prefab printing out each event. I can see that purchaseSignatureVerifiedEvent is being fired but there's no subsequent complete event. There are also a few errors in the last few lines which might be the cause? If that's the case does the fault lies with Google? However none of the cancel or fail events got fired either - shouldn't one of those be called?

    Would it be safe to use the purchaseSignatureVerifiedEvent instead of the complete event instead?
     
  5. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @serious, there is an error occurring on Google's servers (Server error on InAppPurchaseInformationRequest). You absolutely should not use the purchaseSignatureVerifiedEvent. Until the purchase completes the money is not yours. You will want to open a bug report with Google including this log so they can get their eyes on it.
     
  6. ridil

    ridil

    Joined:
    Apr 24, 2012
    Posts:
    31
    Hello,

    I need to make a version of my game with no internet or network permissions and I use several of the functions of the etcetera plugin currently. The problem is that Urban Airship requires internet permissions and if I remove it the application crashes on startup. Is there any way I can completely extract urban airship from the plugin while still being able to use the other functionality of the etcetera plugin?

    Thank you,
    Ridil
     
  7. serioustommy

    serioustommy

    Joined:
    Jun 12, 2012
    Posts:
    126
    Thanks Prime. Shouldn't it fire one of the cancel or fail event in that case? Currently the application is stuck waiting for any event to come back. Or is that google as well?
     
  8. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @ridil, if you remove the UA stuff from the Manifest.xml file then regenerate the manifest it should get you going.


    @serious, the purchase technically wasn't cancelled so Google won't send back a cancelled message in that case.
     
  9. ridil

    ridil

    Joined:
    Apr 24, 2012
    Posts:
    31
    Here's the issue I run into when I remove the Urban Airship stuff from the Manifest and rebuild then recompile. I believe the problem is that the EtceteraPlugin.jar tries to access the UrbanAirship.jar which requires those activities/intents/permissions in the manifest. If I delete the UrbanAirship.jar file then the app wont run because the EtceteraPlugin.jar crashes when it tries to access it. When I put it back I get the issue below from the manifest.



    - Ridil
     
  10. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @ridil, it looks like you left in the Application override. If you remove that UA won't ever initialize.
     
  11. serioustommy

    serioustommy

    Joined:
    Jun 12, 2012
    Posts:
    126
    I've enabled high detail logs this time and got:

    09-12 17:16:38.395: E/Volley(6209): [1671] BasicNetwork.performRequest: Unexpected response code 400 for https://android.clients.google.com/vending/api/ApiRequest
    09-12 17:16:38.395: E/Finsky(6209): [1] NotifyingErrorListener.onErrorResponse: Server error on InAppPurchaseInformationRequest: com.android.volley.ServerError
    09-12 17:16:38.400: D/Finsky(6209): [1] MarketBillingService.sendResponseCode: Sending response RESULT_SERVICE_UNAVAILABLE for request 4229556551798610734 to com.supersolid.penguin.
    09-12 17:16:38.415: I/Prime31-HD(6867): BillingReceiver.onReceive( android.app.ReceiverRestrictedContext@41a5c788, Intent { act=com.android.vending.billing.RESPONSE_CODE flg=0x10 cmp=xxxx (has extras) } )
    09-12 17:16:38.415: I/Prime31-HD(6867): BillingReceiver.checkResponseCode( android.app.ReceiverRestrictedContext@41a5c788, 4229556551798610734, 2 )
    09-12 17:16:38.420: I/Prime31-HD(6867): BillingService.handleCommand( Intent { act=com.android.vending.billing.RESPONSE_CODE cmp=xxxx (has extras) }, 10 )
    09-12 17:16:38.420: I/Prime31-BS(6867): handleCommand() action: com.android.vending.billing.RESPONSE_CODE
    09-12 17:16:38.420: D/Prime31-BS(6867): ConfirmNotifications: RESULT_SERVICE_UNAVAILABLE
    09-12 17:16:38.420: I/Prime31-HD(6867): ConfirmNotifications.responseCodeReceived( RESULT_SERVICE_UNAVAILABLE )


    It seems like there are some events that's not passed on to the client (for result_service_unavailable)? Should the fail event be called at this point?

    thanks for the help!
     
  12. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @serious, billing service availability should catch those but you are running into a full stop error on the Play servers. Did you open a bug report with Google? They are the only ones who can remedy that issue.
     
  13. serioustommy

    serioustommy

    Joined:
    Jun 12, 2012
    Posts:
    126
    After a while that error went away by itself. But then I'm still randomly getting the purchaseSucceededEvent not being called despite purchaseSignatureVerifiedEvent is called.

    I can't see anything wrong in the log either in these cases. When purchaseSucceededEvent is called it happens right after purchaseSignatureVerifiedEvent, then some internal RESULT_OK message getting printed after that. Same in both cases, just purchaseSucceededEvent missing.

    It happens rarely but it keeps coming up randomly and the only thing I can get a consistent result is to use purchaseSignatureVerifiedEvent. Could it be a race condition somewhere?

    By the way this is all done with just the "android.test.purchased" test id, and not with the real ones. Though it does happen with the real in-app-purchase id as well.

    Sorry to keep bringing this up!
     
    Last edited: Sep 12, 2012
  14. ridil

    ridil

    Joined:
    Apr 24, 2012
    Posts:
    31
    Okay, I've been trying for a good bit now to no avail at properly setting up the AndroidManifest.xml file to ignore urban airship while still allowing access to the ShowAlert portion of the Etcetera plugin. When I remove the <application>""</application> portion the app crashes. I just need to use the ShowAlert portion of the etcetera plugin and NOTHING else. UrbanAirship seems to be the main cause of my problems but I'm willing to accept any solutions. My app cannot have any network or internet permissions. How can I accomplish this? Do you have a clean Manifest I can use which has the necessary UA stuff stripped out properly? I'm sure I'm doing something wrong, I just don't know what.

    EDIT: On a further note, I have tried taking the default Unity AndroidManifest.xml <application> code and using that in place of the etcetera <application> code and it crashes as well:

    <application
    android:icon="@drawable/app_icon"
    android:label="@string/app_name"
    android:debuggable="true">
    <activity android:name="com.unity3d.player.UnityPlayerProxyActivity"
    android:label="@string/app_name"
    android:configChanges="keyboard|keyboardHidden|orientation">
    <intent-filter>
    <action android:name="android.intent.action.MAIN" />
    <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
    </activity>
    <activity android:name="com.unity3d.player.UnityPlayerActivity"
    android:label="@string/app_name"
    android:configChanges="keyboard|keyboardHidden|orientation">
    </activity>
    <activity android:name="com.unity3d.player.UnityPlayerNativeActivity"
    android:label="@string/app_name"
    android:configChanges="keyboard|keyboardHidden|orientation">
    <meta-data android:name="android.app.lib_name" android:value="unity" />
    </activity>
    <activity android:name="com.unity3d.player.VideoPlayer"
    android:label="@string/app_name"
    android:configChanges="keyboard|keyboardHidden|orientation">
    </activity>
    </application>

    Thank you,
    Ridil
     
    Last edited: Sep 12, 2012
  15. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @serious, there is no race condition present with signature verification and conformation. They occur at vastly different times. You can confirm this by looking at the log time stamps. Signature verification and purchase confirmation are two wholly different procedures and you should not consider a signature verification as a purchase because it is not a purchase. Did you report the bug to Google yet? If there servers are having issues you will not be able to confirm a purchase.

    @ridil, you failed to provide any sort of log so I can't say for sure what is happening.
     
  16. ridil

    ridil

    Joined:
    Apr 24, 2012
    Posts:
    31
    Here is the log that occurs when I run the app after removing the <application> block for com.prime31.EtceteraApplication and replace it with the default <application> block in the AndroidManifest.xml file from Unity (shown above):



    - Ridil
     
  17. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @ridil, your manifest changes definitely have issues and they arent at all related to the plugin in this case. You have a missing class error "com.unity3d.playerProxyActivity" which I am pretty sure doesn't exist at all in Unity or at least I have never seen them use a lower case letter for a class name anywhere.
     
  18. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @serious, apparently Google's servers are down for everyone. I took the wonderful opportunity to hack in a new callback to the IAB Plugin. Grab the latest update to get the fancy new event.
     
  19. Matkins

    Matkins

    Joined:
    Aug 24, 2009
    Posts:
    152
    Hey Prime,

    Got an issue with restoring purchases. First I'm calling IABAndroid.restoreTransactions(); on start but that doesn't seem to work. Then if the user tries to go through the purchase again the Play store pops up with "You have already purchased this item or the purchase is still pending", which is all good, but then instead of a fresh purchaseSucceededEvent callback it's always the purchaseFailedEvent callback. What are the possible causes of this? The app is live so I'm hoping to get to the bottom of it quick.

    Thanks for your support.
     
  20. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @matkins, what do you see in the logs? What makes you think restoreTransactions is failing? Is the failed event firing? Why are you calling restoreTransactions in start when it really only needs to be called once per install?
     
  21. Matkins

    Matkins

    Joined:
    Aug 24, 2009
    Posts:
    152
    You're right but i don't see how that could be causing the problem.

    Should I be waiting for the billingSupportedEvent callback with true before I try to call restoreTransactions?
     
  22. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @matkins, no calls are valid until billing supported fires with a true result. If false, the device cannot use IAP at all.
     
  23. Matkins

    Matkins

    Joined:
    Aug 24, 2009
    Posts:
    152
    Ok, thats where I went wrong.
    Just to clarify, is trying to purchase something that you already own a valid way of restoring a purchase on Android? Because if not then perhaps purchaseFailed is the correct response anyway.
     
  24. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @matkins, you cannot purchase something you already own. You may want to read through Googles docs to learn a bit how their system works.
     
  25. Matkins

    Matkins

    Joined:
    Aug 24, 2009
    Posts:
    152
    OK. I don't know why i expected it to be as simple as the iOS appstore. Sorry for bothering you with this.
     
  26. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @matkins, its Android! Nothing is ever simple in the land of Google! They pride themselves on slavishly making everything as cryptic and complicated as possible.
     
  27. Masashi-Wada

    Masashi-Wada

    Joined:
    Jul 6, 2010
    Posts:
    80
    Hi prime31,

    I have a problem, when using a facebook function and back key.
    When dialogs closed it by the touch of the back key after it called login() and showPostMessageDialog(), the action event did not arrive. After the Facebook method call, since my application waits until an action event arrives, the shift of processing is not detected.

    Can I detect what the dialog closed by the trigger of the back key?
    What is my best practice in this case?


    versions
    unity3.5.5f3 with SocialNetworkingAndroid_2012-09-10.unitypackage
     
  28. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @masashi, back button overrides can be detected in Unity. There is no native event from Facebook's SDK for that.
     
  29. ridil

    ridil

    Joined:
    Apr 24, 2012
    Posts:
    31
  30. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @ridil, no plans at this time. If there is ever enough demand we will reevaluate at that time.
     
  31. Masashi-Wada

    Masashi-Wada

    Joined:
    Jul 6, 2010
    Posts:
    80
    Hi prime31,

    As for it, Input.GetKeyDown() was not set to ON while the Facebook dialog could be seen.
    Is your recommendation that I extend Activity?

    However, when the view changed using the back key, I looked at action of OnApplicationFocus().
    I will test whether it is solvable using this method.

    thank you.
     
    Last edited: Sep 14, 2012
  32. s1m0n1stv4n

    s1m0n1stv4n

    Joined:
    Sep 14, 2012
    Posts:
    16
    hi akwok! I have exactly the same problem. have you come up with any solution for this meanwhile? thanks
     
  33. oriolmanya

    oriolmanya

    Joined:
    Jul 4, 2012
    Posts:
    50
    Hi Prime,

    Are you planning to create an AdWhirl Plugin?

    Maybe AdWhirl SDK works with AdMob Plugin?
     
  34. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @oriol, Android AdWhirl isnt possible to make in a way that doesnt required compiling it manually so we won't be making it.
     
  35. havchr

    havchr

    Joined:
    Jun 18, 2009
    Posts:
    75
    Social plugin , facebook.

    I have been sitting all day trying to post a score, but it just gives me false in the postScore callback, and does not update the score.
    It has been set to App Type , Native/Desktop
    category : game
    I have marked it as an android app , filled in key hash, package name , class name..

    in permissions auth token parameter is URI fragment ,
    authenticated referals = disabled.

    user friend permissions : user_games_activity , publish_actions

    when logging in ,
    var permissions = new string[] { "publish_actions", "user_games_activity" };

    I have called getAppAccessToken , it's not failing with "you have to get app access token".

    I am at loss. I have tried getting it to work the whole day.
    It works if I do it from facebook's graph explorer , I can save scores.

    Reading scores works perfectly fine.
     
  36. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @havchr, you didn't post the actual error you are seeing. You can also view extra info by tuning debugging on:

    Facebook.instance.debugRequests = true
     
  37. havchr

    havchr

    Joined:
    Jun 18, 2009
    Posts:
    75
    hm, here comes a rather long error log:...
    It seems something weird happens on the url call.


    * I am calling FacebookAccess.extendAccessToken();
    on my startup after I checked if I am logged in or not,
    * I am also calling Facebook.instance.getAppAccessToken
     
    Last edited: Sep 14, 2012
  38. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @havchr, replace "me" with the userId and it should clear things up.
     
  39. havchr

    havchr

    Joined:
    Jun 18, 2009
    Posts:
    75
    seems to be the same issues as : https://developers.facebook.com/bugs/461900043821056 , which is that a native app can't post
    scores directly, if I understood it correctly.

    Got it working by using id instead of "me" and changing from native app to web app.
     
    Last edited: Sep 14, 2012
  40. psycocrusher

    psycocrusher

    Joined:
    Jul 24, 2011
    Posts:
    71
    @Prime31

    Hi,

    i' am having a problem with the amazon inapp,

    HTML:
    void Start(){
    		
    		AmazonIAP.initiateItemDataRequest( new string[] { "item1", "item2", "item3" } );
    	}
    
    void OnEnable(){
    		
    		AmazonIAPManager.purchaseSuccessfulEvent += purchaseSuccessfulEvent;
    	}	
    	
    void OnDisable(){
    		
    		AmazonIAPManager.purchaseSuccessfulEvent -= purchaseSuccessfulEvent;
    	}		
                
            
    void Update(){
           
    	foreach (Touch touch in Input.touches) {     
    			
    		if(touch.phase == TouchPhase.Ended  guiTexture.HitTest(touch.position)){  
    								   	 
    				AmazonIAP.initiatePurchaseRequest( "item1" );
    				AmazonIAP.initiateGetUserIdRequest();
    			}   
    		}		 	 	 	 	 	 	
    	}
    
    
    void purchaseSuccessfulEvent( AmazonReceipt receipt ){
    		
    
    		}
    	}

    On the iOS inapp version we could specify a product ID in the purchasesuccessfulEvent(), what would the amazon counterpart be?

    Thank You
     
  41. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @psycocrusher, open the AmazonReceipt file and look at its members.
     
  42. psycocrusher

    psycocrusher

    Joined:
    Jul 24, 2011
    Posts:
    71
    @Prime31,

    Sorry to bother you again, i' am still learning scripting, the file looks like chinese to me.
    Could you give me a little sample of what it should look like?

    thanks
     
  43. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @psyco, I would suggest you watch the video tutorials on our website and run through Unity's tutorials as well. A field on a class is just about the most basic coding element that exists. If you look at the top of the file it lists all the fields:
     
  44. psycocrusher

    psycocrusher

    Joined:
    Jul 24, 2011
    Posts:
    71
    @Prime

    I am learning Javascript, C# is a little more complicated but i got it, thanks.
     
  45. serioustommy

    serioustommy

    Joined:
    Jun 12, 2012
    Posts:
    126
    Hi prime,

    I'm having a weird problem with the Android Facebook plugin. If I do:

    Facebook.instance.get("me", (error, obj) =>
    {
    Debug(error + " " + obj);
    });

    Then error is java.io.FileNotFoundException: https://graph.facebook.com/me, and obj is null.

    I've tried using Facebook.instance.graphRequest() instead, tried different graph API path but they all do the same. Also tried calling it a few seconds after calling init and it's the same.

    The same code works with the iOS facebook plugin though.
     
  46. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @serious, did you turn on the Internet permission in the Unity player settings? Without it no requests will work.
     
  47. serioustommy

    serioustommy

    Joined:
    Jun 12, 2012
    Posts:
    126
    Yes I've tried both Auto and required.

    I've found out that it only returns the java.io.FileNotFoundException: https://graph.facebook.com/me error if the access token is either missing or invalid. If I've logged in and the access token is valid then it returns the correct json obj.

    I'm expecting an OAuthException inside the json obj though. I suppose I could assume that a FileNotFoundException means the access token is not valid and then do a logout. Not really ideal but it'll work for now.
     
  48. serioustommy

    serioustommy

    Joined:
    Jun 12, 2012
    Posts:
    126
    Another minor issue. I've just updated to the latest Android social network plugin, and am having issue posting anything while it was working before. Then it turned out that the included FacebookManager.prefab has the FacebookManager script missing for some reason. Just so you know :)
     
  49. prime31

    prime31

    Joined:
    Oct 9, 2008
    Posts:
    6,426
    @serious, that happens on occasion when importing unitypackages. There is no fix for it besides the arduos task of dragging the script onto the GameObject all by yourself.
     
  50. serioustommy

    serioustommy

    Joined:
    Jun 12, 2012
    Posts:
    126
    Ah didn't know that. I'll double check the prefabs every time when I update, thanks!