Android ndk Android ndk应用程序停止工作

Android ndk Android ndk应用程序停止工作,android-ndk,Android Ndk,我一直试图开始在我的android应用程序中添加本机代码,所以我查阅了大量的android NDK教程,但都没有用。我无法在模拟器或Galaxy S3上运行任何应用程序。我一直收到相同的错误:“不幸的是,[AppName]已停止工作” 我的ndk build命令运行成功,我得到了一个.so文件。我不知道文件应该是什么样子。这是我的 这在我看来像是胡言乱语,但我知道什么 这是我的日志 它表示未找到本机方法 以下代码是我的主要(也是唯一)活动 这是我的C代码(称为native.C) 这是我的舱单

我一直试图开始在我的android应用程序中添加本机代码,所以我查阅了大量的android NDK教程,但都没有用。我无法在模拟器或Galaxy S3上运行任何应用程序。我一直收到相同的错误:“不幸的是,[AppName]已停止工作” 我的ndk build命令运行成功,我得到了一个.so文件。我不知道文件应该是什么样子。这是我的

这在我看来像是胡言乱语,但我知道什么

这是我的日志 它表示未找到本机方法

以下代码是我的主要(也是唯一)活动

这是我的C代码(称为native.C)

这是我的舱单

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.ndksetup"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk
    android:minSdkVersion="19"
    android:targetSdkVersion="19" />

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name=".NDKSetupActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

</manifest>

您缺少
Java\uu
前缀。尝试将
native.c
中的函数名重命名为
Java\u com\u示例\u ndksetup\u NDKSetupActivity\u printLog


希望这能有所帮助。

关于正确的函数名,有
javah

cd bin/classes
javah com.company.MyClassWithNativeStuff com.company.Util

它生成.h文件。

Java包名是什么,问题所在的Java代码在哪里。非常感谢你。
LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_LDLIBS := -llog

LOCAL_MODULE    := ndksetup
LOCAL_SRC_FILES := native.c

include $(BUILD_SHARED_LIBRARY)
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.ndksetup"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk
    android:minSdkVersion="19"
    android:targetSdkVersion="19" />

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name=".NDKSetupActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

</manifest>
cd bin/classes
javah com.company.MyClassWithNativeStuff com.company.Util