Android releaseパッケージで、あるメソッドが見つからないというエラーが発生しましたが、解決するにはどうすればよいですか。
releaseパッケージを作成する際、コンパイルの最適化を有効(minifyEnabledをtrueに設定)にしていると、javaレイヤーで呼び出されないコードがカットされる場合があります。これらのコードはnativeレイヤーで呼び出される場合があり、 no xxx method
の異常が生じることがあります。
このようなコンパイル最適化を有効にしている場合は、これらのkeepルールを追加し、xmagicのコードがカットされないようにする必要があります。
-keep class com.tencent.xmagic.** { *;}
-keep class org.light.** { *;}
-keep class org.libpag.** { *;}
-keep class org.extra.** { *;}
-keep class com.gyailib.**{ *;}
-keep class com.tencent.cloud.iai.lib.** { *;}
-keep class com.tencent.beacon.** { *;}
-keep class com.tencent.qimei.** { *;}
Android SDKをホストプロジェクトに統合するとgsonライブラリとの競合エラーが発生しましたが、解決するにはどうすればよいですか。
ホストプロジェクトのbuild.gradle
ファイルに次のコードを追加します。
Android{
configurations {
all*.exclude group: 'com.google.code.gson'
}
}
Android targetSdkVersionが31以上の場合、soライブラリのロードは成功しないのですか。
Android targetSdkVersionが31以上の場合、appモジュールの下にあるAndroidManifest.xml
ファイルを探して、applicationタグの中に以下のタグを追加する必要があります。
<uses-native-library
android:name="libOpenCL.so"
android:required="true" />
//ここでtrueは、このライブラリがないとアプリが正常に動作しないことを意味します。システムは、このライブラリがないデバイスには、アプリケーションのインストールを許可しません。
//falseは、アプリケーションがこのライブラリ (存在する場合)を使用できますが、特に(必要な場合)このライブラリなしで実行することを意味します。このライブラリが存在しなくても、システムはアプリケーションのインストールを許可します。「false」を使用する場合は、ライブラリが存在しない状況を適切に処理する必要があります。
//Android公式サイトの説明:%!s(<nil>)
iOSでのリソースインポート実行後のエラー:「Xcode 12.XバージョンのコンパイルでBuilding for iOS Simulator, but the linked and embedded framework '.framework'...と表示される」が発生しました。
Build Settings > Build Options > Validate Workspace でYesに変更し、再度実行をクリックします。
説明
Validate WorkspaceをYesに変更するとコンパイルが完了します。再びNoに変更しても正常に実行できます。そのため、ここではこの問題が発生した場合にのみ注意してください。
フィルター設定が反応しません。
設定値が正しいかどうか確認してください。範囲は0~100ですが、値が小さすぎると効果がわかりづらい場合があります。
iOS Demoのコンパイルで、dSYMを生成する際にエラーが発生します。
PhaseScriptExecution CMake\\ PostBuild\\ Rules build/XMagicDemo.build/Debug-iphoneos/XMagicDemo.build/Script-81731F743E244CF2B089C1BF.sh
cd /Users/zhenli/Downloads/xmagic_s106
/bin/sh -c /Users/zhenli/Downloads/xmagic_s106/build/XMagicDemo.build/Debug-iphoneos/XMagicDemo.build/Script-81731F743E244CF2B089C1BF.sh
Command /bin/sh failed with exit code 1
問題の解析:libpag.framework
とMasonary.framework
の再署名に失敗したことが原因です。
解決方法:
1.1 demo/copy_framework.shを開きます。
1.2 $(which cmake)
をローカルcmakeの絶対パスに変更します。
1.3 署名Apple Development: ......
をご自身のアカウントに変更します。
iOS Demoで、メインページに進むと権限承認エラーと表示されます。
ログに表示された検証承認失敗のエラーコードを確認します。ローカルのLicenseファイルを使用している場合は、ファイルがプロジェクトに追加されているかをチェックします。
iOS Demoのコンパイルにエラーが発生しました。
unexpected service error: build aborted due to an internal error: unable to write manifest to-xxxx-manifest.xcbuild': mkdir(/data, S_IRWXU | S_IRWXG | S_IRWXO): Read-only file system (30):
解決方法:
1.1 File > Project settings > Build SystemでLegacy Build Systemを選択します。
1.2 Xcode 13.0++の場合はFile > Workspace SettingsでDo not show a diagnostic issue about build system deprecationにチェックを入れます。
Tencent Effectの各属性同士の効果には、どのような関係がありますか。
この記事はお役に立ちましたか?