我正在开发一个Android Cordova/Phonegap应用程序,我想使用SQLite数据库.我使用了官方文档中的示例.
// Wait for device API libraries to load
//
document.addEventListener("deviceready", onDeviceReady, false);
// Populate the database
//
function populateDB(tx) {
tx.executeSql('DROP TABLE IF EXISTS DEMO');
tx.executeSql('CREATE TABLE IF NOT EXISTS DEMO (id unique, data)');
tx.executeSql('INSERT INTO DEMO (id, data) VALUES (1, "First row")');
tx.executeSql('INSERT INTO DEMO (id, data) VALUES (2, "Second row")');
}
// Query the database
//
function queryDB(tx) {
tx.executeSql('SELECT * FROM DEMO', [], querySuccess, errorCB);
}
// Query the success callback
//
function …Run Code Online (Sandbox Code Playgroud) 我目前正在寻找自动测试Android应用程序的解决方案,原生Android应用程序以及混合Cordova/Phonegap应用程序.
谷歌的UI Automator看起来很不错,但无法处理WebViews,这使我无法使用它.然后我发现了基于Selenium 的有前途的自动化框架Appium,它也应该能够处理混合应用程序,但我无法使用WebViews,它似乎还没有完全实现,因为几个帖子也证明了.
试图Appium后,我发现了一个提示Selendroid,也应该对混合应用工作,但似乎非常马车并不断崩溃我的整个计算机的所有的时间.
那么,有没有人知道使用WebViews测试Android应用程序的工作解决方案?我正在使用Windows 7.非常感谢您提供任何帮助.
将字符串变量从一个应用程序传递到另一个应用程序并将值返回的最简单方法是什么?我可以访问这两个应用程序的源代码,但它必须是两个不同的应用程序.
我尝试使用startActivityForResult,但这似乎只适用于同一应用程序的活动.从另一个包调用活动时,startActivityForResult会立即返回RESULT_CANCELED.似乎有可能通过服务来解决这个问题,但是对于一些字符串变量而言,这不是有点过分吗?
有一个简单而干净的方法吗?
这里我尝试用于startActivityForResult的代码:
//App A:
Intent intent = new Intent();
intent.setAction("com.example.testapp.MESSAGE");
Bundle b = new Bundle();
b.putString("loginToken", "263bhqw3jhf6as4yf8j0agtz8h2hj2z9j3hg3g3ggh34uzh2h2ui78h3i9wdnj89x");
intent.putExtra("MyData", b);
startActivityForResult(intent, TEST_REQUEST);
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
Log.d("pairing", "onActivityResult called");
// Check which request we're responding to
if (requestCode == TEST_REQUEST) {
// Make sure the request was successful
Log.d("pairing", "got result, resultCode: " + resultCode);
if (resultCode == RESULT_OK) {
// The Intent's data Uri identifies which contact was selected.
if (data.hasExtra("returnMessage")) …Run Code Online (Sandbox Code Playgroud)