errors installing add-on on Android

VERIFIED FIXED

Status

defect
VERIFIED FIXED
9 years ago
9 years ago

People

(Reporter: dietrich, Assigned: wesj)

Tracking

Trunk
ARM
Android
Dependency tree / graph
Bug Flags:
in-litmus +

Firefox Tracking Flags

(fennec2.0+)

Details

Attachments

(3 attachments)

i made a super simple add-on with Jetpack, that adds a button to Fennec.

it works fine on the desktop, but won't install on Android.

the add-on is available here: http://people.mozilla.com/~dietrich/install.html

the errors from the console:

ERROR addons.xpi: Failure moving /data/data/org.mozilla.fennec/mozilla/fsociqrm.default/extensions/staged/jid0-wBmdww5cBx0qaEF1RlwkDZirmO4@jetpack to /data/data/org.mozilla.fennec/mozilla/fsociqrm.default/extensions
resource://gre/modules/XPIProvider.jsm
221

WARN addons.xpi: Failed to install: [Exception... "Component returned failure code: 0x80520006 (NS_ERROR_FILE_TARGET_DOES_NOT_EXIST) [nsIFile.isDirectory]"  nsresult: "0x80520006 (NS_ERROR_FILE_TARGET_DOES_NOT_EXIST)"  location: "JS frame :: resource://gre/modules/XPIProvider.jsm :: <TOP_LEVEL> :: line 200"  data: no]
resource://gre/modules/XPIProvider.jsm
200
Does the add-on actually require Jetpack? Fennec has zero support for Jetpack APIs.

I have seen other bugs mention this error though.
QA Contact: general → wjohnston
"it works fine on the desktop, but won't install on Android." - Interesting
The add-on is run in the Jetpack runtime (sandboxed js), but doesn't use any APIs that are browser-specific, and doesn't use the Jetpack e10s stuff at all.

But that's not the problem, since we don't even get that far: It won't install due to what look like filesystem operation errors (comment #0).

I guess it could be something related to Jetpack add-on filesystem layout?
This is unlikely to be jetpack specific but I'm not sure what might be happening. The add-on got extracted successfully to /data/data/org.mozilla.fennec/mozilla/fsociqrm.default/extensions/staged/jid0-wBmdww5cBx0qaEF1RlwkDZirmO4@jetpack but then code trying to move that to /data/data/org.mozilla.fennec/mozilla/fsociqrm.default/extensions failed claiming that either hte main directory or something in it didn't exist. The only case I can think of that making sense is if the XPI contained a symlink, I don't think we handle that too well.

Could you attach a copy of the add-on?
(In reply to comment #4)
> 
> Could you attach a copy of the add-on?

Linked in comment #0.
This sounds very similar to bug 611403. Is this by any chance on a Nexus One?
This improves the logging slightly to tell us the actual file that failed to get moved rather than just the parent directories.
Attachment #496182 - Flags: review?(robert.bugzilla)
Attachment #496182 - Flags: review?(robert.bugzilla) → review+
Landed the logging, testing in tomorrow's nightly would give us a little more info here.

http://hg.mozilla.org/mozilla-central/rev/93ad1a7be791
Attachment #496182 - Flags: approval2.0+
tracking-fennec: --- → 2.0+
Bug 612341 and Bug 611403 sound like dupes of this issue. I am treating this bug as the core bug since some work is happening here.
Blocks: 611403, 612341
The link to the addon is broken - can we get it someplace else?
(In reply to comment #10)
> The link to the addon is broken - can we get it someplace else?

link is fixed.
Works on a Galaxy S, so I assume this is indeed a Nexus One specific issue, as in bug 611403.
I assume this is how the assign and QA fields were meant to be?
Assignee: nobody → wjohnston
QA Contact: wjohnston → general
Attachment #499848 - Attachment mime type: application/octet-stream → application/x-xpinstall
I got this error on HTC Desire, not Nexus One.
This was fixed on the Nexus One I borrowed by bug 611403. Marking fixed, but if it still doesn't work on the Desire tomorrow, feel free to reopen.
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
Verified as fixed with HTC Desire A8181, on Mozilla /5.0 (Android;Linux armv7l;rv:2.0b9pre) Gecko/20100107 Firefox/4.0b9pre Fennec /4.0b4pre (after setting extensions.checkCompatibility.4.0b to false in about:config)
Status: RESOLVED → VERIFIED
added a litmus test for installing bootstrapped extensions.  https://litmus.mozilla.org/show_test.cgi?searchType=by_id&id=15036
Flags: in-litmus+
I updated the add-on to be compatible with 4.0b4pre, and am still not able to install it. Now I see a "Addon couldn't be installed becau.." notification, but there's no way to see the full contents of the notification (should probably dump those to console too).
You need to log in before you can comment on or make changes to this bug.