App rejected. Unhappy new customer.

Hello,

I hope this is the right place to discuss this, if not point me elsewhere, but we had to buy a FULL version of the SDK just so we could submit to Amazon, which is the only app market we are supplying right now, but unfortunately we can’t accomplish that. Not very happy with our purchase. Any response would be appreciated.

We received a rejection notice from Amazon for an app, as shown below:

_Bug Description: Call Interrupt fail
Steps to Reproduce:

1.Launch the app.
2.Select any video.
3.A video is played,make an incoming call.
4.End the call,a blank screen is displayed and the video is not resumed.

OS/Device(s)/Form Factor: 2.3.6/Samsung Galaxy S Advance/Phone+Tablet_

In response I’ve implemented the applicationSuspend and applicationResume (from every scope possible), as well as listening for the video complete event so that I could just simply go back to the select screen (using storyboard), but no events seem to fire.

Details:

The app loads a scene with a handful of buttons that point to local videos, when tapped are called like so:

In videos.lua
[lua] local onComplete = function(event)
print( “video session ended” )
storyboard.gotoScene( “splash” )
end
media.playVideo( “vid_00” … btn.id … “.mp4”, true, onComplete )[/lua]

This is in my main.lua
[lua]local function onSystemEvent( event )
if (event.type == “applicationSuspend”) then
storyboard.gotoScene( “splash” )
elseif (event.type == “applicationResume”) then
storyboard.gotoScene( “splash” )
end
end
Runtime:addEventListener( “system”, onSystemEvent )[/lua]

The video starts playing and if it reaches the end of the clip, it does indeed return to the “splash” screen. But if I tap the “home” button on my phone, in what I would presume to be an “applicationSuspend” system event, the phone goes to the home screen, but when resuming the app, now assuming an “applicationResume” event, the video just sits on screen, blank and stopped.

I did see this on the media.playVideo doc:

…on Android devices the application will be suspended until the video playback is complete.

Perhaps that’s the sticking point. Any advice on how to handle this situation?

Corona Build: 2013.1003

[import]uid: 202223 topic_id: 35049 reply_id: 335049[/import]

Stuff Happens, and nothing will ever be perfect the first go.

On applicationResume

Try to remove the previous seen ( or you can just hard code “splash” if you want )
Then reload it, if you need to restart your video where the user left off you may need to keep track of the video time or look at the media player details ( if you can - im not sure ).

But then you would save that in a global variable and reset it when the scene reloads.
Good Luck.

 -- == If there was a previous screen like the help - totally remove it from memory  
 if storyboard.getPrevious() ~= nil then  
 --print("previous screen in mainmenu " .. storyboard.getPrevious());  
 storyboard.purgeScene(storyboard.getPrevious())  
 storyboard.removeScene(storyboard.getPrevious())  
  
 storyboard.gotoScene( "splash" )  
 end  

Larry Meadows - TinyTapApps.com [import]uid: 11860 topic_id: 35049 reply_id: 139395[/import]

Hello,

I really appreciate the reply, tried it, but it does not solve the problem. Stuff does indeed happen, but $350 is $350, to not have at least some kind of official response is a bummer.

Should I file this as a bug?

[import]uid: 202223 topic_id: 35049 reply_id: 139580[/import]

My apps were approved on amazon galaxy s phones and others so I know it works.

I know at one time there was an issue with freezing like you described.

and the fix / hack was to out a small animation on your screen and the UI will update.

this kind of sounds like the same thing.

good luck larry [import]uid: 11860 topic_id: 35049 reply_id: 139582[/import]

Stuff Happens, and nothing will ever be perfect the first go.

On applicationResume

Try to remove the previous seen ( or you can just hard code “splash” if you want )
Then reload it, if you need to restart your video where the user left off you may need to keep track of the video time or look at the media player details ( if you can - im not sure ).

But then you would save that in a global variable and reset it when the scene reloads.
Good Luck.

 -- == If there was a previous screen like the help - totally remove it from memory  
 if storyboard.getPrevious() ~= nil then  
 --print("previous screen in mainmenu " .. storyboard.getPrevious());  
 storyboard.purgeScene(storyboard.getPrevious())  
 storyboard.removeScene(storyboard.getPrevious())  
  
 storyboard.gotoScene( "splash" )  
 end  

Larry Meadows - TinyTapApps.com [import]uid: 11860 topic_id: 35049 reply_id: 139395[/import]

Hello,

I really appreciate the reply, tried it, but it does not solve the problem. Stuff does indeed happen, but $350 is $350, to not have at least some kind of official response is a bummer.

Should I file this as a bug?

[import]uid: 202223 topic_id: 35049 reply_id: 139580[/import]

My apps were approved on amazon galaxy s phones and others so I know it works.

I know at one time there was an issue with freezing like you described.

and the fix / hack was to out a small animation on your screen and the UI will update.

this kind of sounds like the same thing.

good luck larry [import]uid: 11860 topic_id: 35049 reply_id: 139582[/import]