Xamarin.Forms App Settings
2016-03-19 19:14
375 查看
配合James Montemagno的Component [Settings Plugin],实现Xamarin.Forms的设置。
更新系统配置且不需要进行重启app。
方式一xml
Xamarin.forms 并不具备App.config 的概念。但是我们可以添加等价的xml和资源解析器。
例如:添加webservices请求地址。
Xamarin.forms 右键 添加新项-》xml文件(config.xml)
![](http://images2015.cnblogs.com/blog/892716/201603/892716-20160319191319568-1301576889.png)
![](http://images2015.cnblogs.com/blog/892716/201603/892716-20160319191319974-1782498872.png)
属性-》生成操作-》嵌入的资源
![](http://images2015.cnblogs.com/blog/892716/201603/892716-20160319191320256-220346991.png)
添加XML文件作为嵌入资源可以很容易在运行时的应用程序设置阅读
<?xml version="1.0" encoding="utf-8" ?>
<config>
<google-api-key>YourGoogleApiKeyHere</google-api-key>
</config>
读取方式:
string GetGoogleApiKey() {
var type = this.GetType();
var resource = type.Namespace + "." +
Device.OnPlatform("iOS", "Droid", "WinPhone") + ".config.xml";
using (var stream = type.Assembly.GetManifestResourceStream(resource))
using (var reader = new StreamReader(stream)) {
var doc = XDocument.Parse(reader.ReadToEnd());
return doc.Element("config").Element("google-api-key").Value;
}
}
方式二 Settings Plugin
在运行时采用.NET API加载资源配置文件
右键添加NUGET引用:
![](http://images2015.cnblogs.com/blog/892716/201603/892716-20160319191320709-826829451.png)
自动生成Helpers
![](http://images2015.cnblogs.com/blog/892716/201603/892716-20160319191321615-1105785299.png)
使用
this.url = Helpers.Settings.Pdaservices;
Helpers.Settings.Pdaservices = "111111111111111";
var sst = Helpers.Settings.Pdaservices;
直接采用属性方式是推荐方式,不需要担心xml明文问题,能够自动更新保存
更新系统配置且不需要进行重启app。
方式一xml
Xamarin.forms 并不具备App.config 的概念。但是我们可以添加等价的xml和资源解析器。例如:添加webservices请求地址。
Xamarin.forms 右键 添加新项-》xml文件(config.xml)
![](http://images2015.cnblogs.com/blog/892716/201603/892716-20160319191319568-1301576889.png)
![](http://images2015.cnblogs.com/blog/892716/201603/892716-20160319191319974-1782498872.png)
属性-》生成操作-》嵌入的资源
![](http://images2015.cnblogs.com/blog/892716/201603/892716-20160319191320256-220346991.png)
添加XML文件作为嵌入资源可以很容易在运行时的应用程序设置阅读
<?xml version="1.0" encoding="utf-8" ?>
<config>
<google-api-key>YourGoogleApiKeyHere</google-api-key>
</config>
读取方式:
string GetGoogleApiKey() {
var type = this.GetType();
var resource = type.Namespace + "." +
Device.OnPlatform("iOS", "Droid", "WinPhone") + ".config.xml";
using (var stream = type.Assembly.GetManifestResourceStream(resource))
using (var reader = new StreamReader(stream)) {
var doc = XDocument.Parse(reader.ReadToEnd());
return doc.Element("config").Element("google-api-key").Value;
}
}
方式二 Settings Plugin
在运行时采用.NET API加载资源配置文件右键添加NUGET引用:
![](http://images2015.cnblogs.com/blog/892716/201603/892716-20160319191320709-826829451.png)
自动生成Helpers
![](http://images2015.cnblogs.com/blog/892716/201603/892716-20160319191321615-1105785299.png)
使用
this.url = Helpers.Settings.Pdaservices;
Helpers.Settings.Pdaservices = "111111111111111";
var sst = Helpers.Settings.Pdaservices;
直接采用属性方式是推荐方式,不需要担心xml明文问题,能够自动更新保存
相关文章推荐
- SSDC_携程下一代无线app架构
- 移动端开发需要注意的一些事情
- 第一个小程序:用户登录
- Android Studio 1.5.0版本引用library
- ios学习之UIWebView(2)
- Android ListView 几个重要属性
- Objective-C错误处理
- 编写一个iOS应用之前必须做的7件事(附相关资源)
- Android ScrollView中嵌套ListView时显示不全的简便解决方案
- Objective-C KVC&KVO
- android 水平滚动ScrollView: HorizontalScrollView
- android 视频录制 混淆打包 之native层 异常的解决
- patchoat相关代码在Android M版中的变化(1)
- Android layout Inflate 性能浅析
- 类似解锁或者支付密码输入框
- android studio端口占用问题
- Android中Scrollview与ViewPager冲突问题解决方案
- Android ListView 卡顿问题分析与解决方案
- Spring的ApplicationEvent的使用
- Android5.0常用颜色属性说明