私は Android の経験がなく、Samsung S-Pen SDK 2.3 を使用して非常に単純なアプリケーションを作成しようとしています。私は、Samsung 開発者の Web サイトからこのチュートリアルに従っています。最も基本的な例を実装すると、次のエラーが発生します。
WARNING: Could not load libjni_secime natives
No implementation found for native Lcom/bst/HwBeautify/BeautifyNative;.nativeCBInitEngine:()I
threadid=11: thread exiting with uncaught exception (group=0x41a242a0)
...
FATAL EXCEPTION: Thread-1829
java.lang.UnsatisfiedLinkError: Native method not found: com.bst.HwBeautify.BeautifyNative.nativeCBInitEngine:()
at com.bst.HwBeautify.BeautifyNative.nativeCBInitEngine(Native Method)
at com.bst.HwBeautify.BeautifyNative.cbInitEngine(SourceFile:107)
at com.bst.HwBeautify.BeautifyManager.b(SourceFile:87)
at com.bst.HwBeautify.BeautifyManager.a(SourceFile:85)
at com.bst.HwBeautify.BeautifyManager$1.run(SourceFile:64)
at java.lang.Thread.run(Thread.java:856)
...
S-Canvas is not created yet. Call "changeModeTo" in onInitialized() of SCanvasInitializeListener or call it after onInitialized() SCanvasLayout is up to been initailized
... No implementation found for native Lcom/bst/HwBeautify/BeautifyNative;.nativeCBInitEngine:()I threadid=16: thread exiting with uncaught exception (group=0x41a242a0)
キャンバスを初期化するアクティビティのコード全体を次に示します。
package com.example.canvastest;
import com.samsung.spensdk.SCanvasView;
import android.os.Bundle;
import android.app.Activity;
import android.content.Context;
import android.view.Menu;
import android.widget.RelativeLayout;
public class CanvasSpace extends Activity {
private Context mContext;
private RelativeLayout mCanvasContainer;
private SCanvasView mSCanvas;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_canvas_space);
mContext = this;
mCanvasContainer = (RelativeLayout) findViewById(R.id.canvas_container);
mSCanvas = new SCanvasView(mContext);
mCanvasContainer.addView(mSCanvas);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.canvas_space, menu);
return true;
}
}
そして、ここに私のレイアウトがあります:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".CanvasSpace" >
<RelativeLayout
android:id="@+id/canvas_container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center">
</RelativeLayout>
</RelativeLayout>
私が懸念しているのは、この非常に奇妙なS_Pen_SDK2.3
フォルダー構造です。通常のディレクトリの代わりに、パス付きのファイル名があります (705 項目)。
私はこのようなものを見たことがありません。なぜこのようなことをするのでしょうか?このようにフォルダを構成する利点はありますか? とにかく、私はチュートリアルに従い、ライブラリを参照し、armeabi
指定されたフォルダーにファイルを含めます。
これが私のパッケージエクスプローラーのビューです:
Web を検索したところ、この問題に対処する Samsung 開発者に関するスレッドが見つかりましたが、私の場合は役に立ちません。これまでに試したのは、フォルダー内のファイル名の前にあるこれらのパスを削除するarmeabi
ことでしたが、それは役に立ちませんでした。誰かがそれを機能させる方法のヒントを教えてくれれば、それは私にとって非常に役立ちます. プロジェクトに何があるのかを完全に明確にするために、非常に多くの明白なコードとスクリーンショットを含めました。