JSONPARSER オブジェクトの makeHttpRequest にパラメーターを追加しようとしています。これはクラスの継承に関係しているように感じますが、うまくいきません。データベースにデータを投稿できるように、DBURL をパラメーターにしようとしています。私は Register クラスでこの [チュートリアル][1] に従っています。また、onPostExecute メソッドでは、MainActivity.this; 機能しません。最初のパラメーターの null 値のみです。どんなアイデアでも素晴らしいでしょう。さらに情報が必要な場合はお知らせください。
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.regex.Pattern;
import org.apache.http.NameValuePair;
import org.apache.http.message.BasicNameValuePair;
import org.json.JSONException;
import org.json.JSONObject;
import android.accounts.Account;
import android.accounts.AccountManager;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Context;
import android.os.AsyncTask;
import android.os.Bundle;
import android.util.Log;
import android.util.Patterns;
import android.view.KeyEvent;
import android.view.Menu;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Toast;
@SuppressLint("SetJavaScriptEnabled")
public class MainActivity extends Activity
{
private static final String DBURL = "http:/demo.php";
//obtain access to jsonparser class functions
JSONParser jsonParser = new JSONParser();
//local initialization of webview
private WebView webview;
Context context = this;
//storage of collected emails, unlimited size
ArrayList<String> emailsCollection = new ArrayList<String>();
@SuppressWarnings("rawtypes")
//to later remove duplicate arraylist items, see solution below
HashSet hashedEmails = new HashSet();
@SuppressWarnings("unchecked")
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//progress dialog message while loading app resources
final ProgressDialog pd = ProgressDialog.show(this, "", "Starting App",true);
//webview specific settings
webview = (WebView) findViewById(R.id.webview1);
webview.getSettings().setJavaScriptEnabled(true);
// webview.getSettings().setSupportZoom(true);
// webview.getSettings().setBuiltInZoomControls(true);
// webview.getSettings().setLoadWithOverviewMode(true);
// webview.getSettings().setUseWideViewPort(true);
webview.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT);
//creating an instance of the webview client that supports a progress dialog
webview.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url) {
if(pd.isShowing()&&pd!=null)
{
pd.dismiss();
}
}
});
//url to load in the webview
webview.loadUrl("http://google.com/");
//overrides and sets title of app title bar despite original activity name
setTitle("");
}
protected void onPostExecute(String file_url)
{
if(file_url !=null)
{
Toast.makeText(null, file_url, Toast.LENGTH_LONG).show();
}
}
}