問題タブ [android-12]

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 投票する
8 に答える
7999 参照

android - android:exported が追加されたが、まだエラーが発生する Android 12 以降を対象とするアプリでは、android:exported に明示的な値を指定する必要があります

マニフェストの唯一のアクティビティに追加android:exported="true"しましたが、コンパイル SDK とターゲット SDK のバージョンを 31 に更新した後もエラーを下回っています。また、プロジェクトを再構築し、キャッシュを無効にして再起動しようとしましたが、それは役に立ちませんでした

エラー- Apps targeting Android 12 and higher are required to specify an explicit value for android:exported when the corresponding component has an intent filter defined. See https://developer.android.com/guide/topics/manifest/activity-element#exported for details.

AndroidManifest ファイル

マージされたマニフェスト エラー

appcompat-resources:1.3.1 マニフェスト、runtime-livedata:1.0.0 マニフェスト、runtime-saveable:1.0.1 マニフェスト、firebase-measurement-connector:19.0.0 マニフェスト、vectordrawable-animated:1.1.0 マニフェスト、メイン nav_graph。 xml ナビゲーション ファイル マージ エラー: エラー: android:exported を明示的に指定する必要があります。Android 12 以降を対象とするアプリでは、明示的な値を指定する必要があります。android:exported対応するコンポーネントにインテント フィルタが定義されている場合。詳細については、https://developer.android.com/guide/topics/manifest/activity-element#exported を参照してください。Dairy.app メイン マニフェスト (このファイル) エラー: android:exported を明示的に指定する必要があります。Android 12 以降を対象とするアプリではandroid:exported、対応するコンポーネントにインテント フィルタが定義されている場合に明示的な値を指定する必要があります。詳細については、https://developer.android.com/guide/topics/manifest/activity-element#exported を参照してください。Dairy.app メイン マニフェスト (このファイル) エラー: android:exported を明示的に指定する必要があります。Android 12 以降を対象とするアプリでは、明示的な値を指定する必要があります。android:exported対応するコンポーネントにインテント フィルタが定義されている場合。詳細については、https://developer.android.com/guide/topics/manifest/activity-element#exported を参照してください。Dairy.app メイン マニフェスト (このファイル)

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

android - ターゲット SDK 30 を使用した Android アプリからインターネットが機能しない

私たちが知っているように、Google は新しいアプリが Android 11 (API レベル 30) 以上をターゲットにする必要があるというポリシーを更新しました。下位のターゲット SDK を使用している場合、アプリは期待どおりに動作しますが、ターゲット SDK 30 を使用している場合、期待どおりに動作しません。

アプリには次の主な機能があります。

  • 利用可能な WiFi は、Android 6 から 11 (最新の Android バージョン) のリストに表示されます。
  • リスト項目をクリックした後、ユーザーはそれぞれの Wi-Fi に接続する必要があります。OPEN またはその他のいずれかです。
  • それぞれの WiFi に接続した後、キャプティブ ページがあればそのページにリダイレクトされます。キャプティブ ページは、アプリへの WebView になります。

要点を言えば、対象の 30 SDK で次の問題に直面しています。

  • 最新の提案wifi接続コード[1]を使用している場合、部分的に機能しています。1つの問題があります。すでに別のWiFi接続に接続していて、新しいWiFiに接続しようとしているとします。新しいWiFiに接続していませんが、私は新しいWifiに接続する必要があります。

ターゲットSDK 30を使用してアプリで使用しているコード(新しいWifiに接続していない)-

ターゲット SDK 29 を使用してアプリで使用しているコード(これは期待どおりに動作していますが、ターゲット SDK は 28 または 29 である必要があります。それ以外の場合、インターネットはアプリケーションから機能しません)-

  • Android 9 の古い減価償却コードでは、すべてが期待どおりに機能しています。

    以下の Android 9 abd で使用されているコード(期待どおりに動作し、対象の SDK に影響を与えていません)-

    }

結論:ターゲット SDK 30で利用可能な WiFi に接続するためにWifiNetworkSpecifierを使用している場合、接続できますが、私のインターネットはアプリでのみ機能します。ターゲット SDK 30で利用可能な WiFi に接続するために最新の提案 WiFiを使用している場合、新しい WiFi に接続できません。Android 10 および Android 11 デバイスでこの問題に直面しています。

解決策を教えてください。POC コードを確認してください[こちら]