2017-03-02 17 views
1

を使用してスクリーンセーバーを作成しますNativeInterfaceを継承しています。はそのために、私はネイティブインターフェースプロセスを使用していますので、私は「MyNativeContent」を作成した後、私はその後、その後、私のメインクラスを作成して、codenameoneを使用してアンドロイド携帯電話上でスクリーンセーバーを変更する</p> <p>をしようとしていますnativeInterface

ここに内容があります: package com.faugan.addscreen;

package com.faugan.addscreen; 

public class MyNativeContentImpl { 
    public void testAndroidNatif() { 
     // code for screensaver on android 
    } 

    public boolean isSupported() { 
     return true; 
    } 

} 
:私は私のアンドロイドディレクトリからMyNativeContentImpl.javaを開いて、私はこの内部を行った後、今私は、その後、すべてのプラットフォームのネイティブアクセスを生成するために、私のインターフェイス上で右クリックをする

import com.codename1.system.NativeInterface; 

/** 
* 
* @author ccpita 
*/ 
public interface MyNativeContent extends NativeInterface{ 
    public void testAndroidNatif(); 
} 

今、私はこれをコンパイルするとき、それは失敗し、私はこのエラーが生じています:

java.lang.ClassNotFoundExcepti上:sun.misc.Launcher $でjava.lang.ClassLoader.loadClass(ClassLoader.java:424) でjava.net.URLClassLoader.findClass(URLClassLoader.java:381) で com.faugan.addscreen.MyNativeContentImpl (ClassLoader.java:1001) com.codename1.impl。 javase.ClassPathLoader.findClass(ClassPathLoader.java:100) at com.codename1.impl.javase.ClassPathLoader.loadClass(ClassPathLoader.java:50) at java.lang.Class.forName0(ネイティブメソッド) at java.lang .Class.forName(Class.java:264) at com.codename1.system.NativeLookup.crea te(NativeLookup.java:81) at com.faugan.addscreen.MyApplication.lambda $ start $ 0(MyApplication.java:47) at com.codename1.ui.util.EventDispatcher.fireActionEvent(EventDispatcher.java:349) com.codename1.ui.Component.pointerReleased(Component.java:3260) com.codename1.ui.Form.pointerReleased(Form.java:2651) at com.codename1.ui.Component.pointerReleased(Component.java) :3239)レンダリングフレームが722ミリ秒で長すぎました com.codename1.ui.Display.handleEvent(Display.java:2025) com.codename1.ui.Display.edtLoopImpl(Display.java:1070) at com。 codename1.ui.Display.mainEDTLoop(Display.java:999) com.codename1.ui.RunnableWrapper.run(RunnableWrapper.java:120) at com .codename1.impl.CodenameOneThread.run(CodenameOneThread.java:176) (com.faugan.addscreen.MyApplication.lambda $ start $ 0(MyApplication.java:48) 、com.codename1.ui)。イベント・ディスパッチャー.fireActionEvent(EventDispatcher.java:349) at com.codename1.ui.Component.pointerReleased(Component.java:3260) at com.codename1.ui.Form.pointerReleased(Form.java:2651) at com.codename1.ui.Component.pointerReleased(Component.java:3239) com.codename1.ui.Display.handleEvent(Display.java:2025) com.codename1.ui.Display.edtLoopImpl(Display.java: 1070) at com.codename1.ui.Display.mainEDTLoop(Display.java:999) at com.codename1.ui.RunnableWrapper.run(Runnable Wrapper.java:120) at com.codename1.impl.CodenameOneThread.run(CodenameOneThread。Javaの:176)

は今私の質問は以下のとおりです。

1)私は、これらのエラーを持っていながら?これはシミュレータで実行されているためですか?

2)testAndroidNatif()の方法で、アンドロイド携帯のスクリーンセーバーを変更する方法を教えてください。

おかげ

答えて

1

あなたはそれを右クリックし、ネイティブアクセスを生成選択し、NativeInterfaceを拡張MyNativeContentインタフェースを作成することから始めなければなりません。

ファイル]タブに切り替え、フォルダを展開native - >addscreen - >android - >com - >fauganMyNativeContentImpl.javaファイルを開きます。ここにあなたのすべてのAndroidネイティブコードが追加されます。

このフォルダにAndroidファイルを追加して、MyNativeContentImpl.javaファイルで参照することができます。 isSupported()メソッドでtrueを返すことを忘れないでください。MyNativeContentImplあなたの2番目の質問については

、これは自分でやるかandroidjavaタグでのStackOverflowに尋ねるか、sample codes to change screensaver from an Android Appに周りに検索する必要がAndroidの固有のものです。したがって、この質問を見てください。android-screen-saver-sample-code

+0

最初の質問については、私はまだエラーが発生していますが、2番目の質問では、送信したリンクは、ちょうどコードとしてXMLコンテンツが表示されます私はcodenameoneでそれを統合できますか?私はネイティブのアンドロイドコーディングを知らない、あなたはcodenameoneを使用し、内部にアンドロイドのネイティブコードを統合する例を挙げていただけますか?ありがとう –

関連する問題

 関連する問題