小编Pet*_*erg的帖子

在Android中的片段中获取应用程序上下文?

我已经通过在一个活动中使用应用程序上下文将一些数据存储到全局类.后来我必须在A Fragment中检索这些值.我已经做了类似的事情来存储在Global Class中.

AndroidGlobalClass  AGC = ((AndroidGlobalClass) getApplicationContext());
AGC.setUser_access("XYZ");
AGC.setFirst_name("ABC");
Run Code Online (Sandbox Code Playgroud)

我在Manifest中做过:

<application
    android:name=".AndroidGlobalClass"
    android:theme="@style/AppTheme" >
    <activity
       android:name="abc.SignInActivity"
       android:label="@string/app_name" >
       <intent-filter>
          <action android:name="android.intent.action.MAIN" />
          <category android:name="android.intent.category.LAUNCHER" />
       </intent-filter>
    </activity>
</application>
Run Code Online (Sandbox Code Playgroud)

现在,当我试图获取应用程序上下文时使用此...我没有得到上下文...

AndroidGlobalClass  AGC = ((AndroidGlobalClass) getApplicationContext());
Run Code Online (Sandbox Code Playgroud)

这是My Fragment Activity

public class Fragment_NewsFeed extends Fragment {
    public Fragment_NewsFeed() {
    }

    RestImplimentationMethods RIM;
    AndroidGlobalClass AGC;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        View rootView = inflater.inflate(R.layout.fragment_newsfeed, container, false);
        return rootView;
    }
}
Run Code Online (Sandbox Code Playgroud)

android fragment android-fragments

47
推荐指数
3
解决办法
11万
查看次数

如何修复android studio 2.3 NDK bug?

我认为这是一个错误,因为在新的更新之前我没有任何问题.所以我不能使用gradle控制台调试我的应用程序,因为我有这个警告 -

"按需配置是一个孵化功能.NDK缺少"平台"目录.如果您使用NDK,请验证ndk.dir是否设置为有效的NDK目录.它当前设置为C:\ Users\Emily Thacker\AppData\Local\Android\Sdk \ndk-bundle.如果您没有使用NDK,请取消设置ANDROID_NDK_HOME或local.properties中的NDK变量以删除此警告."

我很确定我没有使用NDK,我不知道如何解决这个问题,这是我的local.properties

## This file is automatically generated by Android Studio.
# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
#
# This file should *NOT* be checked into Version Control Systems,
# as it contains information specific to your local configuration.
#
# Location of the SDK. This is only used by Gradle.
# For customization when using a Version Control System, please read the
# header note.
sdk.dir=C\:\\Users\\Emily Thacker\\AppData\\Local\\Android\\Sdk
Run Code Online (Sandbox Code Playgroud)

另外,我在目录中看不到ANDROID_NDK_HOME文件.

android android-ndk

46
推荐指数
6
解决办法
5万
查看次数

Android 6.0权限.GET_ACCOUNTS

我用它来获得许可:

if (ContextCompat.checkSelfPermission(context, Manifest.permission.GET_ACCOUNTS) != PackageManager.PERMISSION_GRANTED) {

    // Should we show an explanation?
    if (ActivityCompat.shouldShowRequestPermissionRationale(context, Manifest.permission.GET_ACCOUNTS)) {

    } else {
        // No explanation needed, we can request the permission.
        ActivityCompat.requestPermissions(context, new String[]{Manifest.permission.GET_ACCOUNTS}, PERMISSIONS_REQUEST_GET_ACCOUNTS);

        // MY_PERMISSIONS_REQUEST_READ_CONTACTS is an
        // app-defined int constant. The callback method gets the
        // result of the request.
    }
}
Run Code Online (Sandbox Code Playgroud)

但是权限的弹出对话框要求用户访问联系人!?!?

在Play商店的6.0之前

<uses-permission android:name="android.permission.GET_ACCOUNTS"/>
Run Code Online (Sandbox Code Playgroud)

请求被命名为Identity并解释我需要它来获取设备帐户.

permissions android android-6.0-marshmallow

35
推荐指数
3
解决办法
4万
查看次数

改造 - 全球拦截响应

我想拦截改装引擎收到的所有响应,并扫描HTTP错误代码,例如错误403.

我知道我可以使用每个请求的失败(RetrofitError错误)回调并检查403,但我想全局包装响应.

我可以看到请求拦截是可能的,但我没有看到类似的响应选项.

有什么建议?

android retrofit okhttp

31
推荐指数
1
解决办法
2万
查看次数

错误:构造函数中的每个参数必须在反序列化时绑定到对象属性或字段

我正在尝试发送数据以将其保存在我的数据库中,基本,所以我将模型发送到我的控制器,然后出现此错误:

“类型“SmgApi.Models.Dto.EquipementDto”上的构造函数“Void .ctor(SmgApi.Models.Entity.EquipmentEntity)”中的每个参数都必须绑定到反序列化时的对象属性或字段。每个参数名称必须与属性或字段匹配对象上的字段。匹配可以不区分大小写。”

但我不反序列化任何东西,我不明白。我的控制器:

[HttpPost]
public async Task<IActionResult> UpdateEquipment(EquipementDto equipment)
{
    return Ok(await _equipmentRepository.UpdateEquipment(new EquipmentEntity(equipment)));
}
Run Code Online (Sandbox Code Playgroud)

设备D至:

public class EquipementDto
{
    [Required]
    public string Id { get; set; }
    public List<PropertyDto> Properties { get; set; }

    [Required]
    public string Type { get; set; }
    public bool isInPalette { get; set; }
    public EquipementDto(EquipmentEntity equipment)
    {
        if (equipment == null)
            return;

        this.Id = equipment.Id;
        this.Type = equipment.Type;
        this.isInPalette = equipment.IsInPalette;
        this.Properties = equipment.Properties.Select(x => new PropertyDto(x)).ToList();
    }
}
Run Code Online (Sandbox Code Playgroud)

我的装备界面在前面:

export interface …
Run Code Online (Sandbox Code Playgroud)

c# asp.net

30
推荐指数
1
解决办法
4万
查看次数

Android React Native ReactRootView应该使用Activity还是Application上下文?

与Android集成的React Native 文档中,它包含用于与Android集成的代码段:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    mReactRootView = new ReactRootView(this);
    mReactInstanceManager = ReactInstanceManager.builder()
            .setApplication(getApplication())
            .setBundleAssetName("index.android.bundle")
            .setJSMainModulePath("index")
            .addPackage(new MainReactPackage())
            .setUseDeveloperSupport(BuildConfig.DEBUG)
            .setInitialLifecycleState(LifecycleState.RESUMED)
            .build();
    mReactRootView.startReactApplication(mReactInstanceManager, "MyReactNativeApp", null);

    setContentView(mReactRootView);
}
Run Code Online (Sandbox Code Playgroud)

但是,当我按原样使用它时,我得到一个100%的repro内存泄漏ThemedReactContext,ReactRootView这是由于持有对我的自定义活动的引用的引用.

这是因为Context传递给构造函数的参数ReactRootViewthis,这是对我的自定义活动的引用.

相反,如果我这样做:

mReactRootView = new ReactRootView(getApplication());
Run Code Online (Sandbox Code Playgroud)

我没有内存泄漏.

为新的ReactRootView更改我的上下文源是否安全,这是一个应该a)修复还是b)应该看到文档发生变化的错误?

java android memory-leaks react-native react-native-android

9
推荐指数
1
解决办法
859
查看次数

Windows标题栏中的可视错误,VCL样式启用了应用程序和显示缩放

目前我正在测试启用VCL样式的应用程序的各个方面.

我注意到,当Windows缩放高于默认的96 dpi/100%时,VCL表单的图标和标题栏文本太大 - 两者都要靠近 - 请参阅附带的屏幕截图.对于200%或250%的更高标度(例如在4K显示器和Windows 10上使用),尤其如此,但即使缩放为144 dpi/150%,问题也已经可见.

对于RAD Studio提供的所有样式都是如此.通过项目设置启用清单的高Dpi感知.如果我在应用程序中禁用VCL样式,则图标和标题栏文本的大小正确.

我在这里错过了什么吗?如果启用显示缩放,开箱即用的样式是否应该没有开箱即用的显示错误?或者是否有一些设置我可以调整以解决这个问题.

谢谢,

在此输入图像描述 在此输入图像描述

delphi vcl c++builder vcl-styles

8
推荐指数
2
解决办法
1079
查看次数

需要一种解决方法来访问返回 IEnumerable 的函数内的 ReadOnlySpan&lt;T&gt;

在处理本机代码互操作性时,我决定是时候学习和尝试 C# 语言的新 Span 功能了。

尽管进行了多次试验,一切都进展顺利,直到我到达我的很长函数的最后阶段,我在下面插入了一个最小的可重现示例:

[DllImport(dll, SetLastError = true)]
internal static extern void GetNativeData(out byte lpBuffer, int size, out bytesRead);

ReadOnlySpan<T> ReadArray<T>(ReadOnlySpan<byte> buf, int Length) where T : unmanaged
{
    var size = Length * Unsafe.SizeOf<T>();
    if (buf.Length < size)
        buf = new byte[size];
        GetNativeData(out MemoryMarshal.GetReference(buf), size, out int read));
        Dh.CreateError(ReadMemoryErr);

    return MemoryMarshal.Cast<byte, T>(buf.Slice(0, size));
}

static IEnumerable<MyClass> GetResult()
{
    // Here I allocate a buffer
    Span<byte> buf = new byte[1000];

    // After a long serie of calls to …
Run Code Online (Sandbox Code Playgroud)

c# ienumerable yield-return .net-core

8
推荐指数
1
解决办法
7203
查看次数

Android-谷歌地图v2画圈

谷歌于2月26日发布Circle了叠加类型:

https://developers.google.com/maps/documentation/android/reference/com/google/android/gms/maps/model/Circle

但是,如何更新到Google Map V2的新版本?什么时候可以在Android SDK Manager中使用?我在"Google Play服务"(修订版5)中有以前的Google Map V2库,但不包括Circle课程

android google-maps

7
推荐指数
1
解决办法
1万
查看次数

如果恢复了初始生命周期状态,则需要设置活动

您好,我正在尝试在本机android内部集成react-native应用程序。我按照步骤给出以下链接

https://facebook.github.io/react-native/docs/integration-with-existing-apps https://medium.com/mindorks/react-native-integration-with-existing-app-f2757c2e672d

这是我的反应活动代码

super.onCreate(savedInstanceState);
mReactRootView = new ReactRootView(this);
mReactInstanceManager = ReactInstanceManager.
        builder()
        .setApplication(getApplication())
        .setBundleAssetName("index.android.bundle")
        .setJSMainModulePath("index.android")
        .addPackage(new MainReactPackage())
        .setUseDeveloperSupport(BuildConfig.DEBUG)
        .setInitialLifecycleState(LifecycleState.RESUMED)
        .build();
mReactRootView.startReactApplication(mReactInstanceManager, "AwesomeProject", null);
setContentView(mReactRootView);
Run Code Online (Sandbox Code Playgroud)

但是我的反应活动启动时出现以下错误

java.lang.AssertionError: Activity needs to be set if initial lifecycle state is resumed
        at com.facebook.infer.annotation.Assertions.assertNotNull(Assertions.java:35)
        at com.facebook.react.ReactInstanceManagerBuilder.build(ReactInstanceManagerBuilder.java:250)
        at com.skw.android_react_2.MyReactActivity.onCreate(MyReactActivity.java:35)
        at android.app.Activity.performCreate(Activity.java:7383)
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1218)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3256)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3411)
        at android.app.ActivityThread.-wrap12(Unknown Source:0)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1994)
        at android.os.Handler.dispatchMessage(Handler.java:108)
        at android.os.Looper.loop(Looper.java:166)
        at android.app.ActivityThread.main(ActivityThread.java:7529)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:245)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:921)
Run Code Online (Sandbox Code Playgroud)

该如何解决呢?

android reactjs react-native

7
推荐指数
2
解决办法
434
查看次数