2012-01-10 2 views
1

이미지 인식 시스템 IQEngines을 사용하는 응용 프로그램을 구현하고 싶습니다. 나는 그것을 위해 일식을 사용하고있다. IQEngines에서 제공하는 테스트 코드를 시도하고 있지만 결과는 "apple.jpg 파일이 존재하지 않습니다"입니다.Android 응용 프로그램 개발시 외부 라이브러리 사용

어디에 문제가 있는지 잘 모르겠습니다. 코드가 제대로 작동 할 수 있도록 관련 jar 파일을 모두 가져온 것 같습니다. 이클립스에서 기본 메서드를 onCreate로 변경하여 작업을 실행할 수 있도록했습니다. 단서가 있습니까? 누구도 IQEngines를 사용한 적이 있습니까?

은 그래서 당신은 당신이 필요로하는 모든 것을 가져온 확실 경우

package com.Camera; 

import java.io.File; 
import java.util.ArrayList; 

import android.app.Activity; 
import android.os.Bundle; 
import android.widget.TextView; 

import com.iqengines.javaiqe.javaiqe; 
import com.iqengines.javaiqe.javaiqe.IQEQuery; 

/** 
* IQEngines Java API 
* 
* test file 
* 
* @author 
*/ 




public class javaiqe_test extends Activity{ 

    @Override 
     public void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.main); 
      TextView tv = (TextView) findViewById(R.id.resultImg); 

      final String KEY = "64bc6a7fd77643899d3af8b305924165"; 
     final String SECRET = "c27e162ea7c24c619f850014124598"; 

     /* 
     * An API object is initialized using the API key and secret 
     */ 
     iqe = new javaiqe(KEY, SECRET); 
     uploadObject(); 

     /* 
     * You can quickly query an image and retrieve results by doing: 
     */ 

     File test_file = new File("apple.jpg"); 

     // Query 
     IQEQuery query = iqe.query(test_file); 

     System.out.println("query.result : " + query.getResult()); 
     System.out.println("query.qid : " + query.getQID()); 

     tv.setText(query.getResult()); 

     // Update 
     /* String update = iqe.update(); 
     System.out.println("Update : " + update);*/ 

     // Result 
     String result = iqe.result(query.getQID(), true); 
     System.out.println("Result : " + result); 


     // Upload 
     //uploadObject(); 

    } 

    /** 
    * Sample code for uploading an object 
    */ 
    public static void uploadObject() { 
     // Your object images 
     ArrayList<File> images = new ArrayList(); 
     images.add(new File("res/drawable/apple.jpg")); 


     // Object infos 
     String name = "Computational Geometry, Algorithms and Applications, Third Edition"; 

     // Optional infos 
     String custom_id = "book0001"; 
     String meta = "{\n\"isbn\": \"9783540779735\"\n}"; 
     boolean json = false; 
     String collection = "books"; 

     // Upload 
     //System.out.println("Upload : " + iqe.upload(images, name, custom_id, meta, json, collection)); 
     System.out.println("Upload : " + iqe.upload(images, name)); 


    } 

    private static javaiqe iqe = null; 

} 
+2

파일 "apple.jpg"은 어디에 있습니까? 안드로이드 시스템은 어디서 그것을 찾을 지 모른다. 이 파일을 자산 디렉토리에 저장 하시겠습니까, 아니면 SD 카드의 어딘가에 있습니까? 아니면 리소스입니까? – Grimmace

+0

귀하의 질문에 나는 당신이 당신의 자원을 찾을 수 없다는 아이디어를 얻었습니까? – karla

답변

0

를 첨부하지 않는 javaiqe_test.java 사용되지만 매우 길어 javaiqe.java있다, 그것은 수 유용한, 이클립스 프로젝트를 청소하고 다시 빌드하는 경우. 다른 이유는 응용 프로그램을 '다시 배포하는'것을 잊어 버린 것일 수 있습니다.

This도 도움이 될 수 있습니다.

행운을 빈다. 아마도 약간의 세부 사항을 놓친 것 같습니다. Android 프로젝트에서 아무런 문제없이 외부 항아리를 사용해 왔습니다.

+0

이 작동하고 있습니다 ... –

+0

sd 카드에 저장된 이미지를 사용하여 이미지 파일을 만들어야합니다. –

관련 문제