Include a proguard file with can be consumed by the latest gradle plugin to
merge this ones rules without the rules of the app linked to.
This way devs doesn't need to declare (in a recent version of the gradle plugin)
-dontwarn and -dontnote for cyanogenmod.library when linked to it, because
proguard crashes the build because it cannot access to cm system private classes.
Change-Id: I7c94a9119db744b0029b4d9a8aa782adcbd47b93
Signed-off-by: Jorge Ruesga <jorge@ruesga.com>
Since aar's contain the raw resource to be compiled into the
consumer package, having the compiled java from the resources
inside of the java archive can lead to multiple instances
of the class in the target package during compilation.
Avoid that scenario by excluding the compile 'cyanogenmod/library'
package from the final aar.
TICKET: CYNGNOS-2305
Change-Id: I3b40205f4c2173ecd059e034312ed18dc9c6de34
for common resources
TICKET: CYNGNOS-2305
Change-Id: Idc1872b5fa3884754b49b08d2f8381f18fba234d
Signed-off-by: Roman Birg <roman@cyngn.com>
Signed-off-by: Adnan Begovic <adnan@cyngn.com>
Introduce CM Weather Manager and Weather Provider Services API.
The CM Weather Manager can be used by apps to request weather
updates.
The Weather Provider Services API allows a third party developer to
implement a weather service to process weather update requests and
update the CM Weather Content Provider data which can be consumed by
any other app holding the required permission.
Change-Id: Idcc80712ba92715109d3577d120f7fea85d6c996
This patch also adds a new variable stub_packages which is used
when generating docs for public and system api, instead of defining
it twice.
Change-Id: I7d87b94088fca5b053f0447067c239006af72ad9
* ColorUtils was recently added here and it's suitable for general
consumption. Add this to the API.
Change-Id: Iff89d5714092d02070f1c6805e0e8f95debd980d
During checkapi-cm invocation under make, the api
text generation dependant on the stubs (which depend
on the sdk intermediates) needs the res package files:
Manifest and R.java, to be available in the intermediates.
Change-Id: I19921f1b5531822341a6804cf83e1b0b21b9f8bf
TICKET: CYNGNOS-2049
Since LOCAL_JACK_ENABLED isn't flexible enough
to have generation of both java archives and jack
binaries, we can work around this by having a
secondary module defined that disables jack compile.
Change-Id: Ied647b659c13b672621d82af536d1ed447d5f7fa
* This can be referenced instead of the standard jar if internal
resource identifiers are needed for sharing between platform apps
(systemui + settings is a good use case).
Change-Id: Ib078f6dd861a0a3a4cdcfccd6e245200d18368c4
- In order to externalize the AlarmClock provider within DeskClock, move
the database contract, ClockContract, into the SDK so that interested parties can
reference it.
- Add CyanogenModAlarmClock to add new utilities for turning existing
alarms on/off and creating new alarms.
Change-Id: I1f11ccc3988bdef10d721e2038b2c7d69a4ae598
org.cyanogenmod.platform-res provides resources that,
if public, are globally accessible.
This allows us to declare public and internal permissions as
well as reference permissions declared by the android framework
core
Change-Id: Ia7d541f4b403585f7479ecd87895987b8471005b
Create a simple CustomTile object with builder which lets a 3rd party
application publish a quick settings tile to the status bar panel.
An example CustomTile build:
CustomTile customTile = new CustomTile.Builder(mContext)
.setLabel("custom label")
.setContentDescription("custom description")
.setOnClickIntent(pendingIntent)
.setOnClickUri(Uri.parse("custom uri"))
.setIcon(R.drawable.ic_launcher)
.build();
Which can be published to the status bar panel via CMStatusBarManager#publishTile.
The CustomTile contains a click intent and click uri which can be
sent or broadcasted when the CustomQSTile's handleClick is fired.
This implementation closely mirrors that of NotificationManager#notify for
notifications. In that each CMStatusBarManager#publishTile can have an appended
id which can be kept by the 3rd party application to either update the tile with,
or to remove the tile via CMStatusBarManager#removeTile.
Change-Id: I4b8a50e4e53ef2ececc9c7fc9c8d0ec6acfd0c0e