我正在创建从数据库获取数据的应用程序,在用户安装应用程序后,我将每周使用新数据更新我的数据库。如何在每次添加新项目时自动更新数据库并将其替换为退出一,无需更新整个应用程序?
答案 0 :(得分:0)
以下是如何填充本地db:
的代码示例 public CreatePopulateDB(SQLiteDatabase database){
database.execSQL("BEGIN TRANSACTION");
database.execSQL("DROP TABLE IF EXISTS xyz;");
database.execSQL("CREATE TABLE xyz( field1 integer primary key autoincrement, field2 numeric not null, );");
database.execSQL("INSERT INTO xyz VALUES(1,1);");
database.execSQL("INSERT INTO xyz VALUES(2,2);");
...
database.execSQL("COMMIT;");
}
如上面的评论中所述,您将使用来自php API的数据填充本地数据库。
答案 1 :(得分:0)
这是您从Web服务中检索数据的方法
public class GetXMLTask
{
public static final String URL = "http://localhost:8080/appName/actionOrServletTobeCalled";
public static void main(String args[])
{
GetXMLTask obj = new GetXMLTask();
String username = "username";
String password = "password";
obj.getOutputFromUrl(URL+"?"+username+"&password="+password);
}
public String getOutputFromUrl(String url)
{
HttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(url);
HttpResponse response;
StringBuilder builder= new StringBuilder();
BufferedReader in = new BufferedReader(new InputStreamReader(response.getEntity().getContent(), "UTF-8"));
char[] buf = new char[8000];
int l = 0;
while (l >= 0)
{
builder.append(buf, 0, l);
l = in.read(buf);
}
return builder.toString();
}
}
如果您需要有关创建Web服务的任何帮助,请与我们联系