Android模拟器出现 Could not initialize DirectSoundCapture

今天重装完Android Studio,启动模拟器时出现了以下问题

Emulator: dsound: Could not initialize DirectSoundCapture 15:37 Emulator: dsound: Reason: No sound driver is available for use, or the given GUID is not a valid DirectSound device ID 15:37 Emulator: dsound: Attempt to initialize voice without DirectSoundCapture object 15:37 Emulator: dsound: Attempt to initialize voice without DirectSoundCapture object 15:37 Emulator: audio: Failed to create voice `goldfish_audio_in‘ 15:37 Emulator: D:\buildSoft\android-studio\sdk\emulator\qemu\windows-x86_64\qemu-system-i386.exe: warning: opening audio input failed 15:37 Emulator: dsound: Attempt to initialize voice without DirectSoundCapture object 15:37 Emulator: dsound: Attempt to initialize voice without DirectSoundCapture object 15:37 Emulator: audio: Failed to create voice `adc’

找了好久终于找到了解决方法:

https://jingyan.baidu.com/article/a65957f434890a24e67f9bfc.html

1、打开系统声音设置,打开声音控制面板

2、将录制里的立体声混音打开

3、重启模拟器,OK

Android 7.0以上使用VirtualXposed+JustTrustMe抓包

Android7.0以上默认不再信任用户证书,我们就无法抓取HTTPS包。

我们需要下面两个工具来使我们能够简单免Root的抓取Https包:

VirtualXposed 是基于VirtualApp 和 epic 在非ROOT环境下运行Xposed模块的实现。

JustTrustMe 是一个Xposed模块,用来信任全部证书。

首先安装VirtualXposed,运行Xposed模块

下载地址:https://github.com/android-hacker/VirtualXposed

VirtualXposed安装完成后下载JustTrustMe

下载地址:https://github.com/Fuzion24/JustTrustMe

将JustTrustMe安装在VirtualXposed中,并启用JustTrustMe模块,再将需要抓包的APP添加到VirtualXposed中

接下来按常规抓包方式,安装证书、设置代理,在VirtualXposed中打开需要抓包的APP就可以正常抓包了

 

Android7.0无法使用Fiddler抓取HTTPS问题

安卓7.0以后不在默认信任用户根证书,需要在network_security_config.xml中信任用户根证书。

1、首先需要使用apktool反编译APK

2、更改res/xml中的network_security_config.xml

<network-security-config>
<base-config>
<trust-anchors>
<!– Trust preinstalled CAs –>
<certificates src=”system” />
<!– Additionally trust user added CAs –>
<certificates src=”user” />
</trust-anchors>
</base-config>
</network-security-config>

3、重新打包APK安装,抓包即可

参考:

https://www.kalvin.cn/article/14

Android 7: Intercepting App Traffic

http://www.freebuf.com/articles/terminal/158492.html

https://www.jianshu.com/p/eb766d2bb837

UWP 生成错误error MSB4064: “CompileXaml”任务不支持“PlatformXmlDir”参数。

UWP项目(SDK 16299)生成项目时出现下列问题

1>C:\Program Files (x86)\Windows Kits\10\bin\10.0.16299.0\XamlCompiler\Microsoft.Windows.UI.Xaml.Common.targets(387,13): error MSB4064: “CompileXaml”任务不支持“PlatformXmlDir”参数。请确认该参数存在于此任务中,并且是可设置的公共实例属性。
1>C:\Program Files (x86)\Windows Kits\10\bin\10.0.16299.0\XamlCompiler\Microsoft.Windows.UI.Xaml.Common.targets(353,5): error MSB4063: 未能使用“CompileXaml”任务的输入参数初始化该任务。

解决方法:

更改目标SDK版本

或者

编辑C:\Program Files (x86)\Windows Kits\10\bin\10.0.16299.0\XamlCompiler\Microsoft.Windows.UI.Xaml.Common.targets

删除或注释到下面三行

PlatformXmlDir=”$(PlatformXmlDir)”

<Output ItemName=”FileWrites” TaskParameter=”GeneratedXamlPagesFiles” />

<Output ItemName=”GeneratedXamlPagesFiles” TaskParameter=”GeneratedXamlPagesFiles” />

 

 

参考:

https://developercommunity.visualstudio.com/content/problem/145097/msb4064-the-platformxmldir.html

VS17 安装RDLC与RepostViewer

1、在扩展和更新中找到ReportDesigner安装

2、Nuget安装Controls

Install-Package Microsoft.ReportingServices.ReportViewerControl.WinForms

3、添加到工具箱

文件位置 {Solution Directory}\packages\Microsoft.ReportingServices.ReportViewerControl.Winforms.{version}\lib\net40

 

参考:

http://blog.csdn.net/dietime1943/article/details/78332584

https://docs.microsoft.com/en-us/sql/reporting-services/application-integration/integrating-reporting-services-using-reportviewer-controls-get-started##adding-control-to-visual-studio-toolbar

Xamarin.Forms 遇到一些小问题

Xamarin.Forms的XAML跟WPF和UWP的XAML有点不同

1、Margin不能设置单个或空格隔开,得用“,”隔开

<Label Margin=”8,0,8,4″></Label>

2、不能用XXX.DataContext这样绑定,得用BindingContext

3、宽高用 WidthRequest、HeightRequest

4、调试时需要手机电脑同一网络下

5、原生Java语法换成C#的小问题

小写开头方法名变成大写开头

getPackageManager() 方法含get 变成 PackageManager属性

 

ASP.NET MVC 学习02

1、@Html.Raw(htmlString) 输出HTML格式

2、模板页定义@RenderSection(“scripts”, required: false),子页面可调用添加相关代码

3、@ViewContext.RouteData.Values[“controller”]’取当前控制器

4、使用SessionSystem.Web.HttpContext.Current.Session["test"]="123";

5、RedirectToAction重定向到指定方法