Слияние кода завершено, страница обновится автоматически
1. iPhoneX 适配
import { TabbarSafeBottomMargin } from '../../utils/Device';
<View style={styles.safeBottom}></View>
safeBottom: {
backgroundColor: 'white',
height: TabbarSafeBottomMargin
}
2. android.support.annotation.Nullable
Android工程中javax annotation Nullable找不到的替代方案
我们在某些Android开源库中会遇到下面的引用找不到的问题:
import javax.annotation.Nonnull;
import javax.annotation.Nullable;
其实Android实现了javax的类似注解,可以使用下面的引用替换:
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
当然,后者需要引入库的声明:
dependencies {
compile 'com.android.support:support-annotations:21.0.2'
}
3. Undefined symbols for architecture x86_64:
"_sqlite3_close", referenced from:
-[UMUaDB initlizeDB:] in UMAnalytics(UMUaDB.o)
-[UMUaDB closeDB:] in UMAnalytics(UMUaDB.o)
"_sqlite3_column_count", referenced from:
-[UMUaDB existColumnName:withTableName:] in UMAnalytics(UMUaDB.o)
"_sqlite3_column_int", referenced from:
-[UMUaDB rowCountInTable:] in UMAnalytics(UMUaDB.o)
-[UMUaDB rowSdCountInTable:sessionId:] in UMAnalytics(UMUaDB.o)
"_sqlite3_column_name", referenced from:
-[UMUaDB existColumnName:withTableName:] in UMAnalytics(UMUaDB.o)
"_sqlite3_column_text", referenced from:
-[UMUaDB existColumnName:withTableName:] in UMAnalytics(UMUaDB.o)
-[UMUaDB loadErTable:] in UMAnalytics(UMUaDB.o)
-[UMUaDB loadErTableWithVersion:] in UMAnalytics(UMUaDB.o)
-[UMUaDB loadErTableWithVersion:withSid:] in UMAnalytics(UMUaDB.o)
-[UMUaDB loadEtTable:] in UMAnalytics(UMUaDB.o)
-[UMUaDB loadEtTableWithVersion:] in UMAnalytics(UMUaDB.o)
-[UMUaDB loadEtTableWithVersion:withSid:] in UMAnalytics(UMUaDB.o)
...
"_sqlite3_errcode", referenced from:
-[UMUaDB runSql:] in UMAnalytics(UMUaDB.o)
"_sqlite3_errmsg", referenced from:
-[UMUaDB rowCountInTable:] in UMAnalytics(UMUaDB.o)
-[UMUaDB loadErTable:] in UMAnalytics(UMUaDB.o)
-[UMUaDB loadErTableWithVersion:] in UMAnalytics(UMUaDB.o)
-[UMUaDB loadErTableWithVersion:withSid:] in UMAnalytics(UMUaDB.o)
-[UMUaDB loadEtTable:] in UMAnalytics(UMUaDB.o)
-[UMUaDB loadEtTableWithVersion:] in UMAnalytics(UMUaDB.o)
-[UMUaDB loadEtTableWithVersion:withSid:] in UMAnalytics(UMUaDB.o)
...
"_sqlite3_exec", referenced from:
-[UMUaDB initlizeDB:] in UMAnalytics(UMUaDB.o)
-[UMUaDB runSql:] in UMAnalytics(UMUaDB.o)
"_sqlite3_finalize", referenced from:
-[UMUaDB existColumnName:withTableName:] in UMAnalytics(UMUaDB.o)
-[UMUaDB rowCountInTable:] in UMAnalytics(UMUaDB.o)
-[UMUaDB loadErTable:] in UMAnalytics(UMUaDB.o)
-[UMUaDB loadErTableWithVersion:] in UMAnalytics(UMUaDB.o)
-[UMUaDB loadErTableWithVersion:withSid:] in UMAnalytics(UMUaDB.o)
-[UMUaDB loadEtTable:] in UMAnalytics(UMUaDB.o)
-[UMUaDB loadEtTableWithVersion:] in UMAnalytics(UMUaDB.o)
...
"_sqlite3_free", referenced from:
-[UMUaDB runSql:] in UMAnalytics(UMUaDB.o)
"_sqlite3_open_v2", referenced from:
-[UMUaDB initlizeDB:] in UMAnalytics(UMUaDB.o)
"_sqlite3_prepare_v2", referenced from:
-[UMUaDB existColumnName:withTableName:] in UMAnalytics(UMUaDB.o)
-[UMUaDB rowCountInTable:] in UMAnalytics(UMUaDB.o)
-[UMUaDB loadErTable:] in UMAnalytics(UMUaDB.o)
-[UMUaDB loadErTableWithVersion:] in UMAnalytics(UMUaDB.o)
-[UMUaDB loadErTableWithVersion:withSid:] in UMAnalytics(UMUaDB.o)
-[UMUaDB loadEtTable:] in UMAnalytics(UMUaDB.o)
-[UMUaDB loadEtTableWithVersion:] in UMAnalytics(UMUaDB.o)
...
"_sqlite3_step", referenced from:
-[UMUaDB existColumnName:withTableName:] in UMAnalytics(UMUaDB.o)
-[UMUaDB rowCountInTable:] in UMAnalytics(UMUaDB.o)
-[UMUaDB loadErTable:] in UMAnalytics(UMUaDB.o)
-[UMUaDB loadErTableWithVersion:] in UMAnalytics(UMUaDB.o)
-[UMUaDB loadErTableWithVersion:withSid:] in UMAnalytics(UMUaDB.o)
-[UMUaDB loadEtTable:] in UMAnalytics(UMUaDB.o)
-[UMUaDB loadEtTableWithVersion:] in UMAnalytics(UMUaDB.o)
...
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Showing Recent Messages
Undefined symbol: _sqlite3_close
3. [Android]Cannot fit requested classes in a single dex file. Try supplying a main-dex list.
解决问题有3步
步骤1
在app module中的build.gradle中添加依赖
implementation 'com.android.support:multidex:1.0.3'
步骤2
在app module中的build.gradle中的defaultConfig中添加以下代码
multiDexEnabled true
步骤3
如果你自定义了Application需要在类中重写一个方法
override fun attachBaseContext(base: Context?) {
super.attachBaseContext(base)
// 主要是添加下面这句代码
MultiDex.install(this)
}
https://www.jianshu.com/p/95211b445154/
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )