問題タブ [android-5.1.1-lollipop]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
16 に答える
441137 参照

android - Android getResources().getDrawable() 非推奨の API 22

新しい Android API 22getResources().getDrawable()では非推奨になりました。最善のアプローチは、 only を使用することですgetDrawable()

何が変わったのですか?

0 投票する
1 に答える
148 参照

android - Android 5.1.1で動作しないと主張しますか?

私のコードはassert呼び出しを広範囲に使用しています。

5.1.1 に更新した後 (Nexus 4 および Nexus 5 でテスト済み)、アサーション コールが無視されます。開発者向けオプションで「アプリのデバッグ」を選択しても違いはありませんでした。

誰かがこの問題を解決しましたか? (すべてのアサーションをいくつかに置き換えることを余儀なくされる前にmyAssert(..))。

更新:
私が開いた問題は、次のコメントで閉じられました:

debug.assert は実装されていませんでした。

このツールの需要はあまりないようです。 非常に強力なツールでした
assert


いくつかの利点:

  1. 以下を使用して、実行時に有効化および無効化します。

    adb shell setprop debug.assert 1 (または 0)

  2. some との比較public static myAssert(boolean condition,String message)- myAssert はmessageいずれの場合でも を実行/評価しますが、これは falseassertの場合にのみ実行します。conditionそのmyAssert(..)ため、特にArrays.toString(..). myAssertまた、プロファイリングを行っている場合は、呼び出しをスキップする必要があります。

0 投票する
0 に答える
580 参照

android - Android 5 以降の画面ロックでは、WindowManager でビューを追加できません

Android 5+まで非常にうまく機能する識別通話アプリを持っています。

基本的に、私は呼び出しを識別した後に電話が鳴ったときに「自分のことをする」BroadcastReceiverを持っています。小さなビューを追加します。

新しい Galaxy Edge s6 では、電話がロックされていると機能しません。

ここに私の関連コードがあります

app.PhoneLayout には、インフレート後のレイアウトなどが含まれています。

なぜそのようなことが起こるのか誰にも分かりますか?また、電話がロックされている場合でもビューが表示されるようにするにはどうすればよいですか?

古いデバイスでも問題なく動作しています。

誰かがこれについて彼の考えを共有できることを願っています

0 投票する
2 に答える
3470 参照

android - Runtime.exec(...) で dpm を実行する

この回答dpmは、Android アプリが次のように実行できることを示唆しています。

これは、5.1.1 を実行している Nexus 4 でサイレントに失敗します。シェルはエラー コード 0 (成功) を返し、コンソール出力はありません。明らかな成功にもかかわらず、私のアプリはデバイスの所有者になりません。デバイスは出荷時設定にリセットされたばかりで、ユーザー アカウントは構成されていません。

コントロールとして、の代わりにガベージコマンドを実行してみましたdpm。期待どおりに失敗します。

これはうまくいきましたか?意図的に弱体化されたのですか?

0 投票する
1 に答える
6647 参照

android - ロリポップ デバイスで旧式のタイム ピッカー (ロリポップ前のタイム ピッカー) を表示できますか

ロリポップ デバイスで古いタイム ピッカー (以前のロリポップ デバイスのタイム ピッカーなど) を表示したい。これは可能です。

0 投票する
1 に答える
8628 参照

android-emulator - SDK Emulator で Android システムの WebView を更新する

Android 5.x デバイスでの最新の Android システム WebView 更新 (44.0.2403.39) の後で、cordova アプリに問題があります。

SDK Emulator で再現された問題を更新したいと思います。ただし、Android 5.1 の標準イメージには、WebView バージョン 39 が付属しています。

エミュレータでこのコンポーネントを更新する方法はありますか?

ここで更新用の APK を見つけましたが、インストールした後、システム設定のアプリ リストに 2 つのエントリが表示され、更新されません。だから私は問題を再現することはできません。

2 つのシステム WebView

1 つ目はエミュレータ v39 に付属のビューで、2 つ目は v44 です。

  • また、エミュレータのシステム ファイルを変更して手動で更新する方法はありますか?
  • または、adbシェルでWebviewをプログラムで変更する方法はありますか?
0 投票する
2 に答える
447 参照

android - lollipop での SwitchPreference コールバック動作の変更

ここに画像の説明を入力

私たちのプロジェクトでは、wifi 設定に似た SwitchPreference を使用しています。ユーザーはトグル ボタンをクリックして値を切り替えることができ、ユーザーはタイトルをクリックしてより多くのオプションを表示できます。

しかし、これはロリポップでは機能しません。lollipop の動作に変化が見られます。

キットカットでは:

ユーザーがトグル ボタンをタップするとonPreferenceChangedコールバックが呼び出され、ユーザーがタイトルをタップするとonPreferenceClickedが呼び出されます。

lollipop の場合: トグル ボタンまたはタイトルをタップすると、 onPreferenceClickedが常に呼び出され、その後onPreferenceChangedが呼び出されます。ロリポップで同じ動作を得るにはどうすればよいですか? この動作は機能を壊しています。