I'm starting a 3rd party activity from my library code using the BA startActivityForResult method and the activity is failing to call the IOnActivityResult ResultArrived callback method when it finishes.
Here's my library method:
The class that contains this method has the @ActivityObject annotation by the way.
So from B4A i call Check and it starts the 3rd party activity, the activity finishes and the logs always shows:
But the ResultArrived callback never gets executed - i've check the unfiltered logs and there's nothing there.
I've tried this on a Gingerbread and an ICS device - the callback isn't called.
Looking at this thread: http://www.b4x.com/forum/libraries-...-guide-using-onactivityresult.html#post129890, i read:
What does this mean - is it relevant here?
Martin.
Here's my library method:
B4X:
public void Check(final BA pBA){
IOnActivityResult iOnActivityResult=new IOnActivityResult (){
@Override
public void ResultArrived(int pResultCode, Intent pIntent) {
BA.Log("Checkout ResultArrived");
Log.d("B4A", "Checkout ResultArrived#2");
}
};
Intent intent=getObject().getNewIntent(pBA.context);
pBA.startActivityForResult(iOnActivityResult, intent);
}
The class that contains this method has the @ActivityObject annotation by the way.
So from B4A i call Check and it starts the 3rd party activity, the activity finishes and the logs always shows:
LogCat connected to: 10C61F531F6C
--------- beginning of /dev/log/system
--------- beginning of /dev/log/main
** Activity (main) Pause, UserClosed = false **
** Activity (main) Resume **
** Activity (main) Pause, UserClosed = false **
** Activity (main) Resume **
** Activity (main) Pause, UserClosed = true **
** Activity (main) Create, isFirst = false **
** Activity (main) Resume **
** Activity (main) Pause, UserClosed = false **
onActivityResult: IOnActivityResult was released
** Activity (main) Resume **
But the ResultArrived callback never gets executed - i've check the unfiltered logs and there's nothing there.
I've tried this on a Gingerbread and an ICS device - the callback isn't called.
Looking at this thread: http://www.b4x.com/forum/libraries-...-guide-using-onactivityresult.html#post129890, i read:
To avoid memory leaks this method only holds a WeakReference to iOnActivityResult. Which means that you need to hold a strong reference to it in your code.
What does this mean - is it relevant here?
Martin.