Android NDKでJNIを使用してアプリを高速化するには:Androidで動く携帯Javaアプリ作成入門(15)(1/3 ページ) Android NDK最新版でOpenGL ES 2.0をサポート 今回のテーマは「AndroidでJNI(Java Native Interface)を使用したアプリの高速化」です。C/C++やOpenGL ES(※)といったネイティブコードを使うツールなどのセットは、Android NDK(Native Development Kit)として提供されていて、JNIを使用した高速化に欠かせません。 ※OpenGL ES(OpenGL for Embedded Systems)OpenGL ES(OpenGL for Embedded Systems)携帯情報端末や組み込み向けのOpenGLのサブセット。OpenGLは、一般的に普及しているグラフィックス
Showing results for "{{results.suggestedQuery.query}}". Search instead for "{{query}}"? Did you mean "{{results.suggestedQuery.query}}"? Showing results from within “” View all results All Filtering: {{1 + results.length}} {{results.length}} results for "" Filter Show beta No results were found. Please try a different keyword. Please enter your search query. No results match the filter you have se
IntroductionThe JNI is a low-level mechanism for communication between Java and C-based code. The most common use of the technology is accessing system functionality that does not easily match up with cross-platform Java features or APIs. In the case of Mac OS X, this could mean accessing data from the Mac OS X Address Book, or even displaying Quartz Composer compositions. The JNI can also be used
アップルにある「Building a JNI Universal Application with Xcode」というドキュメントがちょっと古くてXcode 3.0(Leopard)だとうまくチュートリアルの通りに進まなかったのでメモ。 Creating the Initial Application まず、最初からつまづく。なんといってもNew Projectに「Java Swing Application」が見当たらない。出来上がりのアプリケーションから察するにXcode 3.0では単純に「Java Application」と名前を変えているらしい。 プロジェクトの構成 そして一番の問題がプロジェクトがほとんどAnt-basedになっちゃってること。 そのせいで新規にビルドフェーズをXcode上から追加できない。全部自分でbuild.xmlをいじらなくちゃいけない模様。 まあJava開
eclipse/pluginsの中にcom.sun.jna_3.0.5なるものが。class郡を覗くとJNIを呼ぶためのラッパっぽい感じなので気になって検索かけたら発見。https://jna.dev.java.net JNIなしでネイティブライブラリにJavaから直接アクセスできるものらしい。対応OSも充実している*1。 JNAはかなり便利にできている。もうJNI使わなくて良し。ライブラリに対応するインターフェースを用意して、その中に関数を定義しておき、そのインターフェース型を指定してネイティブライブラリをロードするという芸当ができる。メソッドに勝手にマッピングしてくれて実装したクラスインスタンスを作ってくれちゃうのだ! 以下はWin32APIのメッセージボックスだけの例。 import com.sun.jna.Native; import com.sun.jna.WString; im
少し前まではJavaは遅いとかいろいろ言われてきましたが、最近ではC言語と比較しても実行時間が200%程度のロスで済むぐらいまで速くなっていますね。純粋にロジック部分のみならほぼ変わりがないのを考えると、かなり速いといっていいと思います。他のLightweight Languageは500%〜2000%ぐらいかかりますし。 ところで、私は5年ぐらいJavaを使ってきたつもりですが、クラスライブラリはともかくJVMの実装はあまり知らなかったりします。最近ちょっと色々あってパフォーマンスに厳しい環境でJavaを扱うことになりそうなので、Javaの最適化について調べています。 最近はなにかとOSSにするのが流行りのようで、Java VMも昨年、GPLでリリースされました。 なので、どのような実装になっているかをソースコードから見ていきたいと思います。 私はコンパイラや最適化の専門家ではないので、
Solarisの例: % cc -G -I /usr/java/include -I /usr/java/include/solaris JniJikken.c -o libJniJikken.so Solarisでのmakefileの例: all: libJniJikken.so lib%.so: %.c %.h cc -G $< -I /usr/java/include -I /usr/java/include/solaris -o $@ %.h: %.class javah $* %.class: %.java javac $< ↑この例の場合、javaのコンパイル・javahでの生成まで含んでいる。 VC++の例: インクルードパスの追加方法参照。 ↓JDK1.6の場合 C:\Program Files\Java\jdk1.6.0\include,C:\Program Files\
日頃より、アレスネットをご愛顧いただきまして誠にありがとうございます。 「ホームページサービス」のサービス提供は2016年1月31日をもちまして終了させていただきました。 これまで長らくご利用いただき、誠にありがとうございました。 今後も、皆様によりよいサービスをご提供させていただけるよう、サービス品質向上に努めて参りますので、何卒、ご理解いただけますようお願 い申し上げます。 <アレスネットをご契約のお客様へ> 後継サービスとして「userwebサービス」を提供させていただいております。 詳しくは、以下のリンクをご参照ください。 ▼「userwebサービス」のご案内 http://www.ejworks.info/userhp/alles/index.html 今後ともアレスネットをご愛顧いただけますようお願い申し上げます。 株式会社イージェーワークス アレスネット カスタマーサポート
Skip to contentCategory: jni142月2007 メソッドを呼び出すネイティブコードからクラスやオブジェクトのメソッドを... Fujiko feature, jni142月2007 参照参照とポインタは同じ概念のはずだが,JNIでは明確に... Fujiko feature, jni111月2007 フィールドの取得ネイティブコードからクラスやオブジェクトのフィールド... Fujiko feature, jni1112月2006 JNIろくにCをやってないのにJava Native In... Fujiko feature, jni最近の投稿 理系はインターネットカジノに勝てるのか パッド popenとpclose beanタグライブラリ ギガビットイーサネットってなんだ?
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く