2011-10-15 28 views
2

我使用Android SDK中2.1和2.4.1的protobufAndroid和的Protobuf

這是我的.proto文件:

package com.example.proto; 

option optimize_for = LITE_RUNTIME; 

message DatabaseInsertRequest { 
    optional string stringInsert = 1; 
} 

message DatabaseSelectRequest { 
    optional string stringSelect = 1; 
} 

message DatabaseUpdateRequest { 
    optional string stringUpdate = 1; 
} 

我編這個.proto類(使用protoc)

之後我嘗試發送這個消息與套接字,並得到一個錯誤,(忘記它) 可能請你告訴我工作的例子?

+0

請提供錯誤 – thomas

回答

3

查看文檔!

JavaTutorial

+1

是的,我得到了這個教程,但它在java上工作,但不工作在android – fartyget

+0

protobuf代碼工作正常。通用程序唯一的事情是:具有參數和文件讀/寫的主函數。嘗試寫入sd卡上的文件並嘗試觸發活動中按鈕單擊事件的寫入操作(用於測試目的) – thomas

0
private void writeData() { 
    long startTime; 
    long totalTime; 
    DefaultHttpClient client = new DefaultHttpClient(); 
    startTime = System.currentTimeMillis(); 
    HttpPost httpPost = new HttpPost(Constants.mSereverUrl + Constants.PORT + Constants.ContactRequest); 
    try { 
     httpPost.setEntity(new ByteArrayEntity(toBytes)); 
     HttpResponse response = client.execute(httpPost); 
     totalTime = System.currentTimeMillis() - startTime; 
     if (mCurrentMode == PROTO_MODE) { 
      Constants.setProtoPostTime(totalTime); 
     } else if (mCurrentMode == JSON_MODE) { 
      Constants.setJsonPostTime(totalTime); 
     } 
     System.out.println("Request data sent"); 
     System.out.println("Response Code :: " + response.getStatusLine().getStatusCode()); 
    } catch (Exception e) { 
     e.printStackTrace(); 
    } 
} 

以上是從與Android集成的Protobuf我的樣本代碼的代碼片段。讓我知道你是否需要進一步的幫助。