我正在制作一些花哨的应用程序,需要很多短音才能使用它.几乎没有问题你可以回答.
我在android项目中存储的地方有一些限制吗?目前我把它们放在bin/res/sounds文件夹中.
是否对文件格式有限制并且.wav可以吗?
我需要一些东西来存储对那些声音的引用.我想出了一个字典,它包含一个声音名称(键)和一个文件路径,所以我可以使用这种方法:
mp = MediaPlayer.create(Test.this, R.raw.mysound);
我应该如何存储R.raw.mysound,它不是一个字符串对吗?
我道歉如果我对一切都不太清楚,我会尽我所能.干杯
有没有我可以使用的事件所以我会抓住ShowMessage屏幕上显示的那一刻?我还需要传递对TForm已显示消息的引用.
到目前为止我试过了OnDeactivate,但似乎ShowMessage并没有引起它......
在.NET中有一个关于Application的方法可以捕获每个MessageBox(Application.AddFilterMessage或类似这样的smth),我在delphi中需要这样的东西
我想要实现的是: 我必须抓住一个对话窗口出现的那一刻(或者只是一个模态窗口,但它并不那么舒服).我需要做几个指令.这些说明的目标是给我一个刚刚收到的DialogWindow的参考,所以我可以得到一些位于它上面的按钮.
不确定tittle是否正确但我需要做的是在一些集合中存储指向指定函数的指针.我这样做就像声明变量一样
SomeFunctionName: string
Run Code Online (Sandbox Code Playgroud)
当然这种类型不能是一个字符串,问题是它究竟应该是什么?
我正在使用Android Studio 0.4.5并且无法同步gradle.
当我尝试这样做时,我收到此错误:
Gradle 'MyApp' project refresh failed: Build script error, unsupported Gradle DSL method found: 'android()'!
Run Code Online (Sandbox Code Playgroud)
我的解决方案包含4个模块 这是我的根build.graddle:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.8.+'
}
}
android {
packagingOptions {
exclude 'META-INF/LICENSE.txt'
}
}
allprojects {
repositories {
mavenCentral()
}
}
Run Code Online (Sandbox Code Playgroud)
和其他人(为简单起见,我删除了依赖项)
第1单元
apply plugin: 'android'
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.8.+'
}
}buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.8.+'
}
}
android {
compileSdkVersion …Run Code Online (Sandbox Code Playgroud) 我正在创建一个看起来像对话框的活动.
这是风格:
<style name="TablesDialogActivity" parent="@android:style/Theme.Holo.Dialog">
<item name="android:windowBackground">@drawable/frame_background_left</item>
</style>
Run Code Online (Sandbox Code Playgroud)
这是onCreate()的活动:
protected void onCreate(Bundle savedInstanceState) {
getWindow().setFlags(LayoutParams.FLAG_NOT_TOUCH_MODAL, LayoutParams.FLAG_NOT_TOUCH_MODAL);
getWindow().setFlags(LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH, LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH);
super.onCreate(savedInstanceState);
}
Run Code Online (Sandbox Code Playgroud)
并且还在活动触摸拦截器内:
@Override
public boolean onTouchEvent(MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_OUTSIDE) {
finish();
return true;
}
return false;
}
Run Code Online (Sandbox Code Playgroud)
它几乎可以工作,活动在对话界限之外触摸完成,但它也与背景活动上的按钮交互,这是不好的.有关该文档的onTouchEvent说明如果您使用了触摸事件,则应返回true.我回归真实,但似乎并非如此.
我找不到一种方法将小部件的额外内容传递给Activity正确的.
我不想打开按钮点击活动,并传递一些额外内容.
Intent intent = new Intent(context, CreateOperationsActivity.class);
intent.putExtra("someKey", true);
PendingIntent pendingIntent = PendingIntent.getActivity(context, Constants.RequestCodes.CREATE_OPERATIONS, intent, PendingIntent.FLAG_UPDATE_CURRENT);
views.setOnClickPendingIntent(R.id.add_expense_button, pendingIntent);
Run Code Online (Sandbox Code Playgroud)
活动已打开,但没有额外的内容Intent.
我能够通过额外的唯一方法是设置PendingIntent标志,PendingIntent.FLAG_ONE_SHOT但随后widget按钮工作只是wince,点击它进一步不采取任何行动.
如何做到这一点,所以额外被拦截,Activity每次按钮工作?
我正在尝试将共享操作添加到工具栏中.工具栏应该是橙色的(或者像这种情况一样透明),带有白色文本和图标,因此我将此视图用作Toolbar:
<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/toolbar"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:minHeight="?attr/actionBarSize"
app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
tools:ignore="UnusedAttribute" />
Run Code Online (Sandbox Code Playgroud)
此外,这是我的应用程序主题声明的样子:
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
无论我如何改变风格,这都是我得到的:

我如何说服ShareActionProvider获取Light主题?
android android-appcompat shareactionprovider android-5.0-lollipop android-toolbar
我正在使用运行Android 7的Nexus 5X设备。我无法使用Charles Proxy文档中的最新说明来设置代理。我安装了证书,但扩展了wifi设置或nugat。我可以将查尔斯设置为证书,但这不会让我连接到该wifi(身份验证问题)。因此,我将其保留为“不检查正确性”。我什至不知道这是否相关。
问题是当我尝试嗅探我的应用程序https调用时,我看到SSLHandshake: Received fatal alert: certificate_unknown
但是,如果我在同一设备上使用chrome运行Web客户端-我可以读取对同一api的调用。
最重要的是,它适用于浏览器,但不适用于我的应用程序。我也检查了其他应用程序。输出相同。
我在这里问的原因是因为也许我必须在改造api设置中添加一些不安全的客户端-希望不是。
我刚刚将 gradle 从 6 更新到 7,将 AGP 从 4 更新到 7。我的 gradle 设置的一部分停止了编译。
applicationVariants.all { variant ->
if (variant.getName().contains("prodSe")) {
variant.mergedFlavor.signingConfig = signingConfigs.prodSeSigningConfig
}
}
Run Code Online (Sandbox Code Playgroud)
这现在导致:
由于以下之间的原型重叠,无法解析为 [class com.android.build.gradle.internal.dsl.SigningConfig_Decorated] 调用哪个方法:[interface com.android.builder.model.SigningConfig] [interface com.android.build.api .dsl.ApkSigningConfig]
感觉variant.mergedFlavor现在返回一个继承自具有相同方法的SigningConfig&的类型ApkSigningConfig。不知道如何解决这个问题。
android gradle android-gradle-plugin android-gradle-plugin-7
在 Android 中创建条形码扫描仪的最简单方法可能是使用 Google Code Scanner API https://developers.google.com/ml-kit/vision/barcode-scanning/code-scanner
然而,这似乎对我不起作用。我在 MainActivity.kt 文件中的代码如下所示:
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val options = GmsBarcodeScannerOptions.Builder()
.setBarcodeFormats(
Barcode.FORMAT_QR_CODE,
Barcode.FORMAT_AZTEC)
.build()
val scanner = GmsBarcodeScanning.getClient(this, options)
scanner.startScan()
.addOnSuccessListener { barcode ->
val rawValue: String? = barcode.rawValue
}
.addOnCanceledListener {
// Task canceled
}
.addOnFailureListener { e ->
// Task failed with an exception
}
}
}
Run Code Online (Sandbox Code Playgroud)
该settings.gradle文件有以下代码:
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
google()
mavenCentral()
}
}
Run Code Online (Sandbox Code Playgroud)
我的build.gradle …
android ×8
delphi ×2
gradle ×2
android-file ×1
events ×1
function ×1
google-mlkit ×1
kotlin ×1
proxy ×1