如果您对iOS未接收用户到用户应用程序请求感兴趣,那么本文将是一篇不错的选择,我们将为您详在本文中,您将会了解到关于iOS未接收用户到用户应用程序请求的详细内容,我们还将为您解答ios未接收用户到用户
如果您对iOS未接收用户到用户应用程序请求感兴趣,那么本文将是一篇不错的选择,我们将为您详在本文中,您将会了解到关于iOS未接收用户到用户应用程序请求的详细内容,我们还将为您解答ios未接收用户到用户应用程序请求失败的相关问题,并且为您提供关于android – 应用程序请求权限未在清单中请求、android – 是否可以将平台签名的应用程序安装到用户空间?、asp.net-mvc-3 – 具有MVC3的多用户应用程序,ASP.NET成员资格 – 用户身份验证/数据分离、c – 从用户应用程序访问ring 0模式(为什么Borland允许这样做)的有价值信息。
本文目录一览:- iOS未接收用户到用户应用程序请求(ios未接收用户到用户应用程序请求失败)
- android – 应用程序请求权限未在清单中请求
- android – 是否可以将平台签名的应用程序安装到用户空间?
- asp.net-mvc-3 – 具有MVC3的多用户应用程序,ASP.NET成员资格 – 用户身份验证/数据分离
- c – 从用户应用程序访问ring 0模式(为什么Borland允许这样做)
iOS未接收用户到用户应用程序请求(ios未接收用户到用户应用程序请求失败)
在安装应用程序之前,如何在iOS上显示请求?其他可能相关的特殊事情是,我在iOS上的“通知”下没有活动,只有app书签.在桌面上,我看到Notifications globe flash在第一次登录时带有红色徽章,但随后徽章消失,没有任何内容,尽管请求显示在“应用和游戏”下.这似乎并不完全一致,因为一些测试我的应用程序的人获得了预期的通知行为,但我从未在我自己的FB帐户上做过.可能是因为如果反复添加和删除应用程序进行测试?
有线索吗?
解决方法
android – 应用程序请求权限未在清单中请求
<uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.GET_ACCOUNTS" /> <uses-permission android:name="android.permission.WAKE_LOCK" />
这就是我尝试安装apk时的样子
你是否知道为什么当应用程序根本不需要这些东西时它会要求这些东西,而清单中没有提到它们?
Nexus 5(Android 4.4.2)
编辑:完整清单
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="some.name" android:versionCode="14" android:versionName="0.6.2" > <uses-sdk android:minSdkVersion="9" android:targetSdkVersion="19" /> <!-- To filter out tablets and distribute only to handsets up to 7 inches,one cannot directly forbid tablets,but has to list all other supported compatible screens,see: http://developer.android.com/guide/practices/screens-distribution.html#FilteringHandsetApps --> <compatible-screens> <!-- all small size screens --> <screen android:screenSize="small" android:screenDensity="ldpi" /> <screen android:screenSize="small" android:screenDensity="mdpi" /> <screen android:screenSize="small" android:screenDensity="hdpi" /> <screen android:screenSize="small" android:screenDensity="xhdpi" /> <screen android:screenSize="small" android:screenDensity="213" /> <screen android:screenSize="small" android:screenDensity="480" /> <!-- all normal size screens --> <screen android:screenSize="normal" android:screenDensity="ldpi" /> <screen android:screenSize="normal" android:screenDensity="mdpi" /> <screen android:screenSize="normal" android:screenDensity="hdpi" /> <screen android:screenSize="normal" android:screenDensity="xhdpi" /> <screen android:screenSize="normal" android:screenDensity="213" /> <screen android:screenSize="normal" android:screenDensity="480" /> <screen android:screenSize="normal" android:screenDensity="640" /> <!-- all large size screens --> <screen android:screenSize="large" android:screenDensity="ldpi" /> <screen android:screenSize="large" android:screenDensity="mdpi" /> <screen android:screenSize="large" android:screenDensity="hdpi" /> <screen android:screenSize="large" android:screenDensity="xhdpi" /> <screen android:screenSize="large" android:screenDensity="213" /> <screen android:screenSize="large" android:screenDensity="480" /> <screen android:screenSize="large" android:screenDensity="640" /> </compatible-screens> <!-- access backend --> <uses-permission android:name="android.permission.INTERNET" /> <!-- allow to cache images on SD card --> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <!-- Todo remove for live build - sends email info to crashes in hockey app --> <uses-permission android:name="android.permission.GET_ACCOUNTS" /> <!-- while video playback is running --> <uses-permission android:name="android.permission.WAKE_LOCK" /> <application android:name="some.name" android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name="some.name" android:screenorientation="portrait" android:configChanges="keyboardHidden|orientation|screenSize" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="some.name" android:label="@string/app_name" android:windowSoftInputMode="statealwaysHidden|adjustPan" android:theme="@android:style/Theme.NoTitleBar.Fullscreen" android:configChanges="keyboardHidden|orientation|screenSize" /> <activity android:name="some.name" android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen" android:label="@string/app_name" android:windowSoftInputMode="statealwaysHidden|adjustPan" /> <activity android:name="some.name" android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen" android:label="@string/app_name" android:windowSoftInputMode="statealwaysHidden|adjustPan" /> <activity android:name="some.name" android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen" android:label="@string/app_name" android:windowSoftInputMode="statealwaysHidden|adjustPan" /> </application> </manifest>
解决方法
android – 是否可以将平台签名的应用程序安装到用户空间?
Failure [INSTALL_Failed_INVALID_INSTALL_LOCATION]
在深入了解Android源代码后,我发现了以下相关代码块:
if ((compareSignatures(pkg.mSignatures,s1) == PackageManager.SIGNATURE_MATCH)) { Slog.w(TAG,"Cannot install platform packages to user storage"); mLastScanError = PackageManager.INSTALL_Failed_INVALID_INSTALL_LOCATION; return null; }
根据我的阅读,似乎永远不允许在用户空间中安装系统应用程序.最初的情况是在用户空间中安装系统应用程序是异常吗?是否可以在用户空间中安装平台签名的应用程序,如果可以,如何做到这一点?
解决方法
(类文件是/frameworks/base/services/src/com/android/server/pm/PackageManagerService.java);
if (!pkg.applicationInfo.sourceDir.startsWith(Environment.getRootDirectory().getPath()) && !pkg.applicationInfo.sourceDir.startsWith("/vendor")) { Object obj = mSettings.getUserIdLPr(1000); Signature[] s1 = null; if (obj instanceof SharedUserSetting) { s1 = ((SharedUserSetting)obj).signatures.mSignatures; } if ((compareSignatures(pkg.mSignatures,s1) == PackageManager.SIGNATURE_MATCH)) { Slog.w(TAG,"Cannot install platform packages to user storage"); mLastScanError = PackageManager.INSTALL_Failed_INVALID_INSTALL_LOCATION; return null; } }
asp.net-mvc-3 – 具有MVC3的多用户应用程序,ASP.NET成员资格 – 用户身份验证/数据分离
public ActionResult EditStatus(int id) { if (!Request.IsAuthenticated) return RedirectToAction("Index","Home"); var status = sService.GetStatusById(id); // check if the logged in user has access to this status if (status.UserId != GetUserId()) return RedirectToAction("Index","Home"); . . . } private Guid GetUserId() { if (Membership.GetUser() != null) { MembershipUser member = Membership.GetUser(); Guid id = new Guid(member.ProviderUserKey.ToString()); return id; } return Guid.Empty; }
这种重复肯定是错误的,必须有一种更优雅的方式来确保我的用户无法访问彼此的数据 – 我缺少什么?
解决方法
what am I missing?
自定义模型绑定器:
public class StatusModelBinder : DefaultModelBinder { public override object BindModel(ControllerContext controllerContext,ModelBindingContext bindingContext) { // Fetch the id from the RouteData var id = controllerContext.RouteData.Values["id"] as string; // Todo: Use constructor injection to pass the service here var status = sService.GetStatusById(id); // Compare whether the id passed in the request belongs to // the currently logged in user if (status.UserId != GetUserId()) { throw new HttpException(403,"Forbidden"); } return status; } private Guid GetUserId() { if (Membership.GetUser() != null) { MembershipUser member = Membership.GetUser(); Guid id = new Guid(member.ProviderUserKey.ToString()); return id; } return Guid.Empty; } }
然后你会在Application_Start中注册这个模型绑定器:
// Could use constructor injection to pass the repository to the model binder ModelBinders.Binders.Add(typeof(Status),new StatusModelBinder());
最后
// The authorize attribute ensures that a user is authenticated. // If you want it to redirect to /Home/Index as in your original // example if the user is not authenticated you Could write a custom // Authorize attribute and do the job there [Authorize] public ActionResult EditStatus(Status status) { // if we got that far it means that the user has access to this resource // Todo: do something with the status and return some view ... }
结论:我们已经把这个控制器放在饮食控制器应该是这样的方式:-)
c – 从用户应用程序访问ring 0模式(为什么Borland允许这样做)
项目分配的问题在于它要求学生开发一个将作为简单内核(基本过程和线程管理)执行的用户应用程序(exe).
我想到的第一件事是:我该如何在用户应用程序中执行特权代码?
在咨询了其他学生(按时完成项目)之后,我了解到他们能够使用Borland 3.1编译器执行特权代码而不会出现问题.然而,他们都没有发现这种奇怪,也不知道为什么会这样.为什么(这里有更好的问题,如何)Borland会这样做吗?这是否违反操作系统安全的基本原则?
注意:我添加了C标记,因为该项目应该被编写为C应用程序,大多数特权代码都作为内联汇编执行.
更新我的问题最初的措辞有点差.当然,我能够使用任何编译器使用特权指令编译代码 – 运行代码是问题.
解决方法
>在8086实模式的时代,没有特权级别. Borland 3.1是一个16位编译器.如果您正在运行它在现代版本的Windows上生成的代码,它将使用NTVDM在Virtual 8086模式下运行,该模块也没有权限级别.
>即使使用现代编译器/汇编器,即使在保护模式和长模式下,它通常也不会抱怨特权指令.这个源代码在MSVC 2015中编译得很好,但每当我运行它时都会崩溃,因为它试图访问一个禁止用户模式应用程序的寄存器:
int main() { __asm { mov eax,cr0 or eax,1 mov cr0,eax } return 0; }
关于iOS未接收用户到用户应用程序请求和ios未接收用户到用户应用程序请求失败的介绍已经告一段落,感谢您的耐心阅读,如果想了解更多关于android – 应用程序请求权限未在清单中请求、android – 是否可以将平台签名的应用程序安装到用户空间?、asp.net-mvc-3 – 具有MVC3的多用户应用程序,ASP.NET成员资格 – 用户身份验证/数据分离、c – 从用户应用程序访问ring 0模式(为什么Borland允许这样做)的相关信息,请在本站寻找。
本文标签: