草庐IT

java - Android NDK 是否为通过套接字发送大 int[] 提供加速?

我需要通过两个Android设备之间的套接字发送一个包含500,000个整数的数组。目前,我花了很多时间将int[]转换为byte[],以便Java的套接字可以接受它(请参阅我之前的问题Efficientlysendlargeint[]oversocketsinJava,我们确定没有更快的方法在Java中进行类型转换).我现在的问题是,如果我采用int[]并通过JNI将其传递给AndroidNDK,我是否可以期望在native代码中转换为byte[]的速度更快?我知道在普通的C中将int*类型转换为char*非常简单,但是我想知道JNI是否会抵消任何性能提升。此外,一旦我的native

android - 将 Android Shared Preference Value 从 String 更改为 Int

我正在更新我的Android应用程序。该应用程序从我的服务器检索数据,其中有一个用户ID。用户ID是一个数字(整数),但它作为字符串从服务器到达,例如“1234”。在旧版本中,我随后将此用户ID作为字符串保存在我的共享首选项中,但现在我回过头来看它,我不喜欢它,并希望将它保存为Integer,因为它应该是。到目前为止非常简单。我只使用putInt/getInt而不是putString/getString。问题是所有当前使用该应用程序的人都会将值作为字符串保存在他们的共享首选项中,然后当他们更新应用程序时,新版本的应用程序将开始尝试使用getInt来获取旧版本的值版本保存为字符串。避免由

android - Bitmap.createBitmap(Bitmap source, int x, int y, int width, int height) 返回错误的位图

我必须裁剪位图图像。为此,我正在使用Bitmapbitmap=Bitmap.createBitmap(imgView.getWidth(),imgView.getHeight(),Bitmap.Config.RGB_565);Bitmapresult=Bitmap.createBitmap(bitmap,imgView.getLeft()+10,imgView.getTop()+50,imgView.getWidth()-20,imgView.getHeight()-100);bitmap.recycle();Canvascanvas=newCanvas(result);imgView

android - 如何将 int 转换为 drawable?

我创建了一个带有图标列表的对话框,即可绘制对象。我创建了一个GridView来显示这些图标。现在我想获取选定的图标并将其设置为我的Activity中的ImageView。那么我怎样才能将它转换成可绘制的,以便我可以在我的Activity的ImageView上设置选定的图标?对话代码:privatevoidshowAlertDialog(){GridViewgridView=newGridView(this);gridView.setGravity(Gravity.CENTER);gridView.setPadding(0,20,0,20);int[]mThumbIds={R.drawa

android - 错误 i R.java : "Syntax error on token ' int', VariableDeclaratorId 预期在此 token 之后“

今天早上,当我打开Eclipse来处理一个Android项目时,我在R.java文件中发现了一个错误。我知道错误是什么,但我似乎无法掌握如何修复它;\错误所在的代码:publicstaticfinalclassstring{publicstaticfinalint=0x7f040010;publicstaticfinalintapp_name=0x7f040000;如您所见,第一个字段没有名称,这当然会出错。问题是当我删除文件并再次自动生成时,错误仍然存​​在。如果我尝试手动更改或删除该字段,它无济于事。还是报错。尝试重新启动Eclipse-没有区别。尝试清理项目,我尝试从Androi

安卓 :NullPointerException: Attempt to invoke virtual method 'int android.graphics.Bitmap.getWidth()' on a null object reference

我正在尝试从SD卡获取图像到位图中以在ImageView中显示。运行应用程序后,首先显示两到三个图像,但是当我滚动列表时应用程序崩溃并出现NullPointerException异常:java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法“intandroid.graphics.Bitmap.getWidth()”在com.example.tazeen.classnkk.Activity1$MyListAdapter.getView(Activity1.java:357)if(objElement.endsWith(mp3_Pattern)){Lo

android - 将 native fd int 从可打开的 URI 传递到 FFMPEG

我正在尝试从存储访问框架的CATEGORY_OPENABLEURI打开文件描述符。我首先尝试使用sdcard上的文件,我已经可以使用_data列将其解析为文件路径并打开(我试图避免这样做,而是使用文件描述符).我得到了这样的原生intfd:intfd=getContentResolver().openFileDescriptor(data.getData(),"r").detachFd();然后在C++中,我试图像这样打开它,这个想法来自HowtoproperlypassanassetFileDescriptortoFFmpegusingJNIinAndroid:pFormatCtx=

java - Android - 无法以编程方式删除 Wifi 网络 - WifiManager 类型中的方法 removeNetwork(int) 不适用于参数(字符串)

我正在尝试以编程方式删除我的wifi网络-但是我似乎无法删除/忘记当前连接的wifi连接。这应该是一项非常简单的任务-所以我不确定我做错了什么。我使用以下StackOverflow帖子作为示例:Howtoforgetawirelessnetworkinandroidprogrammatically?publicclassKillTimerextendsActivity{@OverridepublicvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layo

android - 错误 : "Cannot make a static reference to the non-static method findViewById(int) from the type Activity"

我是Java的新手,正在尝试使用EditText创建一个Activity。创建时,它加载当前日期,当用户选择EditText时,它显示一个DatePicker。用户选择日期后,我需要将结果放入EditText。但是,我目前收到以下错误:Cannotmakeastaticreferencetothenon-staticmethodfindViewById(int)fromthetypeActivity我知道我不能对非静态方法进行静态引用。我试图删除所有静态引用,但这给了我其他错误。我的代码如下。您能帮我提供一些示例代码,说明我如何才能完成这项工作吗?错误出在我尝试将结果放入EditTex

android - setCompoundDrawablesWithIntrinsicBounds(int,int,int,int)不起作用

我有几个EditTextView,我想在其中设置左侧的图像,而setCompoundDrawablesWithIntrinsicBounds似乎不起作用。图形似乎没有改变。有人知道为什么会这样吗?这是我设置可绘制对象的方式:mFirstname.setCompoundDrawablesWithIntrinsicBounds(R.drawable.user_icon,0,0,0);mLastname.setCompoundDrawablesWithIntrinsicBounds(R.drawable.user_icon,0,0,0);mEmail.setCompoundDrawables