タグ付けされた質問 「android」

AndroidはGoogleのモバイルオペレーティングシステムであり、デジタルデバイス(スマートフォン、タブレット、自動車、TV、Wear、Glass、IoT)のプログラミングまたは開発に使用されます。Androidに関連するトピックについては、android-intent、android-activity、android-adapterなどのAndroid固有のタグを使用します。開発やプログラミング以外の質問で、Androidフレームワークに関連する質問については、次のリンクを使用してください:https:// android.stackexchange.com。

5
java.lang.NullPointerException:IDの必要なビューがありません:
Android Studio 3.6 app / build.gradle: android { viewBinding.enabled = true ここに私のxml: <?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent"> <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/bluetoothBottonMainContainer" android:layout_width="0dp" android:layout_height="104dp" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent"> <View android:id="@+id/viewPointNotSelect" android:layout_width="16dp" android:layout_height="16dp" android:background="@drawable/circle_transparent" app:layout_constraintBottom_toBottomOf="@+id/separator" app:layout_constraintEnd_toStartOf="@+id/separator" app:layout_constraintTop_toTopOf="parent" /> もう1つのxmlはuncludeです。xml: <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/bottonContainer" android:layout_width="0dp" android:layout_height="104dp" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent"> <include android:id="@+id/qrBottonContainer" layout="@layout/qr_bottom_container" android:layout_width="0dp" android:layout_height="wrap_content" …

3
デバイスのシャットダウン後にAndroidアプリが以前のバージョンにロールバックするのはなぜですか?
Androidアプリケーションでこの非常に奇妙な動作を観察しました。おおよそのシナリオ: デバイスにインストールされているバージョンA アプリケーションは問題なく動作します デバイスにインストールされているバージョンB(B> A) アプリケーションは問題なく動作します 電池の消耗によりデバイスがシャットダウンする デバイスがオンになりました アプリケーションのバージョンAがデバイスで再度実行されます 追加情報: アプリケーションはGoogle Play経由では配布されませんが、USB接続経由でオンプレミスにインストールされます(注:アプリケーションは本番環境で実行されます。AndroidStudio経由ではインストールされません)。 売店 Android 5.1(API 22) 私は2つの質問を持っていると思います: デバイスが古いバージョンのAPKをキャッシュしたのはなぜですか(どこにキャッシュしたのですか)? どのような状況で、アプリケーションをそのような以前のバージョンにロールバックできますか? 編集(詳細): APKがロールバックされた後、アプリケーションは一部の権限(おそらくすべて)を失ったように見えます。AndroidのAPIからSecurityExceptionがスローされるため、ロールバックが機能しなくなる前に機能していた機能。このバージョンのAndroidにはまだランタイム権限がありませんが、これは起こります! タブレットのファイルシステムを参照した後、確かにいくつかのアプリのAPKが同様のパス/data/app/com.myapp-2/base.apk(/data/app/com.myapp-3/base.apk、など)に存在しているのがわかります。 私の現在の仮説は、バッテリーの消耗によりタブレットの状態が「リセット」され(たとえば、時計もリセットされる)、電源が再び入るとアプリのAPK間で混乱し、間違ったAPKがロードされるというものです。 しかし、それがなぜそれを行うのか、またはこの動作を防ぐ方法はわかりません。
11 android 

7
ページはViewPager2全体を埋める必要があります(match_parentを使用)
画像、商品名、商品画像を表示するアイテムレイアウトがあります。制約レイアウトを使用して1:1.5比率で画像を表示する必要があります。しかし、小さな画像を読み込むと、テキストの下が表示されません。 以下は、アイテムXMLの私のコードです。 <?xml version="1.0" encoding="utf-8"?> <layout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools"> <androidx.constraintlayout.widget.ConstraintLayout android:id="@+id/coordinatorLayoutCartRoot" android:layout_width="match_parent" android:layout_height="match_parent"> <com.jackandphantom.circularimageview.RoundedImage android:id="@+id/imageViewSlider" android:layout_width="match_parent" android:layout_height="0dp" android:scaleType="centerCrop" app:layout_constraintBottom_toTopOf="@id/tvTitle" app:layout_constraintDimensionRatio="WH,1:1.4" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" app:rounded_radius="0" tools:src="@tools:sample/avatars" /> <TextView android:id="@+id/tvTitle" android:layout_width="0dp" android:layout_height="wrap_content" android:gravity="center" android:padding="4dp" android:text="Fitted crew neck sweater" android:textColor="@color/colorBlack" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@id/imageViewSlider" /> <TextView android:id="@+id/tvPrice" android:layout_width="0dp" android:layout_height="wrap_content" android:gravity="center" android:padding="4dp" android:text="$34.00" android:textColor="@color/colorBlack" android:textStyle="bold" …


3
ViewBinding-インクルードされたレイアウトのバインディングを取得する方法は?
ViewBindingを使用していると、文書化されていないケースがほとんどありません。 最初に、含まれている汎用ビューレイアウトパーツのバインディングを取得するには、メインバインディングでメインレイアウトのアイテムのみを表示しますか? 2番目:含まれているマージタイプレイアウトパーツのバインディングを取得する方法、ここでもメインバインディングはメインレイアウトのアイテムのみを表示しますか?

3
Android RecognitionListener:onResultsが2回呼び出される
Kotlinで記述されたRecognitionListenerを使用するプロジェクトがあります。スピーチからテキストへの変換機能は常に成功し、問題が発生することはありませんでした。 先週から、onResult関数が2回呼び出され始めました。プロジェクトは変更されていません。私はプロジェクトの古いバージョン(数か月前から)をテストしましたが、それらには同じ問題がありました。 3つの異なるケースがあります。 小さなテキスト(1〜8ワード)とSpeechRecognizerが自動的に停止される-> onResult()が2回呼び出される。 大きなテキスト(9ワード以上)とSpeechRecognizerが自動的に停止される->通常の動作(onResult()が1回呼び出される)。 任意のテキストサイズとSpeechRecognizer stopListening()関数が手動で(コードから)呼び出される->通常の動作。 VoiceRecognitionの音声テキスト変換クラスコードを次に示します。 class VoiceRecognition(private val activity: Activity, language: String = "pt_BR") : RecognitionListener { private val AudioLogTag = "AudioInput" var voiceRecognitionIntentHandler: VoiceRecognitionIntentHandler? = null var voiceRecognitionOnResultListener: VoiceRecognitionOnResultListener? = null //Must have this var voiceRecognitionLayoutChanger: VoiceRecognitionLayoutChanger? = null var isListening = false private val …

1
Android 10を搭載した一部のデバイスでは、MediaRecorder.AudioSource.VOICE_COMMUNICATIONを使用して録音されたオーディオが空になる
次のコードを使用して、アプリでボイスメッセージのオーディオを録音しています。 MediaRecorder audioRecorder = new MediaRecorder(); audioRecorder.setAudioSource(MediaRecorder.AudioSource.VOICE_COMMUNICATION); audioRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4); audioRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.HE_AAC); audioRecorder.setOutputFile(audioRecordingFile); audioRecorder.prepare(); audioRecorder.start(); MediaRecorder.AudioSource.MICの代わりにMediaRecorder.AudioSource.VOICE_COMMUNICATIONを使用すると、前処理されたクリーンなオーディオを録音するのに非常に役立ちます。 しかし最近、記録されたファイルが空であるといういくつかの問題が最近Android 10に更新されたいくつかのデバイスで報告されていることに気付きました。すべてのAndroid 10デバイスにこれらの問題があるわけではなく、いくつか、つまりNokia 6.1とミA2。 エラーや例外はなく、空のオーディオ出力ファイルのみです。 MediaRecorder.AudioSource.MICを使用した場合)、問題は発生しません。 Android 10とVOICE_COMMUNICATIONに関連する次の情報が見つかりました。Android10 リリースには、VOICE_COMMUNICATIONでキャプチャするための次の要件が含まれています。 これに基づいて、次のコードを使用して、AcousticEchoCanceler、AutomaticGainControl、およびNoiseSuppressorの可用性を確認しました。 AcousticEchoCanceler.isAvailable() AutomaticGainControl.isAvailable() NoiseSuppressor.isAvailable() そして、Android 10搭載のMi A2とOnePlus 6でも同じ結果が見つかりました。どちらのデバイスでも、AcousticEchoCancelerとNoiseSuppressorが利用可能であり、AutomaticGainControlが利用不可能であることが示されています。 この問題はすべてのAndroidデバイスに存在するわけではないので、MediaRecorder.AudioSource.MIC)の使用に頼りたくありません。同時に、MediaRecorder.AudioSource.MICにフォールバックするタイミングを通知するエラー、例外、または差別化要因はありません。 更新: この問題は、Mi A2でGoogleアシスタントをオフにすると解決します。これはポインタである可能性があります:https : //developer.android.com/guide/topics/media/sharing-audio-input これに関するどんな助けでもありがたいです。

3
GoogleのキャストMediaNotificationServiceに多数のRemoteServiceExceptions
過去24時間以内に、Google内で数千のクラッシュが発生しましたMediaNotificationService。 Fatal Exception: android.app.RemoteServiceException Context.startForegroundService() did not then call Service.startForeground(): ServiceRecord{f9a4deb u0 <our package name>/com.google.android.gms.cast.framework.media.MediaNotificationService} android.app.ActivityThread$H.handleMessage (ActivityThread.java:1855) android.os.Handler.dispatchMessage (Handler.java:106) android.os.Looper.loop (Looper.java:214) android.app.ActivityThread.main (ActivityThread.java:6986) java.lang.reflect.Method.invoke (Method.java) com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:494) com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1445) 自分のフォアグラウンドサービスを作成するときに同様の問題が発生しましたが、これはキャストライブラリ内にあるため、制御できません。 Chromecastレシーバーはサードパーティによって処理されます。私たちは使用しています: api "com.google.android.gms:play-services-cast:17.0.0" api "com.google.android.gms:play-services-cast-framework:17.0.0" 潜在的な手がかり: OnePlus、Huawei、Samsung、Googleで起こっているようで、市場シェアに関連する数のすべてのメーカー(およびOSレベル)に見られます。 クラッシュはデバイスごとに異なる行で発生しています(たとえば、上記はGalaxy S9で、代わりにS8は1872行でクラッシュします)。Crashlyticsではグループ化されていません。これは、OS / Google Play開発者サービスレベルの問題であることを示唆しています。 クラッシュは、アプリのすべてのアクティブなバージョンで同時に発生します。 クラッシュは数か月間発生し続けていましたが、週末に急増し、減速の兆候は見られません。

1
クリップボードAPI呼び出しは、onPermissionRequest()を呼び出さずにNotAllowedErrorをスローします
ボタンが付いたシンプルなページがあります。ボタンを押すと、非同期クリップボードAPIを使用してクリップボードに書き込みます。 <body> <button type="button" onclick="testClipboard();"> Test Clipboard </button> </body> function testClipboard() { navigator.clipboard.writeText("Clipboard API Test").then( v => alert("Success"), e => alert("Fail\n" + e)); } これは、ChromeとFirefox、デスクトップとモバイルの両方で機能します。ただし、Android Webviewでは次のエラーがスローされます。 NotAllowError: Write permission denied. WebChromeClient.onPermissionRequest()権限を付与するためにオーバーライドする必要があると考えましたが、不思議なonPermissionRequest()ことに呼び出されていないようで、同じエラーがまだスローされます。 public class WebChromeController extends WebChromeClient { @Override public void onPermissionRequest(PermissionRequest request) { Log.d("myTag", "Permission request"); Log.d("myTag", request.getResources().toString()); request.grant(request.getResources()); } …

1
Firebase Analyticsから毎日概要メールを受信するにはどうすればよいですか?
アプリのダウンロードや、Firebaseからのその他のさまざまな統計に関する毎日の概要レポートを電子メールで受け取りたい。私は以前にファブリックを使用しましたが、使用することができましたが、ファブリックはまもなく廃止されるため(2020年5月)、Firebaseでも同じようにしたいと考えています。 メールの抜粋 解決策はありますか?

2
Dagger 2を使用してViewPager内に同じフラグメントのViewModelを挿入する方法
プロジェクトにDagger 2を追加しようとしています。フラグメントにViewModels(AndroidXアーキテクチャコンポーネント)を注入することができました。 私が持っている同じフラグメントの2つのインスタンスがあるViewPager(各タブの軽微な変更)と、各タブで、私が観察していますLiveData(API)からのデータの変更に更新されますすることを。 問題は、API応答が来てを更新するとLiveData、現在表示されているフラグメントの同じデータがすべてのタブのオブザーバーに送信されることです。(これはおそらくのスコープが原因であると思いますViewModel)。 これは私が私のデータを観察している方法です: override fun onActivityCreated(savedInstanceState: Bundle?) { super.onActivityCreated(savedInstanceState) activityViewModel.expenseList.observe(this, Observer { swipeToRefreshLayout.isRefreshing = false viewAdapter.setData(it) }) .... } このクラスを使用してViewModels を提供しています: class ViewModelProviderFactory @Inject constructor(creators: MutableMap<Class<out ViewModel?>?, Provider<ViewModel?>?>?) : ViewModelProvider.Factory { private val creators: MutableMap<Class<out ViewModel?>?, Provider<ViewModel?>?>? = creators override fun <T : ViewModel?> create(modelClass: Class<T>): T { …

3
スクロール位置の維持は、メッセージdivの下部近くにない場合にのみ機能します
私は他のモバイルチャットアプリを模倣しようとしています。send-messageテキストボックスを選択して仮想キーボードを開くと、一番下のメッセージがまだ表示されています。CSSでこれを驚くほど実行する方法はないようです。そのため、JavaScript resize(明らかにキーボードが開いているときと閉じているときを確認する唯一の方法)イベントと手動でスクロールして救助します。 誰かが提供するこのソリューションを、私は見つけたこのソリューションの両方が動作するように見えます。 1つの場合を除いて。以下のためにいくつかのあなたが以内であれば理由、MOBILE_KEYBOARD_HEIGHT(私の場合は250個のピクセル)メッセージのdivの下のピクセルモバイルキーボードを閉じると、奇妙な何かが起こります。前者のソリューションでは、一番下までスクロールします。後者のソリューションでは、代わりにMOBILE_KEYBOARD_HEIGHTピクセルを下から上にスクロールします。 この高さより上にスクロールすると、上に提供された両方のソリューションが問題なく機能します。彼らがこの小さな問題を抱えているのは、あなたが底辺りにいるときだけです。 多分それは私のプログラムがこれを引き起こしているいくつかの奇妙な迷子のコードだと思っていましたが、いいえ、私はフィドルを再現しさえしており、それはまさにこの問題を抱えています。これをデバッグするのが非常に困難になったことをお詫びしますが、電話でhttps://jsfiddle.net/t596hy8d/6/show(ショーのサフィックスは全画面モードを提供します)にアクセスすると、同じ動作。 その動作は、十分に上にスクロールすると、キーボードの開閉によって位置が維持されます。ただし、下部のピクセル内でキーボードを閉じると、MOBILE_KEYBOARD_HEIGHT代わりに下部にスクロールすることがわかります。 これは何が原因ですか? ここでのコードの再現: window.onload = function(e){ document.querySelector(".messages").scrollTop = 10000; bottomScroller(document.querySelector(".messages")); } function bottomScroller(scroller) { let scrollBottom = scroller.scrollHeight - scroller.scrollTop - scroller.clientHeight; scroller.addEventListener('scroll', () => { scrollBottom = scroller.scrollHeight - scroller.scrollTop - scroller.clientHeight; }); window.addEventListener('resize', () => { scroller.scrollTop = scroller.scrollHeight - scrollBottom - …

3
React NativeのAndroid App Bundle:APKまたはAndroid App Bundleをアップロードしましたが、一部のファイルの署名情報が無効または欠落しています
アプリを初めてGoogle Playストアに公開しようとしています。Google Play Signingにオプトインしました。別のキーを使用してアップロードする場合、コンソールは特定のSHA1識別子を持つ他のキーを使用してアップロードするよう指示するので、私は正しいキーでAndroid App Bundleに署名しているという事実を知っています。しかし、正しいキーでアップロードすると、次のエラーが発生します。 一部のファイルの署名情報が無効または欠落しているAPKまたはAndroid App Bundleをアップロードしました。 私は次のようにAndroid Studioを使用してアプリをビルドしています:ビルド>署名付きバンドル/ APKの生成> Android App Bundle>キーストアの選択とパスワードの入力>リリース>完了 アプリは、分離されたExpo / ExpoKitで構築されたReact Nativeアプリです。Apple App Storeへのアップロードは問題なく動作します。Playストアに問題があるだけです。何が欠けていますか? アップデート1:Google Playからアプリを完全に削除して、新しいアプリを作成しました。なかったではない今回の署名Google Playのために選ぶと署名APKをアップロードしました。まだ同じエラー。 Update 2:完全に新しいキーストアとキーを試してみました。まだ同じ。 これがどういうわけか重要になる場合のプロジェクト設定の概要は次のとおりです。 そしてここにありますandroid/app/build.gradle: buildscript { repositories { google() maven { url 'https://maven.fabric.io/public' } } dependencies { classpath 'io.fabric.tools:gradle:1.26.1' } } apply plugin: 'com.android.application' apply plugin: …

2
E / eglCodecCommon:GoldfishAddressSpaceHostMemoryAllocator:ioctl_ping failed for device_type = 5、ret = -1
AndroidStudioでアプリをテストするたびに、このエラーメッセージが表示されます。 私のアプリは正常に動作しますが、このエラーの意味について少し混乱しています。 グーグルでGoldfishAddressSpaceHostMemoryAllocator検索しても、4つの無関係な結果が見つかりました(クラスに名前を付けていますが、修正しようとしていません)。 このエラーメッセージはどういう意味ですか?

2
Multi-Simデバイスでの着信コールのターゲットSimCardの検出
私はたくさんの投稿を読んで多くの解決策を試しましたが、すべての投稿の共通点は、それらがすべて古くなっており、少なくとも新しいバージョンのAndroidで動作する解決策が見つからなかったことです。 投稿1、結果: intent.getExtras().getInt("simId", -1)常に-1を返します 投稿2、結果:intent.getExtras().getInt("slot", -1)常に-1を返します 投稿3、結果: String[] array = new String[]{ "extra_asus_dial_use_dualsim", "com.android.phone.extra.slot", "slot", "simslot", "sim_slot", "subscription", "Subscription", "phone", "com.android.phone.DialingMode", "simSlot", "slot_id", "simId", "simnum", "phone_type", "slotId", "slotIdx" }; for (String item : array) { Log.i(TAG, "Sim Card - " + item + " -----> " + intent.getExtras().getInt(item)); } ログ: …

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.