当前位置:  编程技术>移动开发
本页文章导读:
    ▪(5)层级管理器        (五)层级管理器 android-sdk-windows\tools  目录下打开此工具  利用层级观察器查看和优化自己的UI层次关系,看别人应用程序UI的布局结构,双击该处理文件,显示如下 图: (要打开模拟器).........
    ▪ (6)界面优化        (六)界面优化 <merge/><include/><viewstub/> ......
    ▪ apk里装配apk       apk里安装apk 【转载】假设在A apk中放入 B apk,在A apk安装运行后,要安装 B apk 将B apk放在raw目录。 将B apk拷贝至 /data/data/A apk的包名/files 设置B apk的权限。 通过系统安装器安装。 代码随后.........

[1](5)层级管理器
    来源: 互联网  发布时间: 2014-02-18
(五)层级管理器

android-sdk-windows\tools  目录下打开此工具



 利用层级观察器查看和优化自己的UI层次关系,看别人应用程序UI的布局结构,双击该处理文件,显示如下 图:

(要打开模拟器)



 

视图左侧为View和ViewGroup关系图,双击单项,查看视图:

 



 

 


    
[2] (6)界面优化
    来源: 互联网  发布时间: 2014-02-18
(六)界面优化

<merge/><include/><viewstub/>


    
[3] apk里装配apk
    来源: 互联网  发布时间: 2014-02-18
apk里安装apk
【转载】

假设在A apk中放入 B apk,在A apk安装运行后,要安装 B apk
将B apk放在raw目录。
将B apk拷贝至 /data/data/A apk的包名/files
设置B apk的权限。
通过系统安装器安装。
代码随后上
String apkPath = "/data/data/" + getPackageName() + "/files";  
String apkName = "b.apk";  
File file = new File(apkPath,apkName);  
  
try  
{  
                InputStream is = getResources().openRawResource(R.raw.b);  
  
                if(!file.exists())  
                {  
                    file.createNewFile();  
  
                    FileOutputStream os = openFileOutput(file.getName(), Context.MODE_WORLD_WRITEABLE);  
  
                    byte[] bytes = new byte[512];  
                    int i = -1;  
                    while((i = is.read(bytes))>0)  
                    {  
                        os.write(bytes);  
                    }  
  
                    os.close();  
                    is.close();  
                    Log.d(LOG_TAG, apkName + " has been copy to " + apkPath);  
                };  
  
                String permission="666";  
  
                try  
                {  
                    String command = "chmod " + permission + " " + apkPath + "/" + apkName;  
                    Runtime runtime = Runtime.getRuntime();  
                    runtime.exec(command);  
                }  
                catch (IOException e)  
                {  
                    e.printStackTrace();  
                }  
  
            }  
            catch(Exception e)  
            {  
                Log.d(LOG_TAG, e.toString());  
                finish();  
            }  
  
            Intent intent = new Intent();  
            intent.setAction(android.content.Intent.ACTION_VIEW);  
            intent.setDataAndType(Uri.fromFile(file), "application/vnd.android.package-archive");  
            intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);  
            startActivity(intent);


如果apk文件过大,如下
-------------------------------------------------------
http://www.hfdigg.com/SrcShow.asp?Src_ID=10092


android raw文件夹下.db后缀文件大于1M时,拷贝时将会出现:DEBUG/asset(725): Data exceeds UNCOMPRESS_DATA_MAX (1662976 vs 1048576)

出现这个问题的原因是,assetsManager 无法处理大于1M的文件的压缩和解压。
但以下文件类型,因为是已经压缩过的,不会进行压缩处理,如下:
/* these formats are already compressed, or dont compress well */
static const char* kNoCompressExt[] = {
     ".jpg", ".jpeg", ".png", ".gif",
     ".wav", ".mp2", ".mp3", ".ogg", ".aac",
     ".mpg", ".mpeg", ".mid", ".midi", ".smf", ".jet",
     ".rtttl", ".imy", ".xmf", ".mp4", ".m4a",
     ".m4v", ".3gp", ".3gpp", ".3g2", ".3gpp2",
     ".amr", ".awb", ".wma", ".wmv"
};
【解决办法】将Sqlite db文件,先改名为.jpg文件,放在assets中,然后在程序第一次启动时,改名拷贝到/data/data

    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android获取手机SIM卡运营商信息的方法
▪Android实现将已发送的短信写入短信数据库的...
▪Android发送短信功能代码
▪Android根据电话号码获得联系人头像实例代码
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android双击返回键退出程序的实现方法
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
▪Android中实现为TextView添加多个可点击的文本
▪Android程序设计之AIDL实例详解
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3