George,
Thanks for the update. I look forward to the universal build. 

As for architectures, Google doesn’t list `armeabi-v7a-hard` on 
https://developer.android.com/ndk/guides/abis.html 
<https://developer.android.com/ndk/guides/abis.html> . The only architectures 
missing are `mips` and `mips64` however, I don’t know the popularity of those 
architectures. 

Rod


> On Sep 18, 2017, at 5:44 PM, Nash, George <george.n...@intel.com> wrote:
> 
> Oh as a side note: I am not sure the `armeabi-v7a-hard` architecture has 
> enough people building and using it to include it in a universal aar at this 
> stage. If we update the build I think I would skip that for the time being. I 
> honestly don’t know how it differs from the `armeabi-v7a` at this point in 
> time.
>  
> Maybe someone on this list knows more about the differences.
>  
> George
>  
>  <>From: Nash, George 
> Sent: Monday, September 18, 2017 2:41 PM
> To: 'Rod Biresch' <rbire...@chariotsolutions.com 
> <mailto:rbire...@chariotsolutions.com>>
> Cc: iotivity-dev@lists.iotivity.org <mailto:iotivity-dev@lists.iotivity.org>; 
> Bell, Richard S <richard.s.b...@intel.com <mailto:richard.s.b...@intel.com>>
> Subject: RE: [dev] Android multiple target architectures
>  
> My plan with the Jira ticket was to take the work done for this commit 
> https://gerrit.iotivity.org/gerrit/#/c/2409/ 
> <https://gerrit.iotivity.org/gerrit/#/c/2409/> and redo it.
>  
> The current code layout has change a lot since that commit was made; it was 
> made in 2015, and is quite out of date. I have not abandoned it because the 
> developers were on the right track for enabling the universalAPK. I think it 
> needs to be done from scratch since the commit is so old it would be simpler 
> to pull out the ideas than to try and update the commit itself.
>  
> Basically we need to run the build for each platform (i.e. 'x86', 'x86_64', 
> 'armeabi', 'armeabi-v7a', 'armeabi-v7a-hard', 'arm64-v8a’) to generate the 
> *.so files for each platform then run a gradle builder that knows about all 
> the *.so file and packages them into an .aar file.
>  
> George
>  
>  
>  
> From: Rod Biresch [mailto:rbire...@chariotsolutions.com 
> <mailto:rbire...@chariotsolutions.com>] 
> Sent: Monday, September 18, 2017 9:56 AM
> To: Nash, George <george.n...@intel.com <mailto:george.n...@intel.com>>
> Cc: iotivity-dev@lists.iotivity.org <mailto:iotivity-dev@lists.iotivity.org>
> Subject: Re: [dev] Android multiple target architectures
>  
> George,
> Thanks for the reply. What is the recommended way of including the iotivity 
> libraries (all architectures) in an Android app?
>  
> If each architecture specific library (.aar file) is included as a dependency 
> in the Gradle build file then a debug version of the app will run. However, a 
> release build is not possible because of duplicate classes exist in the 
> packaged classes.jar file. We’ve tried unpacking all .aar files and 
> extracting out the shared objects (.so files) into an Android module, which 
> will allow for a release .apk to be built. However, we now see runtime errors 
> like:
>  
> java.lang.UnsatisfiedLinkError: JNI_ERR returned from JNI_OnLoad in 
> "/data/app/xxx.xxx.xxx/lib/arm/libocstack-jni.so”
>  
> Basically, we need to support as many architectures as possible. From a 
> client perspective, we need all architectures or the app is not useful. 
> Getting back to your question, yes, we are interested in enabling a 
> universalAPK.
>  
> Thanks!
> Rod
>  
>  
>  
> On Sep 18, 2017, at 12:31 PM, Nash, George <george.n...@intel.com 
> <mailto:george.n...@intel.com>> wrote:
>  
> Unfortunately there is no build option to build an Android library for a 
> single target architecture.
>  
> There is an old jira ticket to enable building a “universalAPK” 
> https://jira.iotivity.org/browse/IOT-582 
> <https://jira.iotivity.org/browse/IOT-582>
>  
> I currently have it assigned to me.  There was some work to get it enabled 
> (by a different developer) but unfortunately the work is so old that it 
> essentially needs to be done again from scratch.
>  
> This is something that we would like to get done but I have not had the 
> development time to enable it. There is also a question about building and 
> verifying such a change.  Our build system is already having a hard time 
> keeping up with all the different setups we are throwing at it.  Adding in a 
> universalAPK could drastically increase the build time and complexity since 
> we have to build for all of the supported architectures then package them 
> into an .aar file.
>  
> If you are interested in enabling a universalAPK build I would be happy to 
> help you out.
>  
> George
>  
> From: iotivity-dev-boun...@lists.iotivity.org 
> <mailto:iotivity-dev-boun...@lists.iotivity.org> 
> [mailto:iotivity-dev-boun...@lists.iotivity.org 
> <mailto:iotivity-dev-boun...@lists.iotivity.org>] On Behalf Of Rod Biresch
> Sent: Thursday, September 14, 2017 11:06 AM
> To: iotivity-dev@lists.iotivity.org <mailto:iotivity-dev@lists.iotivity.org>
> Subject: [dev] Android multiple target architectures
>  
> The build instructions (https://wiki.iotivity.org/android_build_instructions 
> <https://wiki.iotivity.org/android_build_instructions>) document how to build 
> an Android library for a single target architecture. Is there support to 
> build all supported target architectures (i.e. 'x86', 'x86_64', 'armeabi', 
> 'armeabi-v7a', 'armeabi-v7a-hard', 'arm64-v8a’) in 1 .aar file? If not, is 
> there a workaround?
>  
> Thanks,
> Rod

_______________________________________________
iotivity-dev mailing list
iotivity-dev@lists.iotivity.org
https://lists.iotivity.org/mailman/listinfo/iotivity-dev

Reply via email to