🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Q&A

1回答

1262閲覧

okHttp3を使用したmysqlの接続

u_taker

総合スコア0

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

0グッド

0クリップ

投稿2020/12/02 05:07

編集2020/12/05 11:54

前提・実現したいこと

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

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hoshi-takanori

2020/12/24 04:18

同じ名前の、なんか違うものが import されてる気がします。 import android.view.textclassifier.ConversationActions.Request; import com.google.android.gms.common.api.Response; を import okhttp3.Request; import okhttp3.Response; に変更してみては?
u_taker

2020/12/26 10:10

ご指摘ありがとうございます。 しかし、すでにokhttpを使用しない別の方法に切り替えて成功させてしまいました。 解決のためお時間とってしまい申し訳ありません。
guest

回答1

0

mySQLに直接接続せずphpを介した接続に切り替え、httpURLConnectionを使用し、成功させました。

投稿2020/12/26 10:14

u_taker

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問