2
在我的android項目中,我正在讀取一個由一個python腳本不斷更新的xml文件。併爲更新數據我不斷閱讀XML文件,並通過python腳本更新XML文件中的數據,我在我的應用程序中使用它。更好的方式來在python腳本和android應用程序之間進行通信
但現在的問題是,由於python腳本和我的android項目連續訪問一個xml文件(一個資源,所以我認爲併發問題),它需要這麼多時間從xml文件獲取數據並將數據寫入到xml文件python腳本。
那麼,是否有任何簡單的方法來在python腳本和android應用程序之間進行通信,所以我將避免使用xml文件並直接使用python腳本發送給我的數據? 而且它給我更快的執行。
我想這一點,(這是我訪問XML文件的Android代碼)
public void getData() throws Exception {
try
{
while(!isStop)
{
isStop=parseXmlData();
}
}
catch(Exception e)
{
e.printStackTrace();
}
}
private boolean parseXmlFile(){
//get the factory
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
boolean flag=false;
try {
//Using factory get an instance of document builder
DocumentBuilder db = dbf.newDocumentBuilder();
//parse using builder to get DOM representation of the XML file
File file=new File("/mnt/sdcard/xmldata.xml");
FileInputStream fin=null;
if(file.isFile())
{
try
{
fin=new FileInputStream(file);
}catch(Exception e)
{
}
}
dom = db.parse(fin);
flag = parseDocument();
// from this I am getting last xml value "stop" then it returns
true and from while loop I am exited..
}catch(ParserConfigurationException pce) {
//pce.printStackTrace();
}catch(SAXException se) {
//se.printStackTrace();
}catch(IOException ioe) {
//ioe.printStackTrace();
}
return flag;
}
編輯:在我的腦海裏,我有三個選項,
- 使用管道
- socket通信
- AIDL
那麼哪一個更好,爲什麼?
如果我錯了,請指導我。謝謝
是的,在處理同一臺機器上的兩個沙盒環境之前就已經完成了。 – satur9nine