UnsatisfiedLinkError:setMessageHandler(本机方法)

2024-03-03

我正在制作一个应用程序,其中使用了一些本机方法,并且这些方法是在单独的类中定义的。当我在 Activity 类中创建该类的实例时,就会发生此类错误。

这是我的活动课

public class LoginActivity extends Activity
{
        PortSipSdk sdk;
    @Override
    public void onCreate(Bundle savedInstanceState) 
{
        super.onCreate(savedInstanceState);
        setContentView(R.layout.loginview);
        sdk = PortSipSdk.getInstance();//error is occurs at this line
        sdk.setOnRegisterListener(this);
    }
}

Java 类是

public class PortSipSdk {
    private final String TAG = "PortSipSdk";
    private static PortSipSdk instance;
    private PortSipNetwork mNetAssist;
    private KeyguardLock mKeyguardLock;

    private Context mContext;

    long mSessionID = PortSipErrorcode.INVALID_SESSION_ID;

    public synchronized static PortSipSdk getInstance() {
        if (instance == null) {
            instance = new PortSipSdk();            
        }
        return instance;
    }

    private PortSipSdk() {
        msgDispatcher = new MainHandler();
        setMessageHandler(msgDispatcher);
        videoRecorder = new PortSipVideoRecoder();
    }


    public native void setMessageHandler(Handler msghandler);

    // Initialize and register functions
    private native int initializeSDK(int enum_transport, String agent,
            String STUNServer, int STUNServerPort);
}

Log is

07-30 12:13:01.852: E/AndroidRuntime(651): FATAL EXCEPTION: main
07-30 12:13:01.852: E/AndroidRuntime(651): java.lang.UnsatisfiedLinkError: setMessageHandler
07-30 12:13:01.852: E/AndroidRuntime(651):  at com.portsip.PortSipSdk.setMessageHandler(Native Method)
07-30 12:13:01.852: E/AndroidRuntime(651):  at com.portsip.PortSipSdk.<init>(PortSipSdk.java:62)
07-30 12:13:01.852: E/AndroidRuntime(651):  at com.portsip.PortSipSdk.getInstance(PortSipSdk.java:55)
07-30 12:13:01.852: E/AndroidRuntime(651):  at com.portsip.test.LoginActivity.onCreate(LoginActivity.java:48)
07-30 12:13:01.852: E/AndroidRuntime(651):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
07-30 12:13:01.852: E/AndroidRuntime(651):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
07-30 12:13:01.852: E/AndroidRuntime(651):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
07-30 12:13:01.852: E/AndroidRuntime(651):  at android.app.ActivityThread.access$2300(ActivityThread.java:125)
07-30 12:13:01.852: E/AndroidRuntime(651):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
07-30 12:13:01.852: E/AndroidRuntime(651):  at android.os.Handler.dispatchMessage(Handler.java:99)
07-30 12:13:01.852: E/AndroidRuntime(651):  at android.os.Looper.loop(Looper.java:123)
07-30 12:13:01.852: E/AndroidRuntime(651):  at android.app.ActivityThread.main(ActivityThread.java:4627)
07-30 12:13:01.852: E/AndroidRuntime(651):  at java.lang.reflect.Method.invokeNative(Native Method)
07-30 12:13:01.852: E/AndroidRuntime(651):  at java.lang.reflect.Method.invoke(Method.java:521)
07-30 12:13:01.852: E/AndroidRuntime(651):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
07-30 12:13:01.852: E/AndroidRuntime(651):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
07-30 12:13:01.852: E/AndroidRuntime(651):  at dalvik.system.NativeStart.main(Native Method)

确保您的 NDK 二进制文件位于您的 APK 中。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

UnsatisfiedLinkError:setMessageHandler(本机方法) 的相关文章

  • Android 客户端中经过身份验证的 Cloud Endpoint 间歇性失败

    我有一个生产中的应用程序 在调用经过身份验证的云端点时收到大量强制 关闭 最能说明问题的是 java lang IllegalArgumentException 服务未注册 com google android gms internal e
  • 如何使用保存实例状态来保存活动状态?

    我一直在研究Android SDK平台 并且不太清楚如何保存应用程序的状态 因此 考虑到对 Hello Android 示例的这个小改动 package com android hello import android app Activi
  • Android Market 公司注册

    抱歉 这个问题与编程无关 但我无处可问 我在 android 帮助中心和支持中询问 但没有任何回应 在 Android Market 开设公司帐户需要什么 我希望我的公司被视为卖家 他们将如何验证公司的身份 我需要向市场提供哪些文件 Tha
  • Android 创建类似 iphone 的渐变

    我需要在我的 Android 应用程序中创建类似黑色 iphone 的渐变 请查看下图中顶部的黑色渐变 怎么做 谢谢 也许是这样的
  • 是否可以更改 Android L TimePickerDialog 的样式?

    我正在 Android L 模拟器上测试我的应用程序 我注意到 TimePickerDialog 已显着更改为 这与我的应用程序的主题不符 我想知道在 Android L 上运行时是否可以获得旧的 TimePickerDialog 样式 A
  • 动态改变ListView中TextView字体颜色

    我正在将 XML 文档绑定到自定义适配器 列表中的所有项目最初的字体颜色均为白色 XML 文档中的一个节点有一个我正在检查的属性 如果设置了该属性 我想将 ListView 中该项目的字体颜色更改为较深的颜色 我的代码似乎最初可以工作 但是
  • 如何在列表视图中每行右侧显示 4 个图标

    我想在列表视图的每一行右侧设置 3 个图标 我正在制作购物应用程序 我希望在列表视图中用户选择任何产品时 这样他 她可以以 3 种方式查看产品 就像用户选择图标一样1 这样用户可以在网格视图中看到产品 如果用户选择图标 2 这样用户可以在图
  • 如何更改 Kindle Fire 上 /mnt/SDcard 文件夹的读/写权限?

    我正在尝试在 Android 中开发 Amazon In app 为此 我从该网站下载示例代码https developer amazon com sdk in app purchasing sample code button click
  • 通过 adb 将触摸事件发送到设备[重复]

    这个问题在这里已经有答案了 我正在尝试使用以下方式将触摸事件发送到设备adb shell命令 这样我就可以为 UI 测试做一些基本的自动化 我已经关注了之前一些关于此问题的讨论 我确认了获取事件并使用sendevent 为每次触摸发送 6
  • NotificationCompact.Builder 和 ActionBarSherlock 的问题

    在下面的代码中 Eclipse发现错误 The method build is undefined for the type NotificationCompat Builder 在添加之前一切正常ActionBarSherlock htt
  • 当我们回来时,查看寻呼机片段状态寻呼机适配器出现白屏?

    我已经使用 FragmentStatePagerAdapter 使用视图分页器来加载片段 当我第一次来时 它会工作 但如果我从寻呼机适配器重定向到其他片段并返回 它将显示空白屏幕 fragment community xml
  • 在特定时间启动应用程序

    我想知道是否有可能 以及如何 在特定时间启动我的应用程序 就像在特定时间响起的闹钟一样 假设我希望我的应用程序在早上 8 点启动 这可行吗 您可以使用 AlarmManager 来完成此操作 这是一个简短的示例 首先你需要设置闹钟 Alar
  • 为什么找不到ImageView类?

    当我转到图形布局时 我在创建第一个 Android 应用程序 pdf Android Application Development for For Dummies 中的静默切换模式 时遇到了麻烦 在 main xml 文件中插入了 Ima
  • 从MySQL php中的特定列获取最大ID和最小ID

    我是新来的php现在尝试从中检索数据MySQL到安卓 这是我的工作细节 table In 检索总小时数函数 我想检索最短 ID 时间 and 最大 ID 超时 from MySQL到安卓通过php最后使用下面的代码来获取总小时数 假设 ID
  • 渲染脚本渲染在Android上比OpenGL渲染慢很多

    背景 我想根据Android相机应用程序的代码添加实时滤镜 但Android相机应用程序的架构是基于OpenGL ES 1 x 我需要使用着色器来自定义我们的过滤器实现 然而 将相机应用程序更新到OpenGL ES 2 0太困难了 然后我必
  • gradle 构建工具版本从 1.2.3 升级到 1.3.1 的问题

    我已将 gradle 构建工具从 1 2 3 升级到 1 3 1 并开始在 gradle 同步上看到以下错误 我使用 1 2 3 版本没有任何问题 我使用的是 gradleVersion 2 3 无论如何我可以避免这个错误吗 错误 您的项目
  • aSmack 即服务

    基本上我有一个运行整个项目的主类 该代码运行完美 尽管一旦应用程序失去焦点 它就会变得不活动 我想知道如何将其变成一项服务 一个会在启动时启动的 该应用程序将是一个用于通知的单向消息系统 IE 桌面客户端 gt Openfire 服务器 g
  • 规范注册 ID 和消息 ID 格式

    我的理解有问题Canonical Registration Id并让谷歌返回它 我特意注册了两次我的Android应用程序 以测试Canonical Registration Id 但是当我尝试向两者推送消息时Registration Id
  • TextView 用字母打乱了我的话

    我的要求 创建 传入气泡 其宽度按内容排列 最大宽度为 90 我有这个标记
  • 在所有布局方法之后调用哪个 Activity 方法?

    我需要做一些事情Activity调用所有布局方法后 所有Views 已就位并且Activity已准备好显示 哪种方法可以做到这一点 如果你想获得视图的宽度或其他东西 这应该有效 将其添加到您的 Activity 的 onCreate 中 V

随机推荐

  • gnu sort - 默认缓冲区大小

    我已阅读全文文档 http www gnu org software coreutils manual html node sort invocation html sort invocation对于 gnu sort 并在线搜索 但我找不
  • JS 将 blob url 转换为 Base64 文件

    有如下代码 console log blob var reader new window FileReader reader onloadend function console log reader result reader readA
  • 如何在 Flutter 中点击其他小部件时打开 DropdownButton?

    我需要有一个DropdownButton当点击其他一些小部件时 选项列表会以编程方式打开 显示 我知道这可能不是 UI 最佳实践 但我需要这种行为 举个例子 在像下面这样的结构中 我可能需要用胶带固定Text every 来打开邻近的Dro
  • 在 php 下拉列表中设置默认选项并在提交查询时保留

    我有下面的代码 它从 php ini 创建下拉菜单 我想在这里实现两件事 1 我想将其中一个选项设置为默认 它可以是硬编码的或从查询中选择的 2 当按下按钮时 应保留所选选项 我可以使用会话数据检索所选选项 echo print versi
  • PostgreSQL 10 => 11.1 关于 Brew 更新问题

    试图找到一条迁移路线PostgreSQL 10 6 to postgreSQL 11 1 Using pg upgrade 从两个版本 给我错误 从11 1我认为这将用于将过时的表格转换为货币 usr local Cellar postgr
  • 检查 ipython 中最后一个命令的退出状态

    有谁知道如何在 ipython 中检查最后执行的命令 退出代码 的状态 它应该存储为 exit code运行命令后 至少在即将发布的 v0 11 版本中
  • 实现基于查表的三角函数

    对于我在业余时间实现的视频游戏 我尝试使用查找表实现我自己的 sinf cosf 和 atan2f 版本 目的是使实现速度更快 但准确性较低 我的初步实现如下 这些函数可以工作 并返回良好的近似值 唯一的问题是他们是slower而不是调用标
  • python中获取shell命令的返回值

    我正在做os system追踪实时文件并grep对于一个字符串 grep 成功后如何执行某些操作 例如 cmd os system tail f file log grep i abc if cmd Do something and con
  • 检查表达式是否有效

    由于未捕获的异常而终止应用程序 NSInvalidArgumentException 原因 无法解析格式 字符串 12 6 1 我想验证表达式是否有效 我正在尝试使用以下代码 let equationString 12 6 do let e
  • 添加到别人对我不拥有的 GitHub 项目的拉取请求

    我可以添加提交吗别人的在我不是所有者的存储库上拉取请求 e g 用户 A 拥有项目 X 用户 B 分叉项目 X 创建功能分支 进行一些更改 然后提交拉取请求 用户 C 喜欢该拉取请求 但希望对其进行一些修改 FWIW 用户 C 已经拥有项目
  • jquery `append()` 是否删除重复的对象?

    我正在使用 jQuery 对表进行排序 大致遵循找到的代码here https stackoverflow com questions 10543618 jquery sort a table after adding a row to i
  • 如何使用 Prettier 在 vscode 上无法自动多行?

    我喜欢 Prettier 中的所有功能 但自动多行功能很烦人 是否可以将其关闭 就像添加多个 CSS 选择器和 HTML 属性时一样 我希望将它们保留在一行中 而不是将每个选择器 属性放在自己的行上 例如 在 CSS 上我希望它看起来像这样
  • 从单个文件反序列化多个对象[重复]

    这个问题在这里已经有答案了 我有许多对象 同一类 序列化到一个文件中 但是在反序列化它时 只有第一个序列化的对象被反序列化 序列化代码 public void save File f new File vehicule txt try if
  • voiceSynthesis.getVoices() 在 Windows 上返回空数组 [重复]

    这个问题在这里已经有答案了 我正在做一个Chrome 扩展程序 其中我正在使用语音合成 当我打字时speechSynthesis getVoices in the console我得到一个21种不同声音的阵列 伟大的 When I cons
  • 如何在 sbt 设置初始化期间打印到流

    我试图在配置 sbt 设置时打印一条警告消息 我最初的尝试看起来像这样 setting val log streams value log val condition check something if condition log war
  • pandas 字典列表以分隔列

    我有一个如下数据集 name status number message matt active 12345 job money none wife none james active 23456 group band wife yes m
  • 为什么我在连接到 Oracle 时收到“格式错误:属性为 'v$session.program'”?

    我正在从 Java 应用程序连接到 Oracle 11g 数据库 我收到以下异常 Caused by java sql SQLException Connection property format error Property is v
  • Blazor 读取目录

    如何将内容目录读入 Blazor I tried Path Combine Directory GetCurrentDirectory posts 但这会引发错误 Uncaught in promise Error System IO Di
  • 在 .NET 3.5 中使用 WCF DataContractJsonSerializer

    我正在尝试在我的 ASP NET MVC 2 站点中使用此处的地理编码代码 不幸的是 其中一些代码 特别是DataContractJsonSerializer 的使用只能通过 NET 4 0 实现 由于我的托管提供商不支持 NET 4 我被
  • UnsatisfiedLinkError:setMessageHandler(本机方法)

    我正在制作一个应用程序 其中使用了一些本机方法 并且这些方法是在单独的类中定义的 当我在 Activity 类中创建该类的实例时 就会发生此类错误 这是我的活动课 public class LoginActivity extends Act