2013-01-22 132 views
1

我在我的PC上使用Windows 7作爲OS。我期待創建一個應用程序,我將通過編程方式將AT命令發送給Mobile。 截至目前我正在通過PC和手機之間的USB數據線連接來實現這一目標。我最初的做法是使用JAVA。儘管我很快意識到,大多數用於JAVA和USB端口之間通信的API開發對於Windows而言都是死的,並且這些API中沒有一個支持Windows 7. 有人可以請建議哪種語言最適合這樣做嗎?PC到移動USB通信

感謝, 依禪AGGARWAL

+1

你沒有透露什麼類型的設備。 –

+0

我想要連接到PC的設備是手機。我不想限制品牌,但我想從黑莓開始。 –

+0

也許有點晚,但目前我使用http://theiphonewiki.com/wiki/MobileDevice_Library 這應該支持Windows端(它用C編寫,但你可以在VS中創建一個C++項目),我知道它可能將其集成到C#中。讓我知道,如果它可以幫助,我會發布更準確的答案。 –

回答

2

對於的Android創建與PC機連接,您需要使用adb命令(Android的SDK),如轉發同一端口:

adb forward tcp:7612 tcp:7612 

的Java看起來像:

private int port = 7612; 
.... 

/** 
* Runs the android debug bridge command of forwarding the ports 
* 
*/ 
private void execAdb() { 
    // run the adb bridge 
    try { 
     String runP = "adb forward tcp:" + port + " tcp:" + port + ""; 

     System.out.println("Run command through cmd: " + runP); 



     Process p=Runtime.getRuntime().exec(runP); 
     Scanner sc = new Scanner(p.getErrorStream()); 
     if (sc.hasNext()) { 
      while (sc.hasNext()) System.out.println(sc.next()); 
      System.out.println("Cannot start the Android debug bridge"); 
     } 
    } catch (Exception e) { 
     e.printStackTrace(); 
    } 
} 

之後,您可以實現任何TCP客戶端/服務器代碼,因爲端口已定義,您可以使用默認IP,如:127.0.0.1

對於iOS使用Objective C lang。

+0

嗨馬克西姆,感謝您的幫助,但我有幾個問題:1.您已經使用端口號7612,是否有一個具體的這是爲什麼?該端口是否被定義爲USB端口? –

+0

我用這個端口作爲自由的(總是)。從來沒有遇到過問題 –