0
這是我的第一個線程,請耐心等待。 :)在網站中搜索的Android服務
我想創建一個Android服務,搜索網站上的特定字符串。爲此,我試圖下載該網站並在html代碼中進行搜索,但應用程序在嘗試下載時總是崩潰。
有沒有人有任何想法如何做到這一點?
在此先感謝
這是我的第一個線程,請耐心等待。 :)在網站中搜索的Android服務
我想創建一個Android服務,搜索網站上的特定字符串。爲此,我試圖下載該網站並在html代碼中進行搜索,但應用程序在嘗試下載時總是崩潰。
有沒有人有任何想法如何做到這一點?
在此先感謝
我有一個similer問題,當我開始做一個Android應用程序,它可以掃描imdb.com查看電影信息。很多搜索互聯網和測試出來的東西后,我想出了這個:
import java.net.*;
import java.io.*;
URL url = new URL("websiteToLookAt");
InputStreamReader isr = new InputStreamReader(url.openStream());
BufferedReader bufferedReader = new BufferedReader(isr);
String lineThatIsBeingRead = null;
String theString;
while((lineThatIsBeingRead = bufferedReader.readLine()) != null){
if(lineThatIsBeingRead.contains("StringYouAreLookingFor")){
theString = lineThatIsBeingRead;
break;
}
}
String myName = "john";
如果你要測試是否myName.contains("oh");
它會返回true)我有可變theString在那裏,因爲我一直在尋找幾個字符串,但如果你只需要找到一個字符串,你可以刪除線6 & 11,只是有lineThatIsBeingRead爲您指定的字符串你正在尋找的字符串。
另一件要記住的事情是,java不允許你通過UI線程連接到互聯網(java希望你這麼做的方式是有意圖的,所以當你發佈應用程序時記得把它拿出來並使其運行在意圖上)。但是如果你添加到onCreate()方法
if(BuildVERSION.SDK_INT >= 9){
StrickMode.ThreadPolicy Policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(Policy);
}
它將繞過該規則。
希望這有助於您的項目,祝您好運!
用您的logcat發佈您的代碼。 –
它可能是缺乏權限,請嘗試: http://stackoverflow.com/questions/8593647/application-crashes-when-activity-starts –
您是否已將該服務添加到Manifest文件? – SathMK