I added log statements to that method as well as its caller
InnerTextBuilder::Build. Build() gets the innerText of the HTMLElement it receives, and then iterates through its child_iframes and calls ShouldContentExtractionIncludeIframe on each one. According to the logs the innerText from the argument already contains the iframe text, even before iterating through the iframes.
On Android ShouldContentExtractionIncludeIframe gets called with 3rd party iframes, and it correctly determines that the origins are different so it returns false. On desktop, ShouldContentExtractionIncludeIframe only gets called on about:blank frames.
--Salvador