fix Intent filter issue on Android 6 (https://keepass2android.codeplex.com/workitem/518)
This commit is contained in:
		| @@ -1127,14 +1127,8 @@ namespace keepass2android | ||||
| 			//started from "view" intent (e.g. from file browser) | ||||
| 			_ioConnection.Path = i.DataString; | ||||
|  | ||||
| 			if (! _ioConnection.Path.Substring(0, 7).Equals("file://")) | ||||
| 			if (_ioConnection.Path.StartsWith("file://")) | ||||
| 			{ | ||||
| 				//TODO: this might no longer be required as we can handle http(s) and ftp as well (but we need server credentials therefore) | ||||
| 				Toast.MakeText(this, Resource.String.error_can_not_handle_uri, ToastLength.Long).Show(); | ||||
| 				Finish(); | ||||
| 				return false; | ||||
| 			} | ||||
|  | ||||
| 				_ioConnection.Path = URLDecoder.Decode(_ioConnection.Path.Substring(7)); | ||||
|  | ||||
| 				if (_ioConnection.Path.Length == 0) | ||||
| @@ -1146,13 +1140,25 @@ namespace keepass2android | ||||
| 				} | ||||
|  | ||||
| 				File dbFile = new File(_ioConnection.Path); | ||||
| 			if (! dbFile.Exists()) | ||||
| 				if (!dbFile.Exists()) | ||||
| 				{ | ||||
| 					// File does not exist | ||||
| 					Toast.MakeText(this, Resource.String.FileNotFound, ToastLength.Long).Show(); | ||||
| 					Finish(); | ||||
| 					return false; | ||||
| 				} | ||||
| 			} | ||||
| 			else | ||||
| 			{ | ||||
| 				if (!_ioConnection.Path.StartsWith("content://")) | ||||
| 				{ | ||||
| 			 | ||||
| 					Toast.MakeText(this, Resource.String.error_can_not_handle_uri, ToastLength.Long).Show(); | ||||
| 					Finish(); | ||||
| 					return false; | ||||
| 				} | ||||
| 			} | ||||
|  | ||||
| 			 | ||||
| 			_keyFileOrProvider = GetKeyFile(_ioConnection.Path); | ||||
| 			return true; | ||||
|   | ||||
| @@ -77,6 +77,15 @@ | ||||
|     </service> | ||||
|   | ||||
| 		<activity android:configChanges="orientation" android:label="@string/app_name" android:theme="@style/MyTheme_Blue" android:name="keepass2android.PasswordActivity"  android:windowSoftInputMode="adjustResize"> | ||||
| 			<intent-filter android:label="@string/app_name"> | ||||
| 				<action android:name="android.intent.action.VIEW" /> | ||||
| 				<category android:name="android.intent.category.DEFAULT" /> | ||||
| 				<category android:name="android.intent.category.BROWSABLE" /> | ||||
| 				<data android:scheme="content" /> | ||||
| 				<data android:mimeType="*/*" /> | ||||
| 				<data android:host="*" /> | ||||
| 			  </intent-filter> | ||||
| 			   | ||||
| 			<intent-filter android:label="@string/app_name"> | ||||
| 				<action android:name="android.intent.action.VIEW" /> | ||||
| 				<category android:name="android.intent.category.DEFAULT" /> | ||||
|   | ||||
| @@ -69,6 +69,15 @@ | ||||
|         </activity> | ||||
|   | ||||
| 		<activity android:configChanges="orientation" android:label="@string/app_name" android:theme="@style/MyTheme_Blue" android:name="keepass2android.PasswordActivity"  android:windowSoftInputMode="adjustResize"> | ||||
| 	   		  <intent-filter android:label="@string/app_name"> | ||||
| 				<action android:name="android.intent.action.VIEW" /> | ||||
| 				<category android:name="android.intent.category.DEFAULT" /> | ||||
| 				<category android:name="android.intent.category.BROWSABLE" /> | ||||
| 				<data android:scheme="content" /> | ||||
| 				<data android:mimeType="*/*" /> | ||||
| 				<data android:host="*" /> | ||||
| 			  </intent-filter> | ||||
|  | ||||
| 			  <intent-filter android:label="@string/app_name"> | ||||
| 				<action android:name="android.intent.action.VIEW" /> | ||||
| 				<category android:name="android.intent.category.DEFAULT" /> | ||||
|   | ||||
| @@ -49,6 +49,15 @@ | ||||
| 		<activity android:configChanges="orientation" android:label="@string/app_name" android:theme="@style/MyTheme_Blue" android:name="keepass2android.PasswordActivity" android:windowSoftInputMode="adjustResize"> | ||||
| 					<intent-filter android:label="@string/app_name"> | ||||
| 				<action android:name="android.intent.action.VIEW" /> | ||||
| 				<category android:name="android.intent.category.DEFAULT" /> | ||||
| 				<category android:name="android.intent.category.BROWSABLE" /> | ||||
| 				<data android:scheme="content" /> | ||||
| 				<data android:mimeType="*/*" /> | ||||
| 				<data android:host="*" /> | ||||
| 			  </intent-filter> | ||||
|  | ||||
| 			  <intent-filter android:label="@string/app_name"> | ||||
| 		  <action android:name="android.intent.action.VIEW" /> | ||||
| 			    <category android:name="android.intent.category.DEFAULT" /> | ||||
| 			    <category android:name="android.intent.category.BROWSABLE" /> | ||||
| 			    <data android:scheme="file" /> | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Philipp Crocoll
					Philipp Crocoll