2014-10-02 78 views
0

我嘗試在Web瀏覽器中打開URL,但是當我這樣做,鏈接到谷歌爲什麼我的網址去谷歌

這是我的代碼:

String jokeUrl = "http://example.com/send.php?p1=" + deviceId + "&p2=" + strName + "&p3=" + Integer.toString(rate) + "&p4="; 
String url = strComment; 
url = url.replaceAll("\\n", "%0A"); 
url = url.replaceAll(" ", "%20"); 
jokeUrl = jokeUrl + strComment; 
Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(jokeUrl)); 
startActivity(browserIntent); 

例如,當我寫長文本,它會去谷歌,但當我發送短文本通常是。

我的strComment的TextView:

<EditText 
     android:id="@+id/etComment" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:layout_margin="4dp" 
     android:layout_weight="1" 
     android:ems="10" 
     android:maxLength="300" 
     android:inputType="textMultiLine" 
     android:maxLines="5" /> 

回答

0

它指出,URL字符串限制是2000個字符。檢查jokeUrl大小。

Log.i("Joke Url Size", jokeUrl.length() + " is the size");

對於URL檢查this

+0

這似乎更像是一個評論,而不是一個答案。 – 2014-10-02 12:18:40

+0

@DaveNewton查看我的更新 – programmer 2014-10-02 12:19:20

+0

@ user3722311所以評論不能超過300個字符? URL字符串中是否還有其他特殊字符? – 2014-10-02 12:21:22

0

考慮使用URLEncoder.encode()編碼所有字符串參數,如strCommentstrName

要將數據發送到後端,請考慮使用HTTP POST,而不是HTTP 012,如ACTION_VIEW所示。要發送POST請求,請使用HTTP堆棧,而不是像這樣的Intent