反编译安卓apk文件
需要用到的工具:
apktool
jd-gui
dex2jar
方法一使用apktool,下载解压apktool,然后打开cmd,进入apktool所在的文件夹,命令 apktool d Demo.apk
方法二下载jd-gui和dex2jar,全部解压,解压Demo.apk,复制里面的.dex文件到dex2jar的文件夹内, 然后打开cmd,进入dex2jar所在的文件夹,命令d2j-dex2jar classes.dex 。会在文件夹中生成 classes-dex2jar.jar。
打开jd-gui,把上面生成的 classes-dex2jar.jar 打开。就可以看到java源码了。
参考文章: https://juejin.im/post/5d804928f265da03a7160717
让Pivot Headers在页面居中
想让所有的Header都在页面居中,于是找到了以下方法。 找到答案的页面
通过修改Pivot的模板中的下面内容。其实就是在模板中搜索“HeaderClipper”,然后把HorizontalContentAlignment="Stretch"改为HorizontalContentAlignment="Center"。大功告成。
123<!-- some code before --><ContentControl x:Name="HeaderClipper" Grid.Column="1" HorizontalContentAlignment="Center" UseSystemFocusVisuals="True"><!-- some code before -->
UWP WebView注入JS
[post id=1372]
接上面这篇文章,在修改UA还是失败后,感谢蓝火火大佬,告诉我是因为没有响应点击事件,只响应了触摸事件。并且亲自操刀写下了下面的js代码:
(function (d) { const fun = function (e) { if (e.touches === undefined) { e.touches = [{ pageX: e.screenX, pageY: e.screenY }] } } d.addEventListener(‘pointerdown’, fun, true) d.addEventListener(‘pointermove’, fun, true) d.body.style[“userSelect”] = “none” d.body.style[“webkitUserSelect”] = “none”})(document)
然后我只需要在WebView里面无脑注入就可以了。
await _webView.InvokeScriptAsync(“ev ...
UWP WebView修改User-Agent
这个需求源于开发开眼UWP的时候,有一个网页无法正常播放音频和视频。有小伙伴说可能是因为网页限制了只能在手机端使用(其实不是)。所以找到了以下方法。
解决方法方法出处:Setting a custom User-Agent in the UWP WebView control
首先写了一个类,导入了“urlmon.dll”这个win32的api。 Win32 APIs在UWP中可用的列表。
public class UserAgentHelper { [DllImport(“urlmon.dll”, CharSet = CharSet.Ansi, ExactSpelling = true)] private static extern int UrlMkSetSessionOption(int dwOption, string pBuffer, int dwBufferLength, int dwReserved);
private const int URLMON\_OPTION\_USERAGENT = 0x10000001;
...
Microsoft.Services.Store.Engagement was not included in compilation
本文章记录以前遇到的一个和Microsoft.Services.Store.Engagement有关的问题。当时解决后没想到最近有小伙伴又遇到了,所以在此做个记录。
错误Method ‘StoreServicesEngagementManager.GetDefault()’ from assembly ‘Microsoft.Services.Store.Engagement’ was not included in compilation, but was referenced in xxxxxxx.
描述:只要使用**Windows Template Studio 3.3** 以前的版本生成了使用Microsoft.Services.Store.Engagement的代码,上传商店后就会出现这个问题。本地测试正常。
解决方法来自这个issue
This is not an issue with using AppCenter. It can affect any app submitted to the store.
How to fix this in the code in yo ...
UWP使用WTS问题-Toast Notification
Windows Template Studio(WTS)非常好用,极大的简化了开发UWP的工作。但是我也遇到了一个问题。并且在Github的WTS项目下面发了issue。
关于 ActivationService & ActivationHandlers的文档。
Newtonsoft用法
参考文章: https://www.cnblogs.com/yanweidie/p/4605212.html
使用SSH修改群晖SN/MAC[转]
开启SSH端口。
在控制面板里面——>终端机和SNMP ,启动SSH功能打勾,并设置端口(建议别用22,改用其他的,比如220或者其他都行)。
挂载synoboot1分区。
第一步:用ssh工具如xshell连接到群晖的地址,用创建群晖的管理用户登陆。
如:admin 密码 123456
第二步:获取root权限。(如果这一步失败,请按照教程开启root权限,6.17及以下版本看这里,6.2及以上版本看这里。)
sudo -i
回车后会提示输入密码,即再次输入当前管理账号的密码。
成功后会变成root@Sxxx:~#, 其中root开头,#结尾。
第三步:在/tmp目录下创建一个临时目录,名字随意,如:boot
mkdir -p /tmp/boot
第四步:切换到dev目录
cd /dev
第五步:将synoboot1 分区挂载到boot
U盘安装的一般是这个
1mount -t vfat synoboot1 /tmp/boot/
如果出现:mount: special device synoboot1 does not exist,使用下面代 ...
UWP 通过KnownFolders.PicturesLibrary任意选择保存文件的位置
发现这个彩蛋,源于我的应用“爱美图”,有一个用户在应用下面的评论说:
不知道下载到了哪里(后来找到了在OneDrive\图片\爱美图),不能自定义下载位置,很不方便
但是看到评论的我一脸懵逼,我使用的是KnownFolders.PicturesLibrary创建的文件夹,按道理不应该在C盘的图片文件夹吗?怎么回到OneDrive里面去了。直到我发现我的台式机也是这样,我又打开surface看了一下,确实在C盘,没错。这就奇怪了。
不过我突然想起来其几天设置过系统自带的照片应用的图片源。这下发现了不得了的事情。
情况一下面这是Surface上照片-设置里源的顺序,系统C盘的图片在上面,OneDrive在下面。这种情况下使用“KnownFolders.PicturesLibrary.CreateFolderAsync”获取的文件夹路径在系统C盘的图片。
Surface上的图片-设置
情况二下面这是台式机上照片-设置里源的顺序, OneDrive 在上面, 系统C盘的图片 在下面。这种情况下使用“KnownFolders.PicturesLibrary.CreateFolderAsyn ...
使用 Nginx 在 Linux 上托管 ASP.NET Core 应用程序
本文在这篇文章上,经过自己的实践,做了补充。
安装 .NET Core SDK微软官方文档 各个系统都有详细的教程。安装完成后输入dotnet --version可以常看安装的版本,同时也可以证明有没有安装成功。
部署 ASP.NET Core 应用程序下面就尝试把微软介绍“使用 ASP.NET Core 和 MongoDB 创建 Web API” 创建的Demo,部署到安装 .NET SDK 的 CentOS 系统(下文简称服务器)中。服务器采用阿里云轻量应用服务器,系统CentOS7.3。如何安装MongoDB请移步下面这篇文章。
[post id=1173]
然后借助 FTP 工具 WinSCP 把程序文件传输到服务器/home/publish文件夹。
上传完毕后,需要先通过cd命令进入网站根目录/home/publish ,再输入如下命令启动网站程序:
1dotnet BooksApi.dll
如果你可以看到如下界面则表示程序启动成功。
但是这样项目是无法在后台自动运行的,需要设置进程守护。
Supervisor 配置守护进程Supervisor 是用 Python ...