airsdk / ANE-PlayAssetDelivery

Play Asset Delivery ANE
2 stars 2 forks source link

Open source this ANE? #13

Closed Oldes closed 4 months ago

Oldes commented 1 year ago

Maybe it would be more educative to have real ANE's sources and not just the binary ANE itself, wouldn't it?

PippoApps commented 1 year ago

Maybe also the SWC to ease development.

ajwfrost commented 1 year ago

I can put in a request for open sourcing stuff, we have some internal admin/processes to go through for that.

The .ane file should be usable just the same as a .swc file though, I thought?

Oldes commented 5 months ago

@ajwfrost any news on it? I am just trying the ANE now and it seems not to be able initialize itself. As there is only release build where are no log messages, maybe you could provide at least a debug version for now?

ajwfrost commented 5 months ago

Hi @Oldes - we've just been updating this ANE, so are about to release a version that allows a debug flag to be set.. the open-sourcing discussion didn't go anywhere but things have changed more recently so will have another go at that.

Pre-release of the new ANE version is in this zip: PlayAssetDelivery.zip There's a new property debugMode on the ANE, so if you create the PlayAssetDelivery object, try immediately setting this flag before calling the initAssetDelivery function.

@PippoApps from the above comment, I hadn't realised that you couldn't use the ANE in the same way as a SWC file when using Ant, have created an update there: https://github.com/airsdk/Adobe-Runtime-Support/discussions/1443#discussioncomment-7464212 which went into 50.2.3.8. So hopefully now, the ANE is fine and you don't need a separate SWC..

thanks

Oldes commented 5 months ago

@ajwfrost thanks... unfortunately I'm not able to init the ANE... I see this in the log:

2024-01-16 14:38:28.851  1089-1089  AdobeAIR                pid-1089                             I  Loading extension com.harman.PlayAssetDelivery on Android-ARM64 - SWF data 0xb40000748fd4a000
2024-01-16 14:38:28.860  1089-1089  SetDebugMode            pid-1089                             I  SetDebugMode end
2024-01-16 14:38:28.860  1089-1089  InitAssetDelivery       pid-1089                             I  InitAssetDelivery
2024-01-16 14:38:28.860  1089-1089  AdobeAIR                pid-1089                             E  Warning: exception thrown from ANE function: returning a null value to ActionScript

Any reason why? Isn't the ANE missing some dependency?

ajwfrost commented 5 months ago

Hi

An exception throwing out of the ANE isn't so good .. but if there is a problem in initialization, it may be because of a dependency? I'll see if there's some better debugging/error messaging that we can put in place here...

Are you able to check the below post to ensure you've got the manifest additions plus dependent library in there? https://github.com/airsdk/ANE-PlayAssetDelivery/issues/7#issuecomment-1025253478

thanks

Oldes commented 5 months ago

Where one can find the mentioned com.google.android.play extension?

ajwfrost commented 5 months ago

Should be this one: https://github.com/distriqt/ANE-GooglePlayServices/blob/master/lib/com.google.android.play.ane I think we may need to update our documentation, I couldn't see these instructions in our wiki!

Oldes commented 5 months ago

I can confirm that the ANE works fine with the manifest additions and the com.google.android.play ANE.

ajwfrost commented 5 months ago

Thanks! Have just updated the wiki page: https://github.com/airsdk/ANE-PlayAssetDelivery/wiki#configure-the-application

Oldes commented 5 months ago

@ajwfrost anyway... I still believe that this ANE should be open source. There are still undocumented parts... for example: getByteDownloaded and getTotalBytesToDownLoad... (btw.. it would be good to have these 2 names using same style!)

Oldes commented 4 months ago

I just released my open sourced version which we use in our projects now ->> https://github.com/Oldes/ANE_GooglePlayAssets

It is missing features we don't need (install-time assets support) but including features missing in the Harman's extension (exception handling - like when user want to fetch a pack and don't have network connection or enough space on the device)