私は誰かが私を助けてくれるか、少なくとも私にいくつかのアイデアを与えてくれることを望んでいました。
私はエンジニアリング業界向けのAppInventorアプリを開発しています。アプリは基本的に完成していますが、AppInventorはSDカードへのI/Oをサポートしていません。
今、私はインターネット接続を使用せずに(つまり、USBまたはWIFI経由でのみ)アプリからPCにデータを取得できる必要があります(Bluetoothを使用することはできません)
一部のデータをSDカードに保存できる短いJavaアプリをEclipseで作成しましたが、AppInventor内からアプリを起動する方法がわかりません。
Eclipseでアプリ全体を書き直さなくてもこれを実現する方法について何かアイデアはありますか?
起動する必要のあるEclipseアプリのコードは次のとおりです。
package tlc.savetosd;
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;
import android.app.Activity;
//import android.content.DialogInterface.OnClickListener;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
import android.view.View.OnClickListener;
public class Savetosd extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_savetosd);
final EditText txtData = (EditText) findViewById(R.id.edtText);
this.getPackageName();
TextView txt = (TextView) findViewById(R.id.textView1);
Button btnSave = (Button) findViewById(R.id.btnSave);
btnSave.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// write on SD card file data in the text box
try {
File myFile = new File("/sdcard/mysdfile.txt");
myFile.createNewFile();
FileOutputStream fOut = new FileOutputStream(myFile);
OutputStreamWriter myOutWriter =
new OutputStreamWriter(fOut);
myOutWriter.append(txtData.getText());
myOutWriter.close();
fOut.close();
Toast.makeText(getBaseContext(),
"Done writing SD 'mysdfile.txt'",
Toast.LENGTH_SHORT).show();
} catch (Exception e) {
Toast.makeText(getBaseContext(), e.getMessage(),
Toast.LENGTH_SHORT).show();
}
}// onClick
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_savetosd, menu);
return true;
}
}