That's great Alex, all sounds really promising, I'll work out the full list
of patches and make sure everything's labelled in JIRA, but from a cursory
glance it's looking good already (CLJ-1657 is merged, the ones you
mentioned above are on their way, and I think that's most of the patch
set). The default clojure-android also had a few performance enhancements
that were still in discussion at the time, including direct linking which
in turn allowed proguard to work and bring the method count below the 65k
limit for dalvik. It's two years since I looked at this though, so I don't
know what effect 1.8 and 1.9 will have had on this and whether android
tools have done away with the 65k limit (something they were working on),
so these may have just fixed themselves over the natural course of
development.
The one elephant in the room is the ClassLoader - clojure-android is
patched to use the dalvik classloader when working dynamically rather than
AOT compiled, and there's no convenient extension point to do that from a
library or anything, and I'm guessing no appetite for an official build
config to pull it in for a clojure-android artifact. There's been some
discussion before about making this a bit more extensible in core, but I
appreciate that's never going to have a quick fix. This one isn't the end
of the world for a couple of reasons - 1) it doesn't affect production
versions when everything's AOT anyway and 2) maintaining a single patch on
top of otherwise vanilla clojure is a much less arduous task, but I'd love
to see a better solution for that.
Adam
On Fri, Jun 30, 2017 at 5:25 PM Alex Miller wrote:
> It's not really lack of interest from the core team, just a matter of not
> being able to do everything. I personally am not aware of any list of
> patches necessary to make Clojure work on Android (other than CLJ-1472,
> which has been the subject of some debate across Android and Clojure).
>
> I would love to have all problems filed as tickets in jira and marked with
> a common label. I just created an Android report based on the label
> "android" at
> https://dev.clojure.org/jira/secure/IssueNavigator.jspa?mode=hide&requestId=11701.
> Feel free to tag any issues with that label so they show up there.
>
> Would be happy to try to move any issues forward towards release. CLJ-1472
> btw would possibly be sidestepped by CLJ-1891 which would pull the use of
> the locking macro out of the default initialization path (which is why it
> became an issue when it did). Doesn't really fix the issue but probably
> makes it ignorable for now. I'm hoping to get CLJ-1891 into Clojure 1.9.
>
> Alex
>
>
> On Friday, June 30, 2017 at 9:56:43 AM UTC-5, Adam Clements wrote:
>>
>> Hey Mike,
>>
>> It's a case of life getting in the way - both Alex and myself got jobs
>> not in the Android space. That being said, looking at the issues that have
>> come up on the mailing list recently most would be fairly simple fixes, and
>> I don't think there would be much of a problem bringing it up to date with
>> the latest Clojure version.
>>
>> Michael - I agree about using react native if you're writing a
>> conventional app with activities etc, with the added benefit of iOS cross
>> compatibility. If you want to do anything more involved with the input
>> apis, wear apis etc, you'll probably need access to all the raw
>> functionality as clojure-android provides.
>>
>> It's a pity there was never any interest from core to acknowledge android
>> as a supported platform - the set of patches was (and still is) pretty tiny
>> to get it running - most of the custom work happened in lein-droid to
>> package it up appropriately.
>>
>> How many people want this? Is it worth spending some time bringing things
>> back up to date? I'm going fully freelance in a week or so, so might find
>> some time between projects (or if any companies want to use this and would
>> be willing to sponsor development, get in touch and we'll see what we can
>> do)
>>
>> Adam
>>
>> On Wed, Jun 28, 2017 at 5:12 PM Michael Blume
>> wrote:
>>
>>> My impression is that if you want to write Clojure on Android in 2017
>>> you use React Native and write ClojureScript. Re-natal is a good starting
>>> point
>>>
>>> On Fri, Jun 23, 2017, 3:57 PM Mike Meyer wrote:
>>>
Is there still any activity in the clojure-android space? The
clojure-android mail list is largely inactive, seems like the developers of
lein-droid haven't done anything in months (1.7.0-r4 is still used in the
templates), and the numerous references If ind for an android-clojure web
site are all dead.
That said, things do seem to mostly work for stock android. But
accessing API's for android wear seems problematical (see
https://github.com/clojure-android/lein-droid/issues/162 for my bug
report).
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clo