Tests for unique device id are enforced to be implemented correctly
on user builds.
Change-Id: I1c6b24bbf68fe1dce645744f8323c869fdeb9ada
TICKET: CYNGNOS-3026
Since powersave is ignored while the device is plugged in,
and switching pluggedmodes via runtime executing dumpsys commands
is blocked by sepolicy. Ignore the powersave portion of the test.
Change-Id: Ia2b206649a7fc1960cc25d16ffd22379e7c616e3
TICKET: CYNGNOS-2603
Since the API for PerformanceManager returns the number
of profiles supported we can assume what the profiles are
since the HAL provides them in an ordered manner. Thus,
iterate through the size of the number of profiles and verify
each one that's possible.
Change-Id: I87f6d1a847c849bd9e544c1e89a666726c61fe83
TICKET: CYNGNOS-2603
* This is a rework of the session callback API which previously
lived in the framework due to JNI usage. This has been split out
and cleaned up for CMSDK.
* The JNI library lives on the server side, and the app-level
callback has been changed to a protected broadcast. This allows
us to wake up registered services when these events occur.
* Additionally, we support listing all active audio sessions.
* Also brings some JNI love/hate over to CMSDK.
Change-Id: I31c293943474419e3db088bb7ffab75f7440ac0f
Simply, Concierge handles your parcels and makes sure they
get marshalled and unmarshalled correctly when cross IPC
boundaries even when there is a version mismatch between the client
sdk level and the framework implementation.
On incoming parcel (to be unmarshalled):
ParcelInfo incomingParcelInfo = Concierge.receiveParcel(incomingParcel);
int parcelableVersion = incomingParcelInfo.getParcelVersion();
// Do unmarshalling steps here iterating over every plausible version
// Complete the process
incomingParcelInfo.complete();
On outgoing parcel (to be marshalled):
ParcelInfo outgoingParcelInfo = Concierge.prepareParcel(incomingParcel);
// Do marshalling steps here iterating over every plausible version
// Complete the process
outgoingParcelInfo.complete();
Change-Id: I0096851e08ce25908e19e39e6bc4af344e85725e
The feature xml plays two roles:
1) To allow sdk interface (constructor) to throw when system
service is unavailable. This allows for clearer platform
development debugging.
2) To allow for simpler disambiguation of what services to
instrument in a modular environment.
Change-Id: Ic980225df9c115e97f7147cf043cf92bbb225f01
TICKET: CYNGNOS-2293
The feature xml plays two roles:
1) To allow sdk interface (constructor) to throw when system
service is unavailable. This allows for clearer platform
development debugging.
2) To allow for simpler disambiguation of what services to
instrument in a modular environment.
Change-Id: I50f5993ff9c5107fdeaa9a5aa95377235eb3ac02
TICKET: CYNGNOS-2294
The feature xml plays two roles:
1) To allow sdk interface (constructor) to throw when system
service is unavailable. This allows for clearer platform
development debugging.
2) To allow for simpler disambiguation of what services to
instrument in a modular environment.
TICKET: CYNGNOS-2288
Change-Id: Id0adcc1eaa4a0512faf25f11057c45dc2ac733e0
The feature xml plays two roles:
1) To allow sdk interface (constructor) to throw when system
service is unavailable. This allows for clearer platform
development debugging.
2) To allow for simpler disambiguation of what services to
instrument in a modular environment.
TICKET: CYNGNOS-2289
Change-Id: Ice0ae7c45aecbb34e0ea667128b040906c46d7e7
The features xml plays two roles:
1) To allow sdk interface (constructor) to throw when system
service is unavailable. This allows for clearer platform
development debugging.
2) To allow for simpler disambiguation of what services to
instrument in a modular environment.
Change-Id: I41f4ac60af076743909c6090fd50c3ad045bc9e1
Since PerformanceManager is strictly a CyanogenMod construct,
it doesn't make sense to enforce the interfaces with an android
specific permission (even though the implementation is delegated
to power manager). To keep consistency with the other api's,
modify the enforcing permission to a cm specific declaration.
Also add test cases for the PerformanceManager public interfaces.
Change-Id: I430b69dbee73bf94bb60932d1942ab97e3ba193e
Keep any classes extending IInterface so we can have
the BinderTransactionTest run successfully.
Change-Id: Ic49794017e472499cbbf351dfa12732854ceea8d
TICKET: CYNGNOS-2189
-dontskipnonpubliclibraryclasses and class members covers
the processing of external libraries which makes the -injars
option defunct.
Also keep more android support related classes for when we expand
the test package for more coverage.
TICKET: CYNGNOS-2189
Change-Id: I37b66acdac86400f41d1f7f1e6610d1d9ca480b3
To avoid any future release having offset binder transaction
call ids, create a means to validate binder transaction ids
within a parameterized environment based off of prior releases.
This requires utilizing the new android testing support library
for junit4 support.
Change-Id: Iefe3c183de2bdfa127ea53dcf21c8223f0355c34
It's sometimes useful to know what physical device you're using.
CMHW SerialNumber and an "ro.serialno" property already exists, but
are not guaranteed to be unique. Different OEM may use overlapping
numbering schemes, and sometimes placeholder like "012345ABCDE" are
used.
Attempt to work around these shortcomings by defining a new
UniqueDeviceId class that provides a globally unique device ID that
is both deterministic for a given device and designed not to overlap
with IDs of any other devices.
Change-Id: I3f426972558394ba8e78261273ac8521aa603327
Some of this exists in the PersistentStorage implementation, but it
was never formally documented in the APIs. Inherit the cmhw implementation
error checking & move it into the service.
Add tests to validate the new restrictions & a test that was previously
failing.
Change-Id: I3ecda29fdd28bbc4e6d8ccce7511c4644065ea46
Created the AndroidTestCase unit test
Added functional testing for airplane mode, which can be restored
without contaminating other tests.
Also added setZenMode testing, which currently contaminates other
tests. But we will allow for lack of a better way
FOR-156
Change-Id: I2ab5642c60f41266d9de8aab897e4852e872ad38
Add setZenModeWithDuration API call with long durationMills
Use NotificationManager.setZenMode with Condition URI
specifying end time.
Update settings/CMPartnerInterfaceTest
TODO: unit test to be added in:
tests/src/org/cyanogenmod/tests/settings/unit.
FOR-156
Change-Id: I18dd661fc07419a7019b6372e81df430a70f86e9
Initial ExternalViewProvider
Change-Id: Ib35d79d3ae01d2e1a98020c5e65e4fbe50d2d322
Fill out methods and run everything on main thread
Change-Id: I05dd1bce5c24057101cd85656d28b01e6681434a
Fix aidl
Change-Id: Ie4b9a4463fdea37a0c5d657ffbc8796d51b57303
Add sample provider
Change-Id: I51b73302f85927aba2e9ea30ce47d6958af8e451
Create window and view earlier and only once
Change-Id: I60264b3c2de302f6f628320f436ac2aeb39de42c
visibility
Change-Id: I6ed2d6431c5aec9d4959a51828c42a700aabbd22
Add logging
Change-Id: I224587bcdfd1ff08673a618c5e45fef384041b8b
Add external view
Change-Id: Ic7f1ba96857239ac0fa43777f7d637716b7aead7
Resource fixes
Change-Id: I75324900d36a465575338c8b0ec9cc568ea50b9a
Add view host
Change-Id: Ief57371563feca707f420a509827c78c48bedf9c
Such hacks :\
Change-Id: I11ff460e7e7fed9cb14531ec3fb4699a37021ee0
Use a real window
Change-Id: Ie79f8188beaa871c6b8c96303c3221cdd7352fc6
Make api able to handle multiple instances of provided views
Change-Id: I185a8950aa577f920eaf7582c53f3316b88765c8
Ensure attribute set is passed to constructor
Change-Id: I9ebb4e8b0f7538ea5d0e7da179b1f1df812532b1
Add clip rect support
Change-Id: I23ac08b9e9e1e07e72bbf761ede1de87f4e4b084
Use final clipRect, instead of member
Change-Id: I2fa5f6ff30adf30fc0fe10f9fac1869ab4c03904
The jars all have oat files now, so iterating them and seeing
if they're "clean" is pointless since they're not part of the
processes runtime libraries on zygote fork.
Change-Id: I8c0e0ce16a84c423e68f8c1749f3676c3bd2931f