作者join183club (183club)
看板Soft_Job
标题Re: [请益] Android工程师会JNI在业界是常识吗?
时间Fri Aug 18 16:38:15 2017
※ 引述《cdfq152313 (月月冬瓜)》之铭言:
: 公司最近接了一个Android案子,说好对方会提供SDK。
: 对方第一版SDK过来是纯C/C++ library,连makefile都没有QQ
: 要求後第二版丢过来,加上了CMakeList.txt。
: 总算可以试图编译,但还是过不了。
: 询问後才发现他们的toolchain是自己编的不是从Android官网抓的 Orz
: 我想想这样花太多时间了,所以询问对方能不能直接提供编译完的版本。
: 於是对方最後丢了一个.so过来,看来是要我们自己封JNI...
: 先撇开之前自己编译的问题,我只想确定一下,身为Android工程师会封JNI是常识吗?
: 我大部分使用别人library的经验都是在gradle里面设定dependency
: 少部分是抓下来後import module。
: 这还是第一次碰到需要自己封JNI的情况。
: 因为公司也只有我一个Android工程师,
: 所以想询问一下有Android工作经验的人这个问题。
: 请问你们有自己封装过JNI吗? 这会是Android工程师的必备技术吗?
之前有听朋友聊过在系统厂的一些大小事,如果有说错请给予指正
JNI, Jave native interface, 一般写Java的人应该很少会碰到这层,
除非是有要添加硬体特徵,或是底层有一个C或C++ Library想要提供给上层Java使用,
回到原po问到的,会JNI算是常识吗 ? 那就要看你怎麽定义Android工程师了,
如果是IC厂的Android BSP工程师说不会,大概可以包一包回家。
但如果是系统厂的Android BSP工程师说不会,其实蛮正常的,
因为通常拿到一包code都是有Android每层的原始码,linux driver, JNI, framework, android app
然後接下来的工作就是改linux driver甚至改device tree就会动了,
会需要改到JNI通常都是Android版本有落差,这个一样会丢回去给IC厂处理。
--
Sent from my Windows
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 118.171.93.46
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Soft_Job/M.1503045498.A.801.html
1F:推 cdfq152313: 喔喔,感谢分享 08/18 16:44
2F:→ angusyu: 这不是app工程师。我反而很奇怪一堆人说jni简单是怎样 08/18 21:35
3F:→ profiles: JNI很古老噢,记得我用Jdk1.2时就有了, 08/18 22:18
4F:→ profiles: 其实蛮容易,前题你要会用C 08/18 22:18
5F:→ angusyu: 真的 要能发废文 写最新的app 还要会C跟JNI 还真是简单 08/19 00:30
6F:→ cha122977: IC厂的也不一定会JNI哦,改framework不需要直接会JNI 08/19 03:56
7F:→ cha122977: Android.mk包好好 Service用AIDL建的也不用写JNI 08/19 04:22
8F:嘘 pttuser: 最好系统厂bsp team不会jni,那我看到的是什麽? 08/19 15:42
9F:嘘 pttuser: 以前在系统厂从改driver到app层收event一条龙都要会 08/19 15:44
10F:嘘 pttuser: 更何况是jni,常常在jni作一些custom behavior给app接 08/19 15:48
11F:推 oneheat: 看module ,越来越多走service後,jni 就渐渐退出,反而 08/19 16:33
12F:→ oneheat: 是aidl比较流行 08/19 16:33
13F:→ xam: bsp team作个两年应该都要知道jni,也要学的起来,要很熟倒未必 08/19 23:08
14F:嘘 aleelyle: 用ndk是android security重要的一环 不重要? 或许吧 08/20 07:36
15F:→ doranako: 影音codec, pdf, 影像辨识大多都是c lib,不一定是控制 08/20 09:45
16F:→ doranako: 硬体才需要jni 08/20 09:45
17F:推 Ferrara: 网路协议很多都用c写 通讯相关的app都需要 08/20 19:18
18F:→ kurtsgm: jni我觉得满基本的欸... 08/20 23:47
19F:推 netburst: 看C强不强罗 08/21 11:25
20F:推 chiwa: JNI满基本的吧,看一下现有的code依样画葫芦总会写吧 08/21 21:47
21F:嘘 krizarlid: 唬烂 JNI根本基本 不会就是包一包回家 管你在哪 08/21 21:48
22F:→ robber1234: 你说的是BSP工程师? App工程师我看过的大部份都不会. 08/23 09:58