2014-12-05 105 views
0

我有一個要在命令提示符下執行的命令提示符。此命令的目的是在我的應用程序上測試Google Analytics Campaign Measurement實現。Android - 命令提示符下的ADB命令(Windows)

下面的代碼是命令:

adb shell am broadcast -a com.android.vending.INSTALL_REFERRER -n com.example.androidapp/.app.service.CustomReceiver --es "referrer" "utm_source=testSource&utm_medium=testMedium&utm_term=testTerm&utm_content=testContent&utm_campaign=testCampaign" 

這個命令發送廣播的應用程序,所以當我訪問「引薦」參數,我能得到這個字符串:

"utm_source=testSource&utm_medium=testMedium&utm_term=testTerm&utm_content=testContent&utm_campaign=testCampaign" 

然而,在測試完代碼後,我能得到的唯一數值是:

"utm_source=testSource" 

然後我記得「&」字符意思是ESCAPE在命令提示符。所以,我試圖用「^ &」代替「&」,但我得到這樣的結果:

"utm_source=testSource^" 

如何獲得完整的字符串?或者我應該添加到我的代碼?

回答

0

\代替^

ADB在外殼和基本上不執行在Windows命令提示命令轉義。 ^轉義Windows命令提示符中的字符,但在shell中,您將不得不使用\

+0

你是不是用'\&'代替'^&'?我試過了,但我得到了這個輸出:''utm_source = testSource \「'。仍然不是完整的字符串。請幫忙! – Harry 2014-12-05 06:48:54

+1

你可以進入shell並執行它嗎?輸入'adb shell'並按下回車鍵,然後嘗試執行'am broadcast ...'命令。是的,使用'\&' – JoelFernandes 2014-12-05 06:59:37

+0

太棒了!即使沒有「反斜槓」或「^」,它也可以工作! – Harry 2014-12-05 07:05:37

0

以前遇到同樣的問題。你需要做的是先輸入adb shell,然後按Enter鍵。繼續在shell模式下填充其他命令。

&字符在shell模式下工作正常!

+1

請添加一個解釋爲什麼這應該解決問題以及它是如何工作的。請參閱[本頁](http://stackoverflow.com/help/how-to-answer)以獲取指導 – Tensibai 2015-04-22 09:50:04

相關問題