質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

Q&A

1回答

2038閲覧

Visual Studioを使ったC#での顔認証システムの開発

ladyinredjes

総合スコア12

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

0グッド

0クリップ

投稿2020/03/11 16:40

編集2020/03/12 07:05

前提・実現したいこと

Visual studioで顔認証システムの開発をしています。
マニフェストファイルでの下記のエラーがどうしても解決できません。

発生している問題・エラーメッセージ

Error unexpected element <provider> found in <manifest>. 該当コードは以下です。 ** <meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/file_paths"/>**

該当のソースコード

<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="1" android:versionName="1.0" package="com.companyname.businesscase" android:installLocation="auto"> <uses-sdk android:minSdkVersion="24" android:targetSdkVersion="27" /> <application android:label="BusinessCase.Android"></application> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.CAMERA" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <provider android:name="android.support.v4.content.FileProvider" android:authorities="${applicationId}.fileprovider" android:exported="false" android:grantUriPermissions="true"> ** <meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/file_paths"/>** </provider> </manifest>'

試したこと

</application>の位置を</provider>の前に置く

補足情報(FW/ツールのバージョンなど)

実行後に自動で以下のコードに書き換えられます。

<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="1" android:versionName="1.0" package="com.companyname.businesscase" android:installLocation="auto"> <uses-sdk android:minSdkVersion="24" android:targetSdkVersion="27" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <uses-feature android:name="android.hardware.camera" android:required="false" /> <uses-feature android:name="android.hardware.camera.autofocus" android:required="false" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.CAMERA" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <application android:label="BusinessCase.Android" android:name="android.app.Application" android:allowBackup="true" android:icon="@mipmap/icon" android:debuggable="true"> <activity android:configChanges="orientation|screenSize" android:icon="@mipmap/icon" android:label="BusinessCase" android:theme="@style/MainTheme" android:name="crc64145a7a6fe65cf54e.MainActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <receiver android:enabled="true" android:exported="false" android:label="Connectivity Plugin Broadcast Receiver" android:name="crc64cea48322b3427ae9.ConnectivityChangeBroadcastReceiver" /> <activity android:configChanges="orientation|screenSize" android:name="crc646957603ea1820544.MediaPickerActivity" /> <service android:name="crc64a98abb514ffad9f1.KeepAliveService" /> <receiver android:enabled="true" android:exported="false" android:label="Essentials Battery Broadcast Receiver" android:name="crc64a0e0a82d0db9a07d.BatteryBroadcastReceiver" /> <receiver android:enabled="true" android:exported="false" android:label="Essentials Energy Saver Broadcast Receiver" android:name="crc64a0e0a82d0db9a07d.EnergySaverBroadcastReceiver" /> <receiver android:enabled="true" android:exported="false" android:label="Essentials Connectivity Broadcast Receiver" android:name="crc64a0e0a82d0db9a07d.ConnectivityBroadcastReceiver" /> <provider android:authorities="com.companyname.businesscase.fileProvider" android:exported="false" android:grantUriPermissions="true" android:name="xamarin.essentials.fileProvider"> <meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/xamarin_essentials_fileprovider_file_paths" /> </provider> <receiver android:enabled="true" android:exported="false" android:name="crc643f46942d9dd1fff9.PowerSaveModeBroadcastReceiver" /> <provider android:name="mono.MonoRuntimeProvider" android:exported="false" android:initOrder="1999999999" android:authorities="com.companyname.businesscase.mono.MonoRuntimeProvider.__mono_init__" /> <!--suppress ExportedReceiver--> <receiver android:name="mono.android.Seppuku"> <intent-filter> <action android:name="mono.android.intent.action.SEPPUKU" /> <category android:name="mono.android.intent.category.SEPPUKU.com.companyname.businesscase" /> </intent-filter> </receiver> </application> <provider android:name="android.support.v4.content.FileProvider" android:authorities="com.companyname.businesscase.fileprovider" android:exported="false" android:grantUriPermissions="true"> <meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/file_paths"></meta-data> </provider> </manifest>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

AndroidManifest.xml の <provider><application> の中に書く必要があります。こんな感じ。

xml

1<?xml version="1.0" encoding="utf-8"?> 2<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="1" android:versionName="1.0" package="com.companyname.businesscase" android:installLocation="auto"> 3 <uses-sdk android:minSdkVersion="24" android:targetSdkVersion="27" /> 4 5 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 6 <uses-permission android:name="android.permission.CAMERA" /> 7 <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> 8 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 9 10 <application android:label="BusinessCase.Android"> 11 <provider android:name="android.support.v4.content.FileProvider" 12 android:authorities="${applicationId}.fileprovider" 13 android:exported="false" 14 android:grantUriPermissions="true"> 15 <meta-data android:name="android.support.FILE_PROVIDER_PATHS" 16 android:resource="@xml/file_paths"/>** 17 </provider> 18 </application> 19</manifest>

また、最後の行の </manifest> の後ろに余計な ' がありますね。
それから、<uses-sdk> はここにも書けますが、最近は app/build.gradle に書くのが普通かと。

投稿2020/03/11 21:23

hoshi-takanori

総合スコア7901

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ladyinredjes

2020/03/12 07:04

回答ありがとうございます。この通り実行してみましたがエラーは変わらずコードは自動で上記に書き換えられました、、、
hoshi-takanori

2020/03/12 07:36

よく見たら Android Studio じゃなくて Visual Studio + C# なんですね。Visual Studio が勝手に AndroidManifest.xml を書き換えるのでしょうか。ごめんなさい、分かりません。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問