我面臨在我的android代碼原生崩潰問題。
我的應用程序類似於此scenario (Click here)中描述的應用程序。崩潰與malloc和Android本機代碼免費
Java層會通過調用一些本機API調用本地層並引發一些進程。
本機調用在本機中啓動線程進行處理時立即返回。
一旦處理完成,本地線程將調用java函數(回調函數)來通知結果。這是通過使用JNI函數並使用* jvm-> AttachCurrentThread()完成的。
我從日誌貓的堆棧跟蹤轉儲中看到的是,它甚至沒有完成處理,並且總是在malloc或free(在某些malloc之後或某些frees之後並且不一致)之後崩潰。
有無論如何發現在android本機代碼中的內存損壞?
正如在android.mk文件中添加
LOCAL_EXPORT_LDLIBS += -lc
標誌在上述鏈路我試圖與該溶液中提到。但它沒有幫助,但我仍然能夠觀察到碰撞事故。
請讓我知道是否有人知道相同的解決方案。
P.S:我用於本地處理的代碼已完全針對其他產品(不在android上)進行測試。嘗試移植到android時遇到問題。
感謝&問候,
SSuman185
你能給最小的可行樣品嗎? – qrtt1
我嘗試過,但無法創建可行的示例。 – Suman