前提・実現したいこと
okHttp3を使用してandroid studioで作成するアプリとmysqlをphpを経由して接続させたいのですがビルドエラーが発生してしまいうまくいきません。
エラーの解消方法等を教えていただきたいです。
発生している問題・エラーメッセージ
エラーメッセージ エラー: クラス Builderのコンストラクタ Builderは指定された型に適用できません。 Request request = new Request.Builder().url(url).get().build(); ^ 期待値: List<Message> 検出値: 引数がありません エラー: 不適合な型: android.view.textclassifier.ConversationActions.Requestをokhttp3.Requestに変換できません: Response response = client.newCall(request).execute(); エラー: シンボルを見つけられません strData = response.body().string(); ^ シンボル: メソッド body()
該当のソースコード
AsyncTaskClass.java
1import android.os.AsyncTask; 2import android.util.Log; 3import android.view.textclassifier.ConversationActions.Request; 4import com.google.android.gms.common.api.Response; 5import java.io.IOException; 6import okhttp3.OkHttpClient; 7 8 9public class AsyncTaskClass extends AsyncTask<String, String, String> { 10 11 @Override 12 protected String doInBackground (String... params) { 13 // バックグラウンドで行う処理 14 15 //okHttpのインスタンス作成 16 OkHttpClient client = new OkHttpClient(); 17 String strData = ""; 18 String url = params[0]; 19 20 //ビルド 21 Request request = new Request.Builder().url(url).get().build(); 22 23 try { 24 //リクエスト実行 25 Response response = client.newCall(request).execute(); 26 //レスポンスのbodyからデータ取得 27 strData = response.body().string(); 28 }catch (IOException e) { 29 e.printStackTrace(); 30 } 31 32 return strData; 33 } 34 35 @Override 36 protected void onPostExecute(String str) { 37 // UIスレッドに反映する処理 38 Log.d("Debug",str); 39 } 40 41} 42
AndroidManifest.xml
1 <uses-permission android:name="android.permission.INTERNET" /> 2 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 3 <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/> 4
build.gradle(:app)
1implementation 'com.squareup.okhttp3:okhttp:4.9.0'
補足情報(参考にしたサイト)
https://calculus-app.com/blog/develop_android/android_network/229