Androidプログラミング質問スレ revision54
■ このスレッドは過去ログ倉庫に格納されています
アクティビティとかいう考え方が面倒
画面ごとに要素を用意して面倒くさい listviewのケツにボタンかなんか配置しといてそれをクリックしたら追加読み込み実行みたいなことをしたいんだけど簡単にできる方法ありますか? 簡単の範疇に入るかはともかく
BaseAdapterを継承して最後に追加するためのボタンが来るクラスを作ればいいんじゃね 最後だったらswiperefreshじゃないだろう >>183
自分でCで作ってキルされりゃいいんじゃね >>184
無理してListViewに入れない方がいいよ。
ListViewの下にButtonをVisiblity.GONEで配置しておいて、listの最後を表示したらVisiblity.VISIBLEにする。
「listの最後を表示したら」については、OnScrollListnerのOnScrollで渡される引数で簡単に計算できる
(firstVisibleItem + visibleItemCount >= totalItemCount)。 >>187
それもそうだ混乱してた
簡単ではなさそうだけどswipeRefreshもbottomからswipe upで更新とかできそうだな recyclerViewにして一番下にprogressbarだけのviewを配置する レスありがとうございます
一番簡単そうな>>189で解決できました espresso test recorderでパスすべき場所が失敗したり、クリックが認識されなかったりで使い物にならん javaで計ってみただけなんだが
浮数の加算と除算の速度がほぼ同じで困惑してる
x86だと二十倍くらい速度差あったのに
armってそういうもん? webview.draw(canvas)でキャプチャしてるんだけどwebglがキャプチャできずに真っ白になるんだけどなぜ?
どうやったらwebglのキャプチャがとれるのだろうか >>154
>>164
>>166
ありがとう。とりあえず、今日、電卓を作ることができた。
10日ほどかかったわけだが、こんな紆余曲折を経て学習していった
リモートリポジトリを作成して、複数のPCで開発を進められるといいなということで
googleドライブにリモートリポジトリを作成してgitで分散バージョン管理ができるようになった
そのあとでUIの使い方が気になって、それぞれのUIの基本的なことを勉強した
すべてを理解したわけではないが、レイアウトとウィジェット的なものがなんとなく理解できた
そのあとのディレクトリ構成が気になって、フォルダ構成を学んだ
さらにレイアウトとリソースのxmlやソースが別々になってるので
AndroidにおけるMVCパターンも概略を知りたくなって少し調べた
その後に電卓を作ろうと思ってデザインを作るのにConstraintLayoutがよさそうだと思って
レイアウトを作る方法をいろいろ調べた
んで、その後に電卓用の計算したり表示したりするクラスをことりんで作って
実装して今に至る・・・
かなり回り道したが電卓はレイアウトの仕組みを知るのにはかなり役だったかな
んで、次は何がお勧めかな? お前のゴールはどこじゃ
ちゃんとそこに向かってんのか
ゴールなんてなくてただ何か作りたいだけならお題は自分で見つけることだ データバインディングとRxも学んだほうが良い
あとはやっぱり通信だな
githubクライアントとかいいんじゃないか
webapiも公開されてる >>197
なんか作りたいと思うときに、あまり障壁無く作れることができるようにしたいのがゴールかな
いろいろなことを知ることができたので、着実に進んでいるような気がしている
>>198
Rxってなに?(´・ω・`)
データバインディングはいくなりハードルが高い気がするけど何とかなるかな(´・ω・`) Rxもデータバインディングも開発を簡単にするためのアイデアだからハードル低いよ
わしも初心者の頃はこんな酷いプラットフォームでどうやって開発するんだと頭を抱えたものだが
RxやMvvmを覚えたらスムーズに開発できるようになった >>200
さすがアニキすごいっす!
これを作ることによって、Rx、データバインディング、MVVMの勉強になるぜ!って
いうアプリいうのがあったら教えてください! どっちもまだならdatabindingからやっとき
ハマりどころそんなないから
まずはfindViewByIdの置き換えから始めればコストも少ないよ GPSを使ったようなアプリもandroidらしくていいんじゃないだろうか
あとbroadcastreceiverとserviceも使ってみるべき Bluetooth関連のテストって実機でやってる?
エミュレータ―でも出来るのかな? btは実機使わないと予想外の問題が出て死ぬから絶対実機でやった方がいい
なお実機で使ってもよくわからないまま死ぬから使わないほうがいい エミュレータでどうやって無線を飛ばすんだ
その前にアダプタやGATTの取得とか確認出来んし
最初から実機必須 >>206
フライトシミュレータは空を飛んでるとか思ってそう w どんなコードだろうと最後には必ず実機でテストしてからリリースしてください。 BluetoothProfile.ServiceListener#onServiceConnectedは
端末本体のBluetoothを有効にしただけで実行されますか?
自作アプリのユーザーからBluetoothクライアント接続してないのに
機能が有効になったと言われて調査してますが全然分かりません…。 Bluetoothクライアントの接続状態関係なしに
BluetoothのON/OFFだけでも実行されてる事を確認しました。
BluetoothProfile#getConnectedDevicesで接続を見ないといけないんですね。 SDカードにファイルを保存したいんですが、
ロリポ以降の端末ではSAF経由じゃないと書けないんでしょうか?
Android/data/<パッケージ名>/files以下じゃなくて
任意のパスに書きたいです。
4.3までは何も考えずに(内部ストレージと同様の方法で)できました。 ヤフーメールのアプリとかはどうやってメールの着信を監視してるのでしょうか
バックグラウンドで定期的に問い合わせを行っているのでしょうか
その場合なぜシステムからキルされないのですか? サードパーティーが完全に自前でプッシュ通知を実現するには、
結局のところ、サービス/スケジューラを使うしか手がないでしょ?
GCM/FCM使う場合には、リスナー登録するだけで済む話だけど。 Paging LibraryはloadAfterとかloadBeforeはバックグラウンドスレッドで呼ばれるけど、
なんでloadInitialはPagedList作るスレッドで呼ばれるの?Googleの技術者死ねよ。 firebase使うとプッシュ通知もできたよね
ただ開発者サービス使うと古いバージョン使ってるユーザーとか
更新してもバグあったりしてアプリのせいにされたことあるからあんまり使いたくないんだが
最近は大丈夫なん? ボタンを押した時にThread.Sleep(1000)を実行するとLogcatに、
Skipped 60 frames! The application may be doing too much work on its main thread.
って出るけども、これはスレッドを止めてるから出る物と考えて良いのでしょうか? メインスレッド(UIスレッド)が終わってるのにUIのコードを実行しようとしてるから、じゃなかったっけ リリースビルドに失敗したときだけproguardの設定を追加してきたんですが、
リリースビルドに成功していたとしても、各ライブラリのgithubのページに書いてある
proguardの設定は全て記述するべきなんでしょうか プログラムというかAndroidの印刷APIに対応したプリンターってどんなのがある?
Androidとプリンターの関係が現在どうなってるのかいまいちわからないけど これをMZK-EX300Dに繋いだらAndroidからの印刷できますか? みんなkotlin使うの?
kotlinも
Flutter-Dart言語も
いかないでJava/dalvikに留まるのが一番いいような気がする kotlin使ってるけど、その理由は使ってみたかったから以外には特にないな
javaに留まっても全然良いと思う FlutterってNativeScriptに近い感じか?
ReactNativeはAndroidが弱いし、
Xamarinはネイティブ無視しすぎて、終わっとるし。 クロスプラットフォームは総じて糞と相場が決まっている 世間の人気アプリは大概両機種でリリースされておるが、
あれってどうやってんのかね?
やはりunityしかないのか
いやだなぁ、覚えたくない まともなアプリは全てそれぞれネイティブで作っている
ゲームに関してはUnityで共通化できる >>234
armでもintelでも動くandroidのこと言ってるの? >>237
この場合のクロスプラットホームっていうのはmacとwindows、はたまたlinuxのことじゃないかと intel androidは糞だろう。中でarmエミュレートしないと動かないことも多いのだから。 それってarmネイティブのプログラムってだけのことでは?
だったら動かすためにはそうせざるを得ないんだから仕方ないよね。 このスレ的にクロスプラットフォームは、
スマホのことじゃないの? アプリそのものじゃなくて共有する開発環境のことでしょ 更新できないAndroidスマホも壮大に放置なgoogle。結局サポートとか何も考えてないんだよな。
文句言われるのはアプリ開発者側。 自分のZenfone3は、購入時はAndroid6.0だったのに、
今じゃ自動アップデートでAndroid8.0で動いているからなぁ。
個人的にはDozeとかめんどいから、Android6.0で良かったんだが。 初スマホになるので今まで避けてたスマホ開発に参戦しようと思います
2Dから軽い3Dゲームや便利なユーティリティを開発したいです
android実機開発においてやっぱスペックは高いほうがいいですか?
antutu v6の旧スコアで45000, 80000, 150000
のどれかのモデルを購入予定で80000のnova lite2が激安なので食指が伸びてますが
多少高くても実機スペックはケチらないほうがいいですかね? すみません
nova lite2の80000(正確には90000にちかい)はv7でした
v6で65000程度のようです ハイエンドの端末しかサポートしないというなら実機も合わせた方がいいけど幅広いユーザーに遊んでほしいというならミドルレンジ機での確認は必要じゃないかな?! なるほど
デバッグや開発時のストレスを考慮しましたが
遅いのにあわせるというのは良い物の見方ですね
とりあえず今回は1台目なのでパフォ重視でミドルハイのやつを買ってみて
慣れてきたころに手頃なミドルロウの端末も買おうと思います nova lite 2なんかは安いけど、2年くらい前のハイエンドくらいの性能あるしな。 開発向けのリファレンス機としてはNexus5X/6Pを勧めるけど
もう次のOSバージョンに対応しないからなあ 開発向けならOSのバージョンアップなんてむしろ邪魔なだけだろ
古いバージョンも手元に残しておかないと、動作確認が出来ないし だから最新のリファレンス機を合法に使えないのが問題だって 開発機は素のAndroidかユーザーの多いXperiaかGalaxyあたりの端末を用意したいところ
Nexusは終了したけどAndroid oneがあるぞ リリース後だったらAndroid oneでもいいけど、Pixelじゃないとプレビューが試せないんだよね。誰かくれないかな つーかOreoもまだシェア5%しかないのに、何でそんなに最新のを使いたがるかね
最速で対応したって誰も使ってるやつおらんやん >>261
オレオではBluetoothの仕様が変わったから既存のアプリで接続がうまくいかないトラブルが出てきてんだわ
他にもそういった事象があるかもしれないんで確認のために必要なのよ 俺もアプリレビューでオレオで動かないってのが増えてる。対応しようとしたら既存のアプリ仕様だと簡単でなく頭抱えてる。 まあでもバックグラウンドで勝手に動くなってのはわかる >>261
シェアはまだまだでも、実際に搭載機種が発売されててバージョンアップも始まってるから、開発現場は早めに入手しておきたいのさ。 教えてください、初心者が必ず悩むバックグランドからの復帰時のデータの取り扱いに
悩んでます。onPauseでデータ保存、onResumeでデータ読み。
念のためonSaveInstanceStateでもデータ保存しています。
だいたいOKなのですが、バックにいる時データの保持は保障されなくてたまに初期データで
立ち上がります。みなさんはやはりキャッシュなどに保存しているのですか?
どの状況でも復帰した時はその状態を保持したく、最初の時のみ初期データにしたいのですが そういうのってユーザーもアプリが終了されたなってわかるから気にしなくてもいいのでは
裏で動くのが必須のアプリでなければだけど めんどくさいならsharedpreferenceにでも入れとけば そんなに変更するとこある?
アイコンを丸にするぐらいしかなかったけど 何が?
notificationChannelとか? 大変とまでは行かないけどOreo以上ならって条件式が結構増えて面倒ではある その分、欠けてたJava7/8APIのほとんどがサポートされるようになったじゃん。 俺らのプラットフォームで商売させてやってんだから金払えと
開発者なめてるAppleが大嫌いです
Mac時代はサードパーティ製ソフトウェアの少なさに苦戦してたようですが
スマホはうまく先駆者になれたのでそんななめた態度でも充実してますね
実に腹立たしい
だけど僕は騙されませんよ
Appleが反省して土下座するまでGoogleを全力で支援します >>276
お前さんがプラットフォーム作って、只で使わせてやればー? GoogleもMicrosoftもタダで使わせてるわけですが 開発環境もそうだが、
クロスプラットフォーム環境でもiPhone用アプリをコンパイルするには、
ほとんどがMac実機が必要ってのがね・・・。
実機テストでiPhoneを買えは当然だが、開発環境までMac買えはどうかと思う。 ビルドもだけどデベロッパー登録とかもMacないとダメだしいよいよストアに出すってなってもリジェクト食らいまくるしなんだかなー ■ このスレッドは過去ログ倉庫に格納されています