このスレではAndroidSDK・NDKやAndroidマーケットに関する質問を扱ってます。
※プログラミング自体が初めて!なあなたには↓↓↓こちらへ
スレ立てるまでもない質問はここで 144匹目
http://echo.2ch.net/test/read.cgi/tech/1473241397/
Eclipse統合M35【Java/C++/Ruby/Python/Scala】
http://echo.2ch.net/test/read.cgi/tech/1405391739/
★★Java質問・相談スレッド179★★
http://echo.2ch.net/test/read.cgi/tech/1476706523/
****オススメ関連リンク****
■ TechBoosterhttp://techbooster.org/category/android/tableofcontents/
■ Androidメモhttp://www.saturn.dti.ne.jp/npaka/android/index.html
■ 逆引きAndroid入門http://www.adakoda.com/android/
■ Androidプログラマへの道http://wiki.livedoor.jp/moonlight_aska/
■ Android Wiki*http://wikiwiki.jp/android/
****公式リファレンス****
■ Android developershttp://developer.android.com/index.html
■ ソフトウェア技術ドキュメントを勝手に翻訳http://www.techdoctranslator.com/
■ 日本Androidの会http://www.android-group.jp/
■ StackOverFlowhttp://stackoverflow.com/questions/tagged/android
****前スレ****
Androidプログラミング質問スレ revision51
http://echo.2ch.net/test/read.cgi/tech/1457303564/
Androidプログラミング質問スレ revision52
http://echo.2ch.net/test/read.cgi/tech/1479305887/
探検
Androidプログラミング質問スレ revision53 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2017/03/01(水) 19:00:39.67ID:yxxdptab184デフォルトの名無しさん
2022/06/23(木) 21:46:55.90ID:dKSErO3p >>183
相互位置関係を記述したら消えました。
相互位置関係を記述したら消えました。
185デフォルトの名無しさん
2022/06/23(木) 21:54:12.71ID:dKSErO3p mChartのwidthとheightを画面サイズの0.8倍に設定できましたが、AlertDailogの横幅の0.8倍にしたい。
AlertDailogのwidthとheightを取得したいがネットを探しても出てこない。
AlertDailogのwidthとheightを取得したいがネットを探しても出てこない。
186デフォルトの名無しさん
2022/07/11(月) 19:15:41.84ID:W06gDof6 Navigation Drawerで質問です。
オプションメニュー(縦…)をタップして、処理が終わったら、ハンバーガーメニューを開いて欲しいのだけど出来ますか?
オプションメニュー(縦…)をタップして、処理が終わったら、ハンバーガーメニューを開いて欲しいのだけど出来ますか?
187デフォルトの名無しさん
2022/07/16(土) 03:12:04.06ID:hlf3btZT188デフォルトの名無しさん
2022/08/29(月) 09:59:33.77ID:EJtGam6w MPAndroidChartで質問です。
描画したチャートをピンチで拡大して、元の倍率に戻したい時のコードが知りたいです。
描画したチャートをピンチで拡大して、元の倍率に戻したい時のコードが知りたいです。
189デフォルトの名無しさん
2022/08/30(火) 15:26:03.45ID:GvuhTTaA どのタイミングで戻すか知らんが、倍率に1.0や保持した倍率を入れればいいじゃろ
190デフォルトの名無しさん
2022/09/09(金) 21:48:54.85ID:RsakcQHL 権限の許可ダイアログで許可するのを間違えて否認してしまった場合に再度許可ダイアログを出す方法はありませんか?
PendingIntent.getBroadcastでIntentFilterしてregisterReceiverします。
BroadcastReceiverの権限回答しており、AndroidManifestではintent-filterは記載していないです。
一度否認してしまうとアプリの再起動じゃないと権限ダイアログが出てこないです。
また、AndroidManifestのintent-filterでやっていた時は一度認証するとアプリを再起動しても権限出てこなくて便利だった。
PendingIntent.getBroadcastでIntentFilterしてregisterReceiverします。
BroadcastReceiverの権限回答しており、AndroidManifestではintent-filterは記載していないです。
一度否認してしまうとアプリの再起動じゃないと権限ダイアログが出てこないです。
また、AndroidManifestのintent-filterでやっていた時は一度認証するとアプリを再起動しても権限出てこなくて便利だった。
191デフォルトの名無しさん
2022/09/17(土) 19:43:03.81ID:GRKzzCP7 アプリから端末のGoogleアカウントを知る方法がわかりません。
自分のアカウントの場合は隠し機能を有効にしたいと思ってです。
自分のアカウントの場合は隠し機能を有効にしたいと思ってです。
192デフォルトの名無しさん
2022/09/17(土) 20:54:14.37ID:5QfKySba ワンタップサインインとか使わないとね
193デフォルトの名無しさん
2022/09/29(木) 15:24:13.03ID:HOy6u/66 ダイアログを出して、5秒程度の処理が終わるとダイアログを消すコードですが、実行後にANRが出ます。
添削お願いいたします。
public AlertDialog dialog;
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
new AlertDialog.Builder(getActivity())
.setTitle("Test1")
.setMessage("test1")
.setPositiveButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog = new AlertDialog.Builder(getActivity())
.setTitle("Test2")
.setMessage("test2")
.show();
new Thread(() -> {
try {
Thread.sleep(5000);
} catch (Exception e) {
} finally {
dialog.dismiss();
}
}).start();
}
})
.show();
}
});
添削お願いいたします。
public AlertDialog dialog;
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
new AlertDialog.Builder(getActivity())
.setTitle("Test1")
.setMessage("test1")
.setPositiveButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog = new AlertDialog.Builder(getActivity())
.setTitle("Test2")
.setMessage("test2")
.show();
new Thread(() -> {
try {
Thread.sleep(5000);
} catch (Exception e) {
} finally {
dialog.dismiss();
}
}).start();
}
})
.show();
}
});
194デフォルトの名無しさん
2022/09/29(木) 17:07:24.84ID:6DjIJRTi >>193
new Threadでdialog.dismiss()してるのがいけないと思う
UIスレッド(メインスレッド)からじゃないとUIは操作できない
やること
↓
UIスレッドでHandlerを作る
new ThreadからはそのHandlerにpostしてdialog.dismiss();を実行する
new Threadでdialog.dismiss()してるのがいけないと思う
UIスレッド(メインスレッド)からじゃないとUIは操作できない
やること
↓
UIスレッドでHandlerを作る
new ThreadからはそのHandlerにpostしてdialog.dismiss();を実行する
195デフォルトの名無しさん
2022/09/29(木) 19:33:01.23ID:HOy6u/66 アドバイスありがとうございます。ソースのdialogはonClickの引数と同名でしたが実際は別名で、ここではdialog1とします。また、dismiss()は動作していたようでダイアログが消えて数秒経つとANRが出ます。アドバイス戴いたようにdismiss()をハンドラーにしましたが同じ結果です。
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
new AlertDialog.Builder(getActivity())
.setTitle("Test1")
.setMessage("test1")
.setPositiveButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog1 = new AlertDialog.Builder(getActivity())
.setTitle("Test2")
.setMessage("test2")
.show();
new Thread(() -> {
try {
Thread.sleep(5000);
} catch (Exception e) {
} finally {
handler1.post(new Runnable() {
@Override
public void run() {
dialog1.dismiss();
}
});
}
}).start();
}
})
.show();
}
});
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
new AlertDialog.Builder(getActivity())
.setTitle("Test1")
.setMessage("test1")
.setPositiveButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog1 = new AlertDialog.Builder(getActivity())
.setTitle("Test2")
.setMessage("test2")
.show();
new Thread(() -> {
try {
Thread.sleep(5000);
} catch (Exception e) {
} finally {
handler1.post(new Runnable() {
@Override
public void run() {
dialog1.dismiss();
}
});
}
}).start();
}
})
.show();
}
});
196デフォルトの名無しさん
2022/09/30(金) 08:57:44.46ID:19KFk5dY >>195
すみません、行数制限で改行を削ったのでお見苦しい表示になっていました。
ボタンのonClickでAlertDialog出してOKで更にAlertDialog出してのスレッド起こして5秒処理が最初のAlertDialogが閉じていないためANRになった感じです。
5秒を1秒にするとANRは発生しなかったです。
また、Handler(Looper.getMainLooper())を使わずに.dismiss()でダイアログを閉じても結果は同じですが、Handlerでやるべきですか?
すみません、行数制限で改行を削ったのでお見苦しい表示になっていました。
ボタンのonClickでAlertDialog出してOKで更にAlertDialog出してのスレッド起こして5秒処理が最初のAlertDialogが閉じていないためANRになった感じです。
5秒を1秒にするとANRは発生しなかったです。
また、Handler(Looper.getMainLooper())を使わずに.dismiss()でダイアログを閉じても結果は同じですが、Handlerでやるべきですか?
197デフォルトの名無しさん
2022/09/30(金) 16:16:53.09ID:uWNOO7Yd thread使わずともnew Handler().postDelayed(dialod1::dismiss, 5000)でいいよ
ついでにThreadでもhandlerでもダイアログを一定時間後に閉じる処理試したけど5秒でも10秒でもANR発生しなかった
消したいダイアログ内でなんか変なことやってるとかかね
まあ何をするかにもよるがtoastとかsnackbarとか別の手段がいいんじゃないかな
ついでにThreadでもhandlerでもダイアログを一定時間後に閉じる処理試したけど5秒でも10秒でもANR発生しなかった
消したいダイアログ内でなんか変なことやってるとかかね
まあ何をするかにもよるがtoastとかsnackbarとか別の手段がいいんじゃないかな
198デフォルトの名無しさん
2022/09/30(金) 18:50:39.08ID:19KFk5dY >>197
実際のアプリは外部機器用のリモコンです。
ボタンを押すと「初期化しますか?」と再確認のダイアログ1が出ます。
Yesで「暫くお待ちください。」とダイアログ2が出て初期化コマンドを送信して、
返事が来るまでの時間が3~10秒くらいで自動的にダイアログ2が消えることを予定しています。
それまでにダイアログ1は消えてるはず。
ダイアログ2は他の操作をブロックする意味もあるのです。
ところでアプリ動作中は他のタスクに画面を取られないようにする方法知りませんか?
OnPauseすると安全のため外部機器に停止信号を送っているけどスマホをリモコンで占有したいのです。
実際のアプリは外部機器用のリモコンです。
ボタンを押すと「初期化しますか?」と再確認のダイアログ1が出ます。
Yesで「暫くお待ちください。」とダイアログ2が出て初期化コマンドを送信して、
返事が来るまでの時間が3~10秒くらいで自動的にダイアログ2が消えることを予定しています。
それまでにダイアログ1は消えてるはず。
ダイアログ2は他の操作をブロックする意味もあるのです。
ところでアプリ動作中は他のタスクに画面を取られないようにする方法知りませんか?
OnPauseすると安全のため外部機器に停止信号を送っているけどスマホをリモコンで占有したいのです。
199デフォルトの名無しさん
2022/09/30(金) 19:39:47.36ID:uWNOO7Yd アプリ側でコントロールする方法はない
いつ電話がかかってきてもいいように実装するべし
でもまあその目的ならservice使えばいいんじゃないかな
いつ電話がかかってきてもいいように実装するべし
でもまあその目的ならservice使えばいいんじゃないかな
200デフォルトの名無しさん
2022/09/30(金) 22:12:23.27ID:19KFk5dY201デフォルトの名無しさん
2022/09/30(金) 22:48:05.76ID:k/a759Zf202デフォルトの名無しさん
2022/10/06(木) 19:13:52.40ID:K0ZDn7Vu 非推奨になったというActivityResultの替えで次のようにしろと各解説サイトにあるんですが
ActivityResultLauncher<Intent> mGetContent = registerForActivityResult(new ActivityResultContracts.GetContent(),
new ActivityResultCallback<ActivityResult>() {
@Override
public void onActivityResult(ActivityResult result) {
// Handle the returned
}
});
この registerForActivityResult の部分が赤線になってどうにもうまくいきません。
使用言語はjavaです。javaの解説でもこうなってます。
このregisterForActivityResultはjavaでは使えないんでしょうか?Kotlinでなければ。
ActivityResultLauncher<Intent> mGetContent = registerForActivityResult(new ActivityResultContracts.GetContent(),
new ActivityResultCallback<ActivityResult>() {
@Override
public void onActivityResult(ActivityResult result) {
// Handle the returned
}
});
この registerForActivityResult の部分が赤線になってどうにもうまくいきません。
使用言語はjavaです。javaの解説でもこうなってます。
このregisterForActivityResultはjavaでは使えないんでしょうか?Kotlinでなければ。
203デフォルトの名無しさん
2022/10/06(木) 20:30:50.44ID:r++stwRn 俺はよくわかんねーけどQRのスクショをgetするのに以下のコードを使ってる。
ActivityResultLauncher<Intent> _imageLauncher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallbackFromImage());
// QRコードのスクショ取得要求処理
public void ImageCapture() {
Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
intent.addCategory(Intent.CATEGORY_OPENABLE);
intent.setType("*/*");
_imageLauncher.launch(intent);
}
// QRコードのスクショ取得処理
private class ActivityResultCallbackFromImage implements ActivityResultCallback<ActivityResult> {
@Override
public void onActivityResult(ActivityResult result) {
if (result.getResultCode() == RESULT_OK) {
if (result.getData() != null) {
//結果を受け取った後の処理
ParcelFileDescriptor pfDescriptor = null;
try {
Uri uri = result.getData().getData();
pfDescriptor = getContentResolver().openFileDescriptor(uri, "r");
if (pfDescriptor != null) {
FileDescriptor fileDescriptor = pfDescriptor.getFileDescriptor();
Bitmap bmp = BitmapFactory.decodeFileDescriptor(fileDescriptor);
pfDescriptor.close();
以下省略
ActivityResultLauncher<Intent> _imageLauncher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), new ActivityResultCallbackFromImage());
// QRコードのスクショ取得要求処理
public void ImageCapture() {
Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
intent.addCategory(Intent.CATEGORY_OPENABLE);
intent.setType("*/*");
_imageLauncher.launch(intent);
}
// QRコードのスクショ取得処理
private class ActivityResultCallbackFromImage implements ActivityResultCallback<ActivityResult> {
@Override
public void onActivityResult(ActivityResult result) {
if (result.getResultCode() == RESULT_OK) {
if (result.getData() != null) {
//結果を受け取った後の処理
ParcelFileDescriptor pfDescriptor = null;
try {
Uri uri = result.getData().getData();
pfDescriptor = getContentResolver().openFileDescriptor(uri, "r");
if (pfDescriptor != null) {
FileDescriptor fileDescriptor = pfDescriptor.getFileDescriptor();
Bitmap bmp = BitmapFactory.decodeFileDescriptor(fileDescriptor);
pfDescriptor.close();
以下省略
204デフォルトの名無しさん
2022/10/06(木) 20:39:35.08ID:K0ZDn7Vu ありがとうございます。
MainActivity extends Activityを
MainActivity extends AppCompatActivity
に変えることでビルドできるようになったのですが
今度は
onCreate()の
setContentView(layout);で
起動時に終了するようになってしまいました。
AppCompatActivityでsetContentViewを使う時は
何か注意が必要なんでしょうか?
MainActivity extends Activityを
MainActivity extends AppCompatActivity
に変えることでビルドできるようになったのですが
今度は
onCreate()の
setContentView(layout);で
起動時に終了するようになってしまいました。
AppCompatActivityでsetContentViewを使う時は
何か注意が必要なんでしょうか?
205デフォルトの名無しさん
2022/10/07(金) 06:56:59.13ID:I/lVM+sd まずはだな、エラー見ようか
206デフォルトの名無しさん
2022/10/09(日) 18:30:15.37ID:ipDL7AO2 >>204
せめてonCreate()のsetContentView(layout);までのコードを見たい
せめてonCreate()のsetContentView(layout);までのコードを見たい
207デフォルトの名無しさん
2022/10/20(木) 21:58:20.25ID:mHxlvUKd ASを最新のDolphinにしてからLVLのファイルで赤線が入るようになりました。
SDK等のversionは32にしてます。Gradleは7.5です。
以前のASでは警告はあったものの赤線はありませんでした。
ビルドするとAPKExpansionPolicy.javaというファイルが出て
import org.apache.http.NameValuePair;
import org.apache.http.client.utils.URLEncodedUtils;
のところに赤線が入りCannot resolve symbol 'NameValuePair'
No documentation found.となります。
このimportが通らないので以下
List<NameValuePair> extraList = URLEncodedUtilsや
item.getName()の部分にも赤線になります。
検索してもピンとくる情報は見当たりません。
一応ビルドはできて起動もできます。
それと古いLVLの解説ページではversionは2があるような画像がありますが
私の環境ではダウンロードできるのは1しか表示されません。
LVLファイルの格納場所もWebの情報と違ってmarket_licensingというフォルダ内にあるようです。
これも関係あるのでしょうか?
解決策やヒントがありましたらよろしくお願いします。
SDK等のversionは32にしてます。Gradleは7.5です。
以前のASでは警告はあったものの赤線はありませんでした。
ビルドするとAPKExpansionPolicy.javaというファイルが出て
import org.apache.http.NameValuePair;
import org.apache.http.client.utils.URLEncodedUtils;
のところに赤線が入りCannot resolve symbol 'NameValuePair'
No documentation found.となります。
このimportが通らないので以下
List<NameValuePair> extraList = URLEncodedUtilsや
item.getName()の部分にも赤線になります。
検索してもピンとくる情報は見当たりません。
一応ビルドはできて起動もできます。
それと古いLVLの解説ページではversionは2があるような画像がありますが
私の環境ではダウンロードできるのは1しか表示されません。
LVLファイルの格納場所もWebの情報と違ってmarket_licensingというフォルダ内にあるようです。
これも関係あるのでしょうか?
解決策やヒントがありましたらよろしくお願いします。
208デフォルトの名無しさん
2022/10/20(木) 22:18:39.33ID:uG77Gpg1 システムテーマ変更等によるActivity再描画時に最後に表示されていたFragmentを再表示したいのだけど…
最後に表示されていたFragmentの取得などどうやればいいんでしょ?
最後に表示されていたFragmentの取得などどうやればいいんでしょ?
209デフォルトの名無しさん
2022/11/03(木) 22:23:49.20ID:tLScz4qV 質問があります
同一Activity内に複数のSurfaceViewがあり、
同時に同じ内容の書き込み処理を
実現する場合はどうすればよいでしょうか?
| A | B |
みたいなLayoutでAに〇を書き込むと、その内容がBにも反映され
| 〇 | 〇 |
となるようにしたいです
同一Activity内に複数のSurfaceViewがあり、
同時に同じ内容の書き込み処理を
実現する場合はどうすればよいでしょうか?
| A | B |
みたいなLayoutでAに〇を書き込むと、その内容がBにも反映され
| 〇 | 〇 |
となるようにしたいです
210デフォルトの名無しさん
2022/11/04(金) 06:26:20.78ID:mO7CFdM7 LiveDataとかでオブザーブすれば?
211デフォルトの名無しさん
2022/11/07(月) 08:17:20.61ID:BH3cyqoP openFileInputをFragmentに記述するとCannot resolve method 'openFileInput(java.lang.String)'となります。
MainActivityでは使えています。
とりあえずMainActivityに関数定義して呼び出していますが、直接記述できないのかな?
MainActivityでは使えています。
とりあえずMainActivityに関数定義して呼び出していますが、直接記述できないのかな?
212デフォルトの名無しさん
2022/11/07(月) 09:12:53.21ID:C5c3ymU1213デフォルトの名無しさん
2022/11/14(月) 17:37:04.50ID:Nub2Wf5o レイアウトのデザインでtextViewを
tools:layout_editor_absoluteY="0dp"でマージンも0で置いたのですが
上がぴったりくっつかずに結構な余白はできてしまってます。
これは原因はなんでしょうか?
ぴったり隙間ない0にするにはどうすればよいですか?
tools:layout_editor_absoluteY="0dp"でマージンも0で置いたのですが
上がぴったりくっつかずに結構な余白はできてしまってます。
これは原因はなんでしょうか?
ぴったり隙間ない0にするにはどうすればよいですか?
214デフォルトの名無しさん
2022/11/14(月) 21:31:00.35ID:Nub2Wf5o 解決しました
215デフォルトの名無しさん
2022/11/14(月) 21:36:51.66ID:pVkJR5jl >>214
自己解決した場合もその内容を書くべきだと思うよ。
自己解決した場合もその内容を書くべきだと思うよ。
216デフォルトの名無しさん
2022/11/14(月) 21:47:42.50ID:Nub2Wf5o よくわからないけど拾ってきたサンプル使ったらいけました。
多分スタイルとの相性だったのかと。 レイアウトわかりにくくてめんどくさい。
多分スタイルとの相性だったのかと。 レイアウトわかりにくくてめんどくさい。
217デフォルトの名無しさん
2023/02/09(木) 00:56:19.86ID:RhsSSnxC フラグメント間でStringデータのやり取りしたいのだけれども
受け取る側のフラグメントでデータが受け取れない
SafeArgs,Bundle,koinを使用したviewModelと試して見たけどそもそもデータが入ってなかった
どうすればいいのか
受け取る側のフラグメントでデータが受け取れない
SafeArgs,Bundle,koinを使用したviewModelと試して見たけどそもそもデータが入ってなかった
どうすればいいのか
218デフォルトの名無しさん
2023/02/10(金) 09:15:42.30ID:4wJL/51d 普通にできるしソースを見ないことには何とも
219デフォルトの名無しさん
2023/02/10(金) 17:13:21.52ID:4kC0OUxE test
220デフォルトの名無しさん
2023/02/10(金) 17:17:28.53ID:4kC0OUxE221デフォルトの名無しさん
2023/02/10(金) 17:20:55.48ID:4kC0OUxE こちらです
viewpager2に、tab1〜tabnと並べてFragmentStateAdapterでページの切り替えを行っています
viewpager2に、tab1〜tabnと並べてFragmentStateAdapterでページの切り替えを行っています
222デフォルトの名無しさん
2023/02/10(金) 17:28:21.26ID:4kC0OUxE BundleやSafeArgsは画面遷移を伴った渡し方があったのですが、どこに引数として渡せばよいのか分からず。という理解です
223デフォルトの名無しさん
2023/02/10(金) 17:43:20.08ID:aGrf1TET つか、Tab1FragmentのMainViewModelのスコープどうなってんの?
それだとフラグメントに結びついてるっぽいからMainViewModel のインスタンスがフラグメント毎に作成されるから渡せるわけない
ViewModel経由で渡す場合、フラグメントをホストしている共通のアクティビティのスコープでMainViewModel作成しないと駄目
もしくは
https://developer.android.com/training/basics/fragments/pass-data-between?hl=ja
それだとフラグメントに結びついてるっぽいからMainViewModel のインスタンスがフラグメント毎に作成されるから渡せるわけない
ViewModel経由で渡す場合、フラグメントをホストしている共通のアクティビティのスコープでMainViewModel作成しないと駄目
もしくは
https://developer.android.com/training/basics/fragments/pass-data-between?hl=ja
224デフォルトの名無しさん
2023/02/10(金) 17:58:34.14ID:aGrf1TET https://developer.android.com/topic/libraries/architecture/viewmodel/viewmodel-apis?hl=ja
スコープ意識しないと同じMainViewModelのインスタンスを参照できない
Tab1FragmentのViewModelの取得部分を
by viewModelsじゃなくて
by activityViewModelsとか
もちろん他の部分も
スコープ意識しないと同じMainViewModelのインスタンスを参照できない
Tab1FragmentのViewModelの取得部分を
by viewModelsじゃなくて
by activityViewModelsとか
もちろん他の部分も
225デフォルトの名無しさん
2023/03/02(木) 20:57:54.45ID:MqPgu4TH スマホ2台のSocket通信でトラブっています
待ち受け側A(192.168.1.111)
public void WifiTaskRun() {
Thread WifiThread = new Thread(() -> {
try {
mServerSocket = new ServerSocket(1234);
mSocket = mServerSocket.accept();
~
}
~
});
WifiThread.start();
}
送り側B(192.168.1.112)
public void WifiTaskRun() {
Thread WifiThread = new Thread(() -> {
try {
mSocket = new Socket("192.168.1.111", 1234);
~
}
~
});
WifiThread.start();
}
AのWifiTaskRun()を呼び出してからBのWifiTaskRun()を呼び出すと、AはmServerSocket.accept()で止まっていて、
Bはnew Socket(~)でjava.net.NoRouteToHostException: Host unreachableでcatchされます。
何か間違ているのでしょうか?
待ち受け側A(192.168.1.111)
public void WifiTaskRun() {
Thread WifiThread = new Thread(() -> {
try {
mServerSocket = new ServerSocket(1234);
mSocket = mServerSocket.accept();
~
}
~
});
WifiThread.start();
}
送り側B(192.168.1.112)
public void WifiTaskRun() {
Thread WifiThread = new Thread(() -> {
try {
mSocket = new Socket("192.168.1.111", 1234);
~
}
~
});
WifiThread.start();
}
AのWifiTaskRun()を呼び出してからBのWifiTaskRun()を呼び出すと、AはmServerSocket.accept()で止まっていて、
Bはnew Socket(~)でjava.net.NoRouteToHostException: Host unreachableでcatchされます。
何か間違ているのでしょうか?
226デフォルトの名無しさん
2023/03/02(木) 21:50:26.65ID:abFsQ7Yl 宛先に到達できてないんだからルータの設定見直してみては
227デフォルトの名無しさん
2023/03/03(金) 11:20:24.66ID:hk1vIV+F >>226
解決しました。
Bのスマホ(SCG07)のWiFi設定でMACアドレスタイプがデフォルトの"ランダム化されたMAC"だったので"端末のMAC"にしたらOKでした。
Aのスマホには設定がありません。
android studioのWiFiデバッグも知らない間に設定が消えるので、これが原因だったのか?
"ランダム化されたMAC"でも動作させたいけどどうしたら良いのか?
解決しました。
Bのスマホ(SCG07)のWiFi設定でMACアドレスタイプがデフォルトの"ランダム化されたMAC"だったので"端末のMAC"にしたらOKでした。
Aのスマホには設定がありません。
android studioのWiFiデバッグも知らない間に設定が消えるので、これが原因だったのか?
"ランダム化されたMAC"でも動作させたいけどどうしたら良いのか?
228デフォルトの名無しさん
2023/03/03(金) 11:32:20.69ID:hk1vIV+F229デフォルトの名無しさん
2023/03/03(金) 20:25:44.72ID:hk1vIV+F ルーターのMACアドレスフィルター機能を無効にしたらOKだった。
230デフォルトの名無しさん
2023/03/07(火) 23:47:03.05ID:6mbkztgh MACアドレスフィルタとステルスSSIDは百害あって一利なし
231デフォルトの名無しさん
2023/03/08(水) 11:38:43.29ID:vTZN1yCJ デスクトップにprivate_key.pepkがあるけど何に使うのですか?
232デフォルトの名無しさん
2023/04/08(土) 21:42:35.86ID:R+Wqhk0Q attachBaseContextでSharedPreferences prefs = getPreferences(Context.MODE_PRIVATE)を使いたかったが例外が発生するのか?
233デフォルトの名無しさん
2023/04/15(土) 18:10:50.96ID:u/cNI/cn attachBaseContextてなあに
234デフォルトの名無しさん
2023/06/26(月) 20:11:24.90ID:XNhAuZJ8 NDKってバグ多いよな
問題点や回避方法がまとまってるところとかある?
●NativeActivity & EGL
ウィンドウサイズ変更後最初の描画がくずれる
●AAudio Input
デフォルトプリセットだと入力データレートがおかしい機種がある
プリセットによって音が入力されない機種がある
ステレオ入力でも左チャンネルしか音が入力されない機種がある
(たいていの機種が何かしら問題がある)
問題点や回避方法がまとまってるところとかある?
●NativeActivity & EGL
ウィンドウサイズ変更後最初の描画がくずれる
●AAudio Input
デフォルトプリセットだと入力データレートがおかしい機種がある
プリセットによって音が入力されない機種がある
ステレオ入力でも左チャンネルしか音が入力されない機種がある
(たいていの機種が何かしら問題がある)
235デフォルトの名無しさん
2023/06/28(水) 23:59:07.01ID:BVdlIcNn ή∞!!!!
粉∞!!!!!
堅∞!!!!!!
W∞!!!!!!!
刃∞!!!!!!!!
輔∞!!!!!!!!!
書∞!!!!!!!!!!
棚∞!!!!!!!!!!!
粉∞!!!!!
堅∞!!!!!!
W∞!!!!!!!
刃∞!!!!!!!!
輔∞!!!!!!!!!
書∞!!!!!!!!!!
棚∞!!!!!!!!!!!
236デフォルトの名無しさん
2023/07/15(土) 13:32:21.20ID:qTZx5K+e ナビゲーションメニューで組んでいますが、8インチとかの大きな画面にも対応した、UIの例ありませんか?
237デフォルトの名無しさん
2023/09/13(水) 16:01:11.93ID:1gsZLk61 Bluetooth 5.1で追加された「方向検知機能」を知ろう
https://edn.itmedia.co.jp/edn/articles/2003/31/news022.html
SDKで方向検知の値(AoAやAoD)に対応していますか?
試してみてもRSSIは取得出来ますが、方向検知はみつからなくって
https://edn.itmedia.co.jp/edn/articles/2003/31/news022.html
SDKで方向検知の値(AoAやAoD)に対応していますか?
試してみてもRSSIは取得出来ますが、方向検知はみつからなくって
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【窪田順生氏】「高市政権人気の裏には多数の“弱者感を抱えた男”の存在がある」弱者感を抱えた男は人知れずマイルド右翼に… [おっさん友の会★]
- 【調査】クレジットカード、1人何枚持つのが「平均的」?★3 [ひぃぃ★]
- 【テレビ】池上彰氏 報道の自由度が高い国の特徴「どんどん政府を批判する。政治家は受け入れる」 一方独裁国家は… [冬月記者★]
- 【サッカー】カズ・三浦知良 来季も現役続行を明言! 来年2月に59歳 「12月から来季に向けての自主トレを予定してます」 [冬月記者★]
- 「ヘイトスピーチをやめろ」 各地の「移民反対デモ」に抗議活動 [蚤の市★]
- 【作家】高市総理支持の背景に見えるヤンキー的「ケンカ上等!」と「日本人は特別だ」感がとても怖い 北原みのり [少考さん★]
- 【DAZN】フォーミュラGP【F1 2 3 SF P】Lap1815
- 【フジテレビ】2025 FORMULA 1【NEXT】Lap608
- 【DAZN】フォーミュラGP【F1 2 3 SF P】Lap1814
- 【U-NEXT】プレミアリーグ総合 ★39
- ハム専 エスコン日韓OB戦
- とらせん IP
- 高市政権「中国への反論はSNSでやるわ。覚悟しろ中国!!!!!」 [834922174]
- 古市憲寿「スタジオでも中国批判して気持ち良くなってる人はいるが高市答弁で日本人は損してる。国益を害した」スタジオ凍りつく [931948549]
- お、お前らはお、おにぎりが食べたい時どうしてるんだな?
- ( ・᷄ὢ・᷅ )出すもの出して素直になりたい
- まったり進行おじゃる丸待機ハウス🏡
- 幼女「ちんぽこしょー!どっこいしょー!」俺「それでもチンポは抜けません😑」幼女「むうー😗」
