小编ich*_*urs的帖子

导入现有的c ++库(.a或.so文件)ndk android

我刚刚在android中进行了本机开发.我成功地将我的AndroidStudio 2.2.2准备好用于本机开发

我还构建了示例hello-jni项目

我想要实现的目标

我正在尝试使用用c ++设计的现有库(我将提供静态库.a扩展名或.so文件)

关于本土发展的几点混乱

1)我应该使用现有c ++库的.cpp和.h文件而不是.a.so文件吗?

2)我是否需要制作CMakeLists.text:据我搜索我的.a文件不是使用ndk-build生成的,所以我需要制作它.

如果我使用.cpp和.h文件,我应该制作Android.mkApplication.mk

CMakeLists.text是否将我新开发的android项目编译为库或我现有的.a文件?

3)我在哪里将.a文件放在我的项目中.它在jni文件夹下吗?

4)我的java类文件是否应该定义具有与c ++文件中实现的关键字本机相同的方法(例如:在c ++文件方法名称getData()中,java类应该包含公共本机getData())

java-native-interface android android-ndk .a .so

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

Python 错误:(fields.E304) 字段冲突的反向访问器与另一个字段的反向访问器

下面是我在 Django 项目中的 models.py 文件。每当我尝试运行该项目时,都会出现以下错误。请协助,因为我刚刚开始使用 django 我尝试按照错误的建议更改外部列的名称,但无济于事。那里的很多答案都建议对 related_name 进行更改,这在我的情况下不存在。

来自控制台的错误

app_fin.TblLockerCoutCin.jewel_item:(fields.E304)“TblLockerCoutCin.jewel_item”的反向访问器与“TblLockerCoutCin.jewel_item_code”的反向访问器冲突。提示:在“TblLockerCoutCin.jewel_item”或“TblLockerCoutCin.jewel_item_code”的定义中添加或更改related_name 参数。app_fin.TblLockerCoutCin.jewel_item:(fields.E304)“TblLockerCoutCin.jewel_item”的反向访问器与“TblLockerCoutCin.jewel_item_name”的反向访问器冲突。提示:向“TblLockerCoutCin.jewel_item”或“TblLockerCoutCin.jewel_item_name”的定义添加或更改related_name 参数。app_fin.TblLockerCoutCin.jewel_item_code: (fields.E304) 'TblLockerCoutCin.jewel_item_code' 的反向访问器 与“TblLockerCoutCin.jewel_item”的反向访问器发生冲突。提示:向“TblLockerCoutCin.jewel_item_code”或“TblLockerCoutCin.jewel_item”的定义添加或更改related_name 参数。app_fin.TblLockerCoutCin.jewel_item_code:(fields.E304)“TblLockerCoutCin.jewel_item_code”的反向访问器与“TblLockerCoutCin.jewel_item_name”的反向访问器冲突。提示:在“TblLockerCoutCin.jewel_item_code”或“TblLockerCoutCin.jewel_item_name”的定义中添加或更改related_name 参数。app_fin.TblLockerCoutCin.jewel_item_name:(fields.E304)“TblLockerCoutCin.jewel_item_name”的反向访问器与“TblLockerCoutCin.jewel_item”的反向访问器冲突。暗示:向“TblLockerCoutCin.jewel_item_name”或“TblLockerCoutCin.jewel_item”的定义添加或更改related_name 参数。app_fin.TblLockerCoutCin.jewel_item_name:(fields.E304)“TblLockerCoutCin.jewel_item_name”的反向访问器与“TblLockerCoutCin.jewel_item_code”的反向访问器冲突。提示:向“TblLockerCoutCin.jewel_item_name”或“TblLockerCoutCin.jewel_item_code”的定义添加或更改related_name 参数。

模型.py

from django.db import models


class TblJewelleryInventory(models.Model):
    id = models.IntegerField(primary_key=True)
    item_code = models.CharField(unique=True, max_length=5, blank=True, null=True)
    item_name = models.CharField(max_length=250, blank=True, null=True)
    base_locker_location = models.CharField(max_length=45, blank=True, null=True)
    updated_at = models.DateTimeField()
    created_at = models.DateTimeField()

    def __str__(self):
        return self.name

    class Meta:
        managed = False
        db_table = 'tbl_jewellery_inventory'


class TblJewelleryInventoryLogs(models.Model):
    id = models.IntegerField(primary_key=True)
    item_id = models.IntegerField()
    item_code = models.CharField(unique=True, max_length=5, blank=True, null=True)
    item_name …
Run Code Online (Sandbox Code Playgroud)

python django django-models python-3.x

6
推荐指数
1
解决办法
4161
查看次数

iOS 无法为远程通知播放自定义声音

我一直在尝试为 iOS 上的通知实现自定义声音。

根据此处示例 3 中的 Apple 文档。我们需要做的就是确保推送通知负载应该是这样的:

{
"aps" : {
        "alert" : "You got your emails.",
        "badge" : 9,
        "sound" : "bingbong.aiff"
    }
}
Run Code Online (Sandbox Code Playgroud)

并且 bingbong.aiff 必须放在应用程序包中。

此外,如果应用程序处于活动状态,我被建议添加以下代码:

- (void)application:(UIApplication *)application
didReceiveRemoteNotification:(NSDictionary *)userInfo
{
    if (application.applicationState == UIApplicationStateActive)
    {
        NSString *path = [[NSBundle mainBundle] pathForResource:@"bingbong" ofType:@"aiff"];
        theAudio = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path]error:NULL];

        theAudio.delegate = self;
        [theAudio play];
    }
}
Run Code Online (Sandbox Code Playgroud)

"bingbong.aiff" 被放置在 "SupportingFiles"

我仍然没有获得远程通知的自定义声音。

我已经完成了与此类似的其他 SO 问题,但这些问题与我正在做的没有什么不同。

  1. 用户收到推送通知时如何播放自定义声音文件?

  2. 远程通知中的自定义声音 iOS 10, swift 3

  3. 更改推送通知声音

objective-c apple-push-notifications ios

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

添加 Firestore 时出现重复类

最近将 Firebase-Firestore 添加到我的 android 项目中,并在构建时开始获取对 protobuf 中的类的重复引用。

\n\n

build.gradle

\n\n
// Top-level build file where you can add configuration options common to all\n// sub-projects/modules.\n\nbuildscript {\n\n    ext.protobufVersion = \'0.8.6\'\n\n    repositories {\n        google()\n        jcenter()\n        maven { url \'https://maven.fabric.io/public\' }\n        maven { url "https://jcenter.bintray.com" }\n        maven { url "https://jitpack.io" }\n    }\n    dependencies {\n        classpath \'com.android.tools.build:gradle:3.5.3\'\n        classpath \'io.fabric.tools:gradle:1.31.2\'\n        classpath \'com.google.gms:google-services:4.3.3\'\n        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.41"\n        classpath \'com.akaita.android:easylauncher:1.3.1\'\n        classpath "com.google.protobuf:protobuf-gradle-plugin:$protobufVersion"\n    }\n}\n\napply plugin: \'com.android.application\'\napply plugin: \'io.fabric\'\napply plugin: \'com.google.gms.google-services\'\napply plugin: \'kotlin-android\'\napply plugin: \'kotlin-kapt\'\napply plugin: \'com.akaita.android.easylauncher\'\napply plugin: \'com.google.protobuf\'\n\nrepositories {\n    google()\n    jcenter()\n …
Run Code Online (Sandbox Code Playgroud)

java android gradle firebase google-cloud-firestore

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