mirror of
https://github.com/Nioux/AideDeJeu.git
synced 2025-12-15 14:49:42 +00:00
Test search
This commit is contained in:
parent
08135c06eb
commit
ad9344567c
5 changed files with 94 additions and 2 deletions
|
|
@ -11,8 +11,9 @@ using System.Diagnostics;
|
||||||
|
|
||||||
namespace AideDeJeu.Droid
|
namespace AideDeJeu.Droid
|
||||||
{
|
{
|
||||||
|
[IntentFilter(new[] { Android.Content.Intent.ActionAssist }, Categories = new[] { Android.Content.Intent.CategoryDefault })]
|
||||||
//[Activity(Label = "Aide de Jeu", Icon = "@drawable/black_book", Theme = "@style/MainTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
|
//[Activity(Label = "Aide de Jeu", Icon = "@drawable/black_book", Theme = "@style/MainTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
|
||||||
[Activity(Label = "Beta Haches & Dés", Icon = "@drawable/battle_axe", Theme = "@style/MyTheme.Splash", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
|
[Activity(Name = "com.nioux.aidedejeu.MainActivity", Label = "Beta Haches & Dés", Icon = "@drawable/battle_axe", Theme = "@style/MyTheme.Splash", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
|
||||||
public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
|
public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
|
||||||
{
|
{
|
||||||
protected override void OnCreate(Bundle bundle)
|
protected override void OnCreate(Bundle bundle)
|
||||||
|
|
@ -22,6 +23,9 @@ namespace AideDeJeu.Droid
|
||||||
|
|
||||||
base.OnCreate(bundle);
|
base.OnCreate(bundle);
|
||||||
|
|
||||||
|
// Application Level Assistance
|
||||||
|
//Application.RegisterOnProvideAssistDataListener(new AndroidListener());
|
||||||
|
|
||||||
AppDomain.CurrentDomain.UnhandledException += CurrentDomainOnUnhandledException;
|
AppDomain.CurrentDomain.UnhandledException += CurrentDomainOnUnhandledException;
|
||||||
TaskScheduler.UnobservedTaskException += TaskSchedulerOnUnobservedTaskException;
|
TaskScheduler.UnobservedTaskException += TaskSchedulerOnUnobservedTaskException;
|
||||||
|
|
||||||
|
|
@ -38,9 +42,37 @@ namespace AideDeJeu.Droid
|
||||||
|
|
||||||
DisplayCrashReport();
|
DisplayCrashReport();
|
||||||
|
|
||||||
|
//// Verify the action and get the query
|
||||||
|
//if (Android.Content.Intent.ActionSearch == Intent.Action)
|
||||||
|
//{
|
||||||
|
// var query = Intent.GetStringExtra(SearchManager.Query);
|
||||||
|
//}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
LoadApplication(new App());
|
LoadApplication(new App());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected override void OnNewIntent(Android.Content.Intent intent)
|
||||||
|
{
|
||||||
|
base.OnNewIntent(intent);
|
||||||
|
Intent = intent;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override void OnPostResume()
|
||||||
|
{
|
||||||
|
base.OnPostResume();
|
||||||
|
if (Intent.Extras != null)
|
||||||
|
{
|
||||||
|
string search = Intent.Extras.GetString("search");
|
||||||
|
if (!string.IsNullOrEmpty(search))
|
||||||
|
{
|
||||||
|
Xamarin.Forms.Shell.Current.Navigation.PushAsync(new Views.Library.DeepSearchPage(search));
|
||||||
|
}
|
||||||
|
Intent.RemoveExtra("search");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public override void OnBackPressed()
|
public override void OnBackPressed()
|
||||||
{
|
{
|
||||||
if (Rg.Plugins.Popup.Popup.SendBackPressed(base.OnBackPressed))
|
if (Rg.Plugins.Popup.Popup.SendBackPressed(base.OnBackPressed))
|
||||||
|
|
@ -126,5 +158,41 @@ namespace AideDeJeu.Droid
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[IntentFilter(new[] { Android.Content.Intent.ActionAssist }, Categories = new[] { Android.Content.Intent.CategoryDefault })]
|
||||||
|
//[Activity(Label = "Aide de Jeu", Icon = "@drawable/black_book", Theme = "@style/MainTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
|
||||||
|
[Activity(Name = "com.nioux.aidedejeu.SearchActivity")]
|
||||||
|
public class SearchActivity : Android.App.Activity // global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
|
||||||
|
{
|
||||||
|
protected override void OnCreate(Bundle bundle)
|
||||||
|
{
|
||||||
|
base.OnCreate(bundle);
|
||||||
|
|
||||||
|
// Application Level Assistance
|
||||||
|
//Application.RegisterOnProvideAssistDataListener(new AndroidListener());
|
||||||
|
|
||||||
|
// Android.Content.Intent.ActionSearch.Equals
|
||||||
|
// Verify the action and get the query
|
||||||
|
if ("com.google.android.gms.actions.SEARCH_ACTION".Equals(Intent.Action))
|
||||||
|
{
|
||||||
|
var query = Intent.GetStringExtra(SearchManager.Query);
|
||||||
|
System.Diagnostics.Debug.WriteLine(query);
|
||||||
|
|
||||||
|
var intent = new Android.Content.Intent(Android.App.Application.Context, typeof(MainActivity));
|
||||||
|
intent.AddFlags(Android.Content.ActivityFlags.NewTask);
|
||||||
|
intent.PutExtra("search", query);
|
||||||
|
intent.AddFlags(Android.Content.ActivityFlags.ReorderToFront);
|
||||||
|
Android.App.Application.Context.StartActivity(intent);
|
||||||
|
}
|
||||||
|
this.FinishActivity(0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
public class AndroidListener : Java.Lang.Object, Application.IOnProvideAssistDataListener
|
||||||
|
{
|
||||||
|
public void OnProvideAssistData(Android.App.Activity activity, Bundle data)
|
||||||
|
{
|
||||||
|
System.Diagnostics.Debug.WriteLine("OnProvideAssistData");
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -5,5 +5,11 @@
|
||||||
<provider android:name="android.support.v4.content.FileProvider" android:authorities="com.nioux.aidedejeu.fileprovider" android:exported="false" android:grantUriPermissions="true">
|
<provider android:name="android.support.v4.content.FileProvider" android:authorities="com.nioux.aidedejeu.fileprovider" android:exported="false" android:grantUriPermissions="true">
|
||||||
<meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/file_paths"></meta-data>
|
<meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/file_paths"></meta-data>
|
||||||
</provider>
|
</provider>
|
||||||
|
<activity android:name=".SearchActivity">
|
||||||
|
<intent-filter>
|
||||||
|
<action android:name="com.google.android.gms.actions.SEARCH_ACTION"/>
|
||||||
|
<category android:name="android.intent.category.DEFAULT"/>
|
||||||
|
</intent-filter>
|
||||||
|
</activity>
|
||||||
</application>
|
</application>
|
||||||
</manifest>
|
</manifest>
|
||||||
2
AideDeJeu/AideDeJeu.Android/testsearch.bat
Normal file
2
AideDeJeu/AideDeJeu.Android/testsearch.bat
Normal file
|
|
@ -0,0 +1,2 @@
|
||||||
|
"C:\Program Files (x86)\Android\android-sdk\platform-tools\adb.exe" shell am start -a com.google.android.gms.actions.SEARCH_ACTION -e query "barde" com.nioux.aidedejeu
|
||||||
|
pause
|
||||||
|
|
@ -16,7 +16,7 @@ namespace AideDeJeu
|
||||||
public partial class App : Application
|
public partial class App : Application
|
||||||
{
|
{
|
||||||
|
|
||||||
public App ()
|
public App (string search = null)
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
|
|
||||||
|
|
@ -38,6 +38,10 @@ namespace AideDeJeu
|
||||||
Routing.RegisterRoute("item", typeof(Views.Library.ItemPage));
|
Routing.RegisterRoute("item", typeof(Views.Library.ItemPage));
|
||||||
//MainPage = mainNavigationPage;
|
//MainPage = mainNavigationPage;
|
||||||
//mainNavigationPage.Navigation.PushAsync(new MainPage());
|
//mainNavigationPage.Navigation.PushAsync(new MainPage());
|
||||||
|
if (search != null)
|
||||||
|
{
|
||||||
|
Shell.Current.Navigation.PushAsync(new Views.Library.DeepSearchPage());
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -30,6 +30,18 @@ namespace AideDeJeu.Views.Library
|
||||||
BindingContext = new DeepSearchViewModel();
|
BindingContext = new DeepSearchViewModel();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public DeepSearchPage(string search = null)
|
||||||
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
|
||||||
|
BindingContext = new DeepSearchViewModel();
|
||||||
|
|
||||||
|
if (search != null)
|
||||||
|
{
|
||||||
|
(BindingContext as DeepSearchViewModel).ExecuteSearchCommandAsync(search);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private async void ItemsListView_ItemTapped(object sender, ItemTappedEventArgs e)
|
private async void ItemsListView_ItemTapped(object sender, ItemTappedEventArgs e)
|
||||||
{
|
{
|
||||||
var searchedItem = e.Item as SearchedItem;
|
var searchedItem = e.Item as SearchedItem;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue