11977 Commits

Author SHA1 Message Date
Nick Pelly
f003e26df9 Final final final Gingerbread MR API changes.
This is it. I promise.

ACTION_TECHNOLOGY_DISCOVERED -> ACTION_TECH_DISCOVERED
    This was missed in our technology->tech rename.

Hide TagTechnology.reconnect()
    This is used to reset any per-connection state in a tag, by reconnecting
    to it. The first problem is that it belongs on Tag, not TagTechnology. The
    second problem is that it may become redundant once we add Tag.rediscover()
    which will also reconnect to the tag, and will also return a new Tag with
    newly created technologies enumerated. And the third and most significant
    problem is that you can already achieve the same result by just calling
    close() followed by connect().

Hide Tag.createMockTag()
    This API cannot be used reliably. First it requires using int[] for the
    technology list, but those int constants are now hidden. Second it requires
    knowledge of the extras parcel used to fill technology specific data - also
    not public.

Introduce TagTechnology.isConnected()
    Every child class already impelmented this, and given that connect() and
    close() are defined on the interface, then isConnected() should be there
    too.

Modify Ndef.getType to return a string (not int)
    Allows more flexibility in adding new NDEF types. Current public strings are
    org.nfcforum.ndef.type1
    org.nfcforum.ndef.type2
    org.nfcforum.ndef.type3
    org.nfcforum.ndef.type4
    com.nxp.ndef.mifareclassic

Add NdefFormatable.formatReadOnly()
    This allows you to make the tag read-only at the same time as performing
    format and write. It is important because we currently don't have any
    public API to re-enumerate a tag technology list after making a tag
    NDEF compatible, so you can't perform the format as a seperate step
    without physically removing the tag from field and returning it.

Modify Readonly -> ReadOnly

Make Tag class final

Change-Id: Icf306aeb37b936ca3007e4868e99b6baceac4aff
2011-02-01 09:20:45 -08:00
Dianne Hackborn
7a7ed2b212 Merge "Do not check features in PackageManagerService DO NOT MERGE" into gingerbread 2011-01-31 17:41:54 -08:00
Kenny Root
fa2ae1ad1a Do not check features in PackageManagerService DO NOT MERGE
PackageManagerService shouldn't check features that a package declares
that it uses because this will cause problems in the future when we add
more features that older phones didn't explicitly declare. We must rely
on markets to know about phones and filter them for us to avoid this
situation.

Bug: 3409434
Change-Id: I0d51b2de33d8110edc6824af4b5b8c901f96077f
2011-01-31 16:27:38 -08:00
Eric Fischer
a019d15b66 Merge "Import revised translations. DO NOT MERGE" into gingerbread 2011-01-31 16:08:52 -08:00
Dianne Hackborn
e6c6b760eb DO NOT MERGE Fix issue #3408542: "resizeable" attribute required to get out of compat mode
The "resizeable" attribute of supports-screens was never well documented,
so many apps don't set it.  Assuming that if they are explicitly saying
they support large or xlarge screens then they are also implying that they
are resizeable.

Change-Id: Ibce45539d8910dfddb4f548da5464b31ac4a3a89
2011-01-31 13:44:14 -08:00
Eric Fischer
a85afd133f Import revised translations. DO NOT MERGE
Change-Id: I07d18c234d74184a6bc83894a3e874ce1ae782da
2011-01-31 12:17:36 -08:00
Jean-Baptiste Queru
1358b6a4fb Tweak to make merges easier
Bug: 3364311

Change-Id: Idec05206615de524a3b61d8579d9f2b462b541cd
2011-01-29 12:54:09 -08:00
Robert Greenwalt
6b739dc729 Merge "Add some network types that OEM's are asking for." into gingerbread 2011-01-29 06:38:35 -08:00
Robert Greenwalt
e12aec941d Add some network types that OEM's are asking for.
Adding them hidden so that if OEM's are rolling their own at least they can
use the same values.  Will mark them unhidden in a future sdk release.

bug:3395729
Change-Id: I90eabe036a96e1aa7c8cac49ca51efd9b1776a0c
2011-01-28 14:48:37 -08:00
Eric Fischer
1c3f1af182 Import revised translations. DO NOT MERGE
Change-Id: Id8afb303d2ecfc6270d1af1abd189c0ef0bf2314
2011-01-28 13:16:00 -08:00
Nick Pelly
d350dc0492 Merge "API: Make close() throw an IOException." into gingerbread 2011-01-27 16:23:35 -08:00
Nick Pelly
3fcedf7728 API: Make close() throw an IOException.
IOException on close() can be useful to indicate that in-progress transactions
were canceled.

I also audited all of our tech classes to make sure every function that needs
to throw IOException does so.

Change-Id: Iaa9c43d79d59ff85772d5c3e4b4d57a6fa8df4cf
2011-01-27 16:17:14 -08:00
Eric Fischer
3d73c4d386 Merge "Import revised translations. DO NOT MERGE" into gingerbread 2011-01-27 14:56:29 -08:00
Nick Pelly
21d0a173f1 Fix build - javadoc.
Change-Id: I0168fb4a75f4dff88e347c0dfd1f0b39e2dba0d6
2011-01-27 14:07:50 -08:00
Eric Fischer
f4323d8d6a Import revised translations. DO NOT MERGE
Change-Id: I1cf12c4a061a7982666176b42ac68d6dedd207ed
2011-01-27 13:57:31 -08:00
Nick Pelly
eab0e97bf0 Merge "Clean up MifareUltralight API." into gingerbread 2011-01-27 12:23:53 -08:00
Nick Pelly
4a5e253220 Clean up MifareUltralight API.
o Some javadoc updates
o writeBlock -> writePages  (Block means something else in NFC Forum).
o validate page offset

Change-Id: Icae54db3397d57aaa451caaa86d56e8ba82507f2
2011-01-27 12:22:56 -08:00
Robert Greenwalt
89a544088f Merge "Update networktype before sending state change." into gingerbread 2011-01-27 10:17:33 -08:00
Robert Greenwalt
67881c414a Update networktype before sending state change.
Fixes potential race condition in network-type info.  May fix this issue.

bug:3376930
Change-Id: I3d5fd7c76e54923b62c56defa947be3c9c1cd585
2011-01-26 13:39:46 -08:00
Dianne Hackborn
f5e4f208b9 Make CHANGE_COMPONENT_ENABLED_STATE a signatureOrSystem perm.
Change-Id: I53a6671d5478e7dbca44b17d90f1edfa8e3420bc
2011-01-26 12:40:18 -08:00
Kenny Root
138757db4f Merge "Make OBB results a one-way call" into gingerbread 2011-01-26 09:17:28 -08:00
Kenny Root
b7db2726e9 Make OBB results a one-way call
OBB result back to an application needs to be a one-way binder call.

Bug: 3353699
Change-Id: I0e625914d18a001c2fa9d764ea6463f34cf96743
2011-01-25 17:29:59 -08:00
Jeff Hamilton
f126ad3b64 Merge "Use classnames instead of ints for NFC techs." into gingerbread 2011-01-25 14:35:46 -08:00
Jeff Hamilton
d88e9aa575 Use classnames instead of ints for NFC techs.
This makes the system more flexible and allows
adding new technology types without having to
update the API.

Change-Id: Iaee6b633965e501a70e8afc3f1d54d9d94a4d05a
2011-01-25 16:32:26 -06:00
Nick Pelly
b134223f91 Make Mifare Classic increment/decrement operands little endian
Also make sure they are non-negative.

This is not documented in Mifare Classic spec, but based on findings from NXP:
- Operand should be stored in little-endian format in the transceive buffer
- Tag ignores the sign bit on the operand, its effectively 31-bit unsigned
- Overflow and underflow generates an error.

Change-Id: Id3389b3894ded732c4b00d564ca53f5df651359e
2011-01-25 07:45:07 -08:00
Justin Ho
28c4f69a93 Updated checkbox assets
Change-Id: I93c979816bc3310c510bf8942c273ce8c411150d
2011-01-24 13:05:06 -08:00
Arnaud Ferir
5e81a6e21e Fix trace mismatch.
Change-Id: Ie6e9a2baef63d2b5621593203742c2ffeaafc4ba
2011-01-24 12:15:21 -06:00
Sylvain Fonteneau
c5a418ecb7 Handle mock tags in android.nfc.Tag conversion to Parcel.
When generating a mock tag (after a NDEF exchange over LLCP), one of
the internal fields is set to null. This was causing NullPointerException
when being converted to a Parcel.

This is fixed by not including this field in the Parcel for mock tags.

Change-Id: I000e2faa54d71fd755ba7993e1e258743aad98fb
2011-01-24 12:15:13 -06:00
Nick Pelly
c896d85c15 Merge "Add operands to mifare classic increment, decrement." into gingerbread 2011-01-23 22:12:25 -08:00
Nick Pelly
1e233af3a7 Add operands to mifare classic increment, decrement.
Change-Id: Ib35f615142bda48a5e33888a09ebae2880624788
2011-01-23 22:11:44 -08:00
Nick Pelly
da01b4abb8 Merge "Make MifareClassic methods more consistent." into gingerbread 2011-01-23 21:36:14 -08:00
Nick Pelly
e45083b11b Make MifareClassic methods more consistent.
Remove method overloading for combinations of sector+block addressing.
Instead provide methods that more closly match the raw commands, and more
efficient helpers to convert between blocks and sectors.

o fix off-by-one bug in getBlockCountInSector()
o add BLOCK_SIZE
o remove DESFIRE not operating in classic emulation (SAK 0x20)
o hide isEmulated(), there is no use case, and the info is available elsewhere
o getTotalBlockCount() -> getBlockCount()
o getBlockCount(int) -> getBlockCountInSector(int)
o introduce blockToSector() and sectorToBlock()
o remove authenticateBlock()
    make it really clear that authentication is per sector, and reduce function
    explosion. blockToSector() allows you to use authenticateSector...
o explicit authenticateSectorWithKeyA() / authenticateSectorWithKeyB()
    get rid of magic boolean
o remove all (int sector, int block) parameters
    always address by absolute block. this makes the API crystal clear, and
    helps reduce function explosion
o validation of all sector and block indices
o dont & 0xff when converting to byte - its redundant
o Remove TYPE_OTHER. Mifare Classic types are well-known and stable.

Change-Id: I3c9f8254ff307f31b388b3d7592c862d5de6afa5
2011-01-23 21:32:57 -08:00
Jeff Hamilton
e1e70c5761 Merge "Allow null filters for foreground dispatch to act as catch all." into gingerbread 2011-01-23 19:17:22 -08:00
Jim Miller
42a461570b Fix 3379239: Catch exceptions from workaround for OOM.
This catches possible exceptions caused by attempting to
unregister a receiver that may have already been unregistered.
This is related to the OOM issue workaround in Change I99a7e0c3.

Change-Id: Ib69a8acc6b12659125c958a03efac0a8a68a3859
2011-01-23 13:40:31 -08:00
Jeff Hamilton
9f20cd7ff2 Allow null filters for foreground dispatch to act as catch all.
Change-Id: Idf3d2e344a6e87035ccb5b533ed9e81fec596132
2011-01-23 12:15:28 -06:00
Jaikumar Ganesh
1c9761e30d Merge "Do Not Merge Connect other profiles when priority is auto connect." into gingerbread 2011-01-21 21:25:01 -08:00
Jaikumar Ganesh
40e6c210f8 Do Not Merge Connect other profiles when priority is auto connect.
ACL auto connection was removed so other profiles
won't auto connect when priority was auto connect.

Reduced connect other profiles time delay.

Bug: 3281016
Change-Id: Ic56ca6e95f618f02bc316d1f80014e58c4b6c3bc
2011-01-21 19:05:54 -08:00
John Reck
398a589cce Merge "DO NOT MERGE - Create db path if it doesn't exit" into gingerbread 2011-01-21 14:03:30 -08:00
John Reck
bf8af78973 DO NOT MERGE - Create db path if it doesn't exit
Bug: 3241808
 Make sure the directory the caller is trying to open the icon db
 in actually exists and create it if it doesn't.

Change-Id: Icc0a67b0ceba03a746ac2cd3b84fc34c2c8b4fe2
2011-01-21 11:42:15 -08:00
Jeff Hamilton
dc54a8c742 Merge "API changes for NFC." into gingerbread 2011-01-21 11:34:20 -08:00
Jeff Hamilton
4e21e1d21a API changes for NFC.
Bug: 3366009
Change-Id: Ia28e03e1501421906b640b78d4c9a59a20e9c668
2011-01-21 13:32:58 -06:00
Jean-Michel Trivi
a314f32ba9 Merge "Bug 3365937 notify TTS initialization listener of binding errors" into gingerbread 2011-01-21 09:09:30 -08:00
Jean-Michel Trivi
1e13a02320 Bug 3365937 notify TTS initialization listener of binding errors
The creation of a TextToSpeech object causes the TTS service to
 start, and the initialization listener to be called when the
 service is connected. But the listener is never called when
 the service binding failed to be notified of this error.
The fix consists in checking the result of the bind to service
 operation, and notify the listener in case of an error.

More log was added in case speak() and synthesizeToFile() are
 called but the service is not known to have started.

Change-Id: I7dcc1fa44be31fee3177ec6215fca3306377b934
2011-01-20 17:25:48 -08:00
Dianne Hackborn
11576102a9 Fix issue #3373438: Update GBMR versions
Change-Id: Ic4b4f1b0534fd2fbd6322eae01a4cb9d5a67cc6f
2011-01-20 12:16:43 -08:00
Jeff Brown
d0725eef67 Merge "Never drag scroll views with no children. (DO NOT MERGE)" into gingerbread 2011-01-19 17:03:03 -08:00
Jeff Brown
39bc6197ba Never drag scroll views with no children. (DO NOT MERGE)
Fixes a regression from Froyo.  Previously, when a scroll view
had no children, its onTouchEvent would return because the scroll
view would only start dragging if the user touched one of its children.
In Gingerbread, the user can drag from anywhere within the scroll
view, not just by touching a child.  However, it makes no sense
to drag a scroll view that has no children so an empty scroll view
should just ignore touches like any other empty view group would.

This change fixes applications that for some reason or other happen
to have empty scroll views in strange places.

Bug: 3246230
Change-Id: I76c6136d3cd74968983033014d60deec1718ce30
2011-01-19 11:20:46 -08:00
Nick Pelly
0316d4a24f Change signature of MifareClassic.authenticate*() to throw IOException.
Update API for this and the previous commit.

Change-Id: I19275a5d00081bd0f00afea59a2b673344a32954
2011-01-18 18:52:37 -08:00
Martijn Coenen
bf34061bb4 Support for TagLostException (API).
Change-Id: Idf2c3253f7bc5f371133c4f18bfc2afde69c3010
2011-01-18 18:32:50 -08:00
Nick Pelly
a8ca533d34 Fix javadoc which broke build.
Change-Id: Ie3cac9bec04e80defae44ba02086ad0cdfd301a9
2011-01-18 17:07:05 -08:00
Nick Pelly
e4dd154c08 Merge "hange the default IsoDep timeout to 300ms (docs update)." into gingerbread 2011-01-18 16:11:14 -08:00