No implementation found for native Landroid/

本文记录了一次在Android框架中加入JNI文件后遇到的No implementation found for native错误,并分享了解决方案,即在AndroidRuntime.cpp中添加相应的注册代码。

 

No implementation found for native Landroid/

分类: Android 200人阅读 评论 (0) 收藏 举报

今天在framework加了一个jni文件, 发现在引用时一直提示 No implementation found for native Landroid/


最终发现 需要framework/base/cor/jni/AndroidRuntime.cpp中添加注册相应代码

 

晕,高了好久 原来是是这个问题

Process: com.bilibili.fatego, PID: 6367 java.lang.UnsatisfiedLinkError: No implementation found for void com.bun.miitmdid.utilsforrequestpermission.PermissionTransparentActivity.onCreate(android.os.Bundle) (tried Java_com_bun_miitmdid_utilsforrequestpermission_PermissionTransparentActivity_onCreate and Java_com_bun_miitmdid_utilsforrequestpermission_PermissionTransparentActivity_onCreate__Landroid_os_Bundle_2) - is the library loaded, e.g. System.loadLibrary? at com.bun.miitmdid.utilsforrequestpermission.PermissionTransparentActivity.onCreate(Native Method) at android.app.Activity.performCreate(Activity.java:9391) at android.app.Activity.performCreate(Activity.java:9363) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1541) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:4598) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:4821) at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:242) at android.app.servertransaction.TransactionExecutor.executeNonLifecycleItem(TransactionExecutor.java:138) at android.app.servertransaction.TransactionExecutor.executeTransactionItems(TransactionExecutor.java:108) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:85) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:3110) at android.os.Handler.dispatchMessage(Handler.java:115) at android.os.Looper.loopOnce(Looper.java:298) at android.os.Looper.loop(Looper.java:408) at android.app.ActivityThread.main(ActivityThread.java:9952) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:613) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1074)
09-19
Execution failed for task ':app:buildCMakeDebug[x86_64]'. > com.android.ide.common.process.ProcessException: ninja: Entering directory `D:\xjyWork\SF4310_sof\SF4310_AR\app\.cxx\Debug\5v4l4e3w\x86_64' [1/1] Linking CXX shared library D:\xjyWork\SF4310_sof\SF4310_AR\app\build\intermediates\cxx\Debug\5v4l4e3w\obj\x86_64\libexample.so FAILED: D:/xjyWork/SF4310_sof/SF4310_AR/app/build/intermediates/cxx/Debug/5v4l4e3w/obj/x86_64/libexample.so cmd.exe /C "cd . && C:\Users\32182\AppData\Local\Android\Sdk\ndk\27.0.12077973\toolchains\llvm\prebuilt\windows-x86_64\bin\clang++.exe --target=x86_64-none-linux-android28 --sysroot=C:/Users/32182/AppData/Local/Android/Sdk/ndk/27.0.12077973/toolchains/llvm/prebuilt/windows-x86_64/sysroot -fPIC -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fopenmp=libomp -fno-limit-debug-info -static-libstdc++ -Wl,--build-id=sha1 -Wl,--no-rosegment -Wl,--no-undefined-version -Wl,--fatal-warnings -Wl,--no-undefined -Qunused-arguments -shared -Wl,-soname,libexample.so -o D:\xjyWork\SF4310_sof\SF4310_AR\app\build\intermediates\cxx\Debug\5v4l4e3w\obj\x86_64\libexample.so CMakeFiles/example.dir/Reco.cpp.o CMakeFiles/example.dir/JNIReco.cpp.o D:/xjyWork/SF4310_sof/SF4310_AR/app/src/main/cpp/../../../src/libs/x86_64/libncnn.so -lopencv_java4 -landroid -llog -ljnigraphics -latomic -lm && cd ." ld.lld: error: unable to find library -lopencv_java4 clang++: error: linker command failed with exit code 1 (use -v to see invocation) ninja: build stopped: subcommand failed. * Try: > Run with --info or --debug option to get more log output. > Run with --scan to get full insights. > Get more help at https://help.gradle.org. 怎么改
03-22
jafrsho07010日志: 2025-09-23 18:10:10.394 6255-6255 JafCommonLog jp.or.jaf.syg D [app] [clientID] [172.16.1.15] [main:(ID=2)] [JafViewModel:navigate:586] Navigation: jafrsho07010 with data: JAFRSHO07010Model 2025-09-23 18:10:10.396 6255-6255 JafCommonLog jp.or.jaf.syg D [app] [clientID] [172.16.1.15] [main:(ID=2)] [JafNavDataManager:store:82] JafNavDataManager: オブジェクト保存 ID=b1af2f42-4aad-4e1d-afeb-dca429282e70, Type=JAFRSHO07010Model 2025-09-23 18:10:10.399 6255-6255 JafCommonLog jp.or.jaf.syg E [app] [clientID] [172.16.1.15] [main:(ID=2)] [JafNavHostKt:JafNavHost:invokeSuspend:125] 不正なナビゲーションルート: jafrsho07010, エラー: Navigation destination that matches route jafrsho07010?data_id=b1af2f42-4aad-4e1d-afeb-dca429282e70 cannot be found in the navigation graph ComposeNavGraph(0x0) startDestination={Destination(0xee073984) route=jafrsho01010} 2025-09-23 18:10:10.401 6255-6255 JafCommonLog jp.or.jaf.syg D [app] [clientID] [172.16.1.15] [main:(ID=2)] [JafNavDataManager:store:82] JafNavDataManager: オブジェクト保存 ID=99be5cf6-223f-4339-ad71-2b462cb08562, Type=JAFRSHO07010Model 2025-09-23 18:10:10.426 6255-6255 JafCommonLog jp.or.jaf.syg D [app] [clientID] [172.16.1.15] [main:(ID=2)] [JafNavDataManager:peek:148] JafNavDataManager: オブジェクト参照 ID=99be5cf6-223f-4339-ad71-2b462cb08562, Type=JAFRSHO07010Model 2025-09-23 18:10:10.480 1434-1498 SurfaceFlinger surfaceflinger D duplicate layer name: changing jp.or.jaf.syg/jp.or.jaf.syg.SygMainActivity to jp.or.jaf.syg/jp.or.jaf.syg.SygMainActivity#1 2025-09-23 18:10:10.483 6255-6255 jp.or.jaf.syg jp.or.jaf.syg W Accessing hidden method Landroid/view/RenderNode;->getScaleX()F (dark greylist, linking) 2025-09-23 18:10:10.512 1418-1418 allocator@2.0-s and...raphics.allocator@2.0-service I type=1400 audit(0.0:2128): avc: denied { read write } for path="/dev/fastpipe" dev="tmpfs" ino=7176 scontext=u:r:surfaceflinger:s0 tcontext=u:object_r:device:s0 tclass=chr_file permissive=1 2025-09-23 18:10:10.519 1434-1434 Binder:1434_3 surfaceflinger I type=1400 audit(0.0:2129): avc: denied { getattr } for path="/dev/fastpipe" dev="tmpfs" ino=7176 scontext=u:r:surfaceflinger:s0 tcontext=u:object_r:device:s0 tclass=chr_file permissive=1 2025-09-23 18:10:10.575 6255-6288 EGL_emulation jp.or.jaf.syg E tid 6288: eglSurfaceAttrib(1493): error 0x3009 (EGL_BAD_MATCH) 2025-09-23 18:10:10.575 6255-6288 OpenGLRenderer jp.or.jaf.syg W Failed to set EGL_SWAP_BEHAVIOR on surface 0x7638696e4400, error=EGL_BAD_MATCH 2025-09-23 18:10:10.577 2140-2140 ContextImpl com.android.coreservice W Calling a method in the system process without a qualified user: android.app.ContextImpl.startService:1531 android.content.ContextWrapper.startService:664 android.content.ContextWrapper.startService:664 com.android.coreservice.CoreBroadcastReceiver.onReceive:70 android.app.ActivityThread.handleReceiver:3424 2025-09-23 18:10:10.632 1564-1571 System system_server W A resource failed to call close. 2025-09-23 18:10:10.633 1564-1571 chatty system_server I uid=1000(system) FinalizerDaemon identical 19 lines 2025-09-23 18:10:10.633 1564-1571 System system_server W A resource failed to call close. 2025-09-23 18:10:11.153 6255-6255 JafCommonLog jp.or.jaf.syg D [app] [clientID] [172.16.1.15] [main:(ID=2)] [JafNavDataManager:peek:148] JafNavDataManager: オブジェクト参照 ID=99be5cf6-223f-4339-ad71-2b462cb08562, Type=JAFRSHO07010Model 2025-09-23 18:10:11.160 6255-6255 chatty jp.or.jaf.syg I uid=10057(jp.or.jaf.syg) identical 1 line 2025-09-23 18:10:11.171 6255-6255 JafCommonLog jp.or.jaf.syg D [app] [clientID] [172.16.1.15] [main:(ID=2)] [JafNavDataManager:peek:148] JafNavDataManager: オブジェクト参照 ID=99be5cf6-223f-4339-ad71-2b462cb08562, Type=JAFRSHO07010Model 2025-09-23 18:10:12.925 1419-1464 EmuHWC2 and...graphics.composer@2.1-service D sent 324 syncs in 60s jafrsho07010画面可以进去 jafrsho07030日志: 2025-09-23 18:11:29.177 6517-6557 jp.or.jaf.syg jp.or.jaf.syg W Long monitor contention with owner arch_disk_io_1 (6555) at net.zetetic.database.sqlcipher.SQLiteDatabase net.zetetic.database.sqlcipher.SQLiteOpenHelper.getWritableDatabase()(SQLiteOpenHelper.java:277) waiters=2 in net.zetetic.database.sqlcipher.SQLiteDatabase net.zetetic.database.sqlcipher.SQLiteOpenHelper.getWritableDatabase() for 568ms 2025-09-23 18:11:29.177 6517-6557 SQLiteConnection jp.or.jaf.syg I Database keying operation returned:0 2025-09-23 18:11:29.357 6517-6557 sqlcipher jp.or.jaf.syg D ERROR CORE sqlcipher_page_cipher: hmac check failed for pgno=1 2025-09-23 18:11:29.357 6517-6557 sqlcipher jp.or.jaf.syg D ERROR CORE sqlite3Codec: error decrypting page 1 data: 1 2025-09-23 18:11:29.357 6517-6557 sqlcipher jp.or.jaf.syg D ERROR CORE sqlcipher_codec_ctx_set_error 1 2025-09-23 18:11:29.357 6517-6557 SQLiteLog jp.or.jaf.syg E (26) file is not a database in "SELECT COUNT(*) FROM sqlite_schema;" 2025-09-23 18:11:29.357 6517-6557 jp.or.jaf.syg jp.or.jaf.syg W JNI critical lock held for 179.624ms on Thread[24,tid=6557,Runnable,Thread*=0x76386d34dc00,peer=0x140010f8,"arch_disk_io_3"] 2025-09-23 18:11:29.357 6517-6557 SQLiteDatabase jp.or.jaf.syg E Failed to open database '/data/user/0/jp.or.jaf.syg/databases/vehicle_database'. net.zetetic.database.sqlcipher.SQLiteNotADatabaseException: file is not a database (code 26): , while compiling: SELECT COUNT(*) FROM sqlite_schema; at net.zetetic.database.sqlcipher.SQLiteConnection.nativePrepareStatement(Native Method) at net.zetetic.database.sqlcipher.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:973) at net.zetetic.database.sqlcipher.SQLiteConnection.executeForLong(SQLiteConnection.java:628) at net.zetetic.database.sqlcipher.SQLiteConnection.open(SQLiteConnection.java:240) at net.zetetic.database.sqlcipher.SQLiteConnection.open(SQLiteConnection.java:202) at net.zetetic.database.sqlcipher.SQLiteConnectionPool.openConnectionLocked(SQLiteConnectionPool.java:474) at net.zetetic.database.sqlcipher.SQLiteConnectionPool.open(SQLiteConnectionPool.java:188) at net.zetetic.database.sqlcipher.SQLiteConnectionPool.open(SQLiteConnectionPool.java:180) at net.zetetic.database.sqlcipher.SQLiteDatabase.openInner(SQLiteDatabase.java:1028) at net.zetetic.database.sqlcipher.SQLiteDatabase.open(SQLiteDatabase.java:1013) at net.zetetic.database.sqlcipher.SQLiteDatabase.openDatabase(SQLiteDatabase.java:840) at net.zetetic.database.sqlcipher.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:359) at net.zetetic.database.sqlcipher.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:278) at net.zetetic.database.sqlcipher.SupportHelper.getWritableDatabase(SupportHelper.java:60) at androidx.room.RoomDatabase.inTransaction(RoomDatabase.kt:632) at androidx.room.RoomDatabase.assertNotSuspendingTransaction(RoomDatabase.kt:451) at androidx.room.RoomDatabase.query(RoomDatabase.kt:480) at androidx.room.util.DBUtil.query(DBUtil.kt:75) at jp.or.jaf.syg.data.local.dao.transaction.TShireiDataDao_Impl$28.call(TShireiDataDao_Impl.java:13605) at jp.or.jaf.syg.data.local.dao.transaction.TShireiDataDao_Impl$28.call(TShireiDataDao_Impl.java:13601) at androidx.room.CoroutinesRoom$Companion$execute$4$job$1.invokeSuspend(CoroutinesRoom.kt:87) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:108) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) at java.lang.Thread.run(Thread.java:764) 2025-09-23 18:11:32.426 1431-1431 ldinit ldinit I type=1400 audit(0.0:2155): avc: denied { read } for name="partitions" dev="proc" ino=4026532050 scontext=u:r:ldinit:s0 tcontext=u:object_r:proc:s0 tclass=file permissive=1 2025-09-23 18:11:32.426 1431-1431 ldinit ldinit I type=1400 audit(0.0:2155): avc: denied { open } for path="/proc/partitions" dev="proc" ino=4026532050 scontext=u:r:ldinit:s0 tcontext=u:object_r:proc:s0 tclass=file permissive=1 2025-09-23 18:11:32.426 1431-1431 ldinit ldinit W type=1300 audit(0.0:2155): arch=c000003e syscall=257 success=yes exit=6 a0=ffffff9c a1=76391789f1b8 a2=0 a3=0 items=0 ppid=1 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=4294967295 exe="/system/bin/ldinit" subj=u:r:ldinit:s0 key=(null) 2025-09-23 18:11:32.426 1358-1358 auditd pid-1358 W type=1327 audit(0.0:2155): proctitle="/system/bin/ldinit" 2025-09-23 18:11:32.426 1358-1358 auditd pid-1358 W type=1320 audit(0.0:2155): jafrsho07030画面出现问题
09-24
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值