androidに関するmishingのブックマーク (2)

  • JNIで呼び出したCの関数からJavaのメソッドをコールバックする

    Javaからnative呼び出し 呼び出されたCの関数から、呼び出し元のJavaにあるメソッドを呼び出し 予想外に苦戦したので、メモしておきます。 MinGWのインストール Cのビルドは、MinGWで行いました。 Symfoware Windows 7にMinGWをインストールする(mingw-get-inst使用) また、以前JNIを作成したときの記事は以下の通り。 Symfoware MinGWで作成したDLLをJavaからJNI経由で呼び出す Javaのサンプルプログラム Java側のサンプルプログラムはこんな感じになりました。 package jnitest; public class MainProccess { //ライブラリをロード static { System.loadLibrary("test"); } public static void main(String[]

    JNIで呼び出したCの関数からJavaのメソッドをコールバックする
  • HandlerとMessage - 別スレッドでのGUI操作 - 愚鈍人

    ProgressDialogのサンプルプログラムをながめていたら、Handlerという見なれぬクラスが使われていた。 Handlerクラスて何だろう、と思って調べてみたらすっかりはまってしまった。 他の記事もそうなのだが、今回は特にサンプルコードをもとに推察で書いている部分が多いので、誤りがあればご容赦いただきたい。 動作確認は、きちんとしているつもりであるが。 別スレッドでのGUI操作の問題点 アンドロイドでも、通常のjavaプログラムのようにThreadクラスが使える。 しかし、アンドロイドのGUIはシングルスレッドにしか対応していないため、 ウィジェット等のGUIオブジェクトを生成したスレッドとは別のスレッドから、ウィジェットに直接アクセスする事はできない。 まず次のプログラムを実行して、別スレッドから直接ウィジェットの操作を試みてみる。 このプログラムを実行してボタンを押すと、新し

    HandlerとMessage - 別スレッドでのGUI操作 - 愚鈍人
  • 1