我在android中遇到了ASSETS文件夹的问题。我把文件夹和文件放在ASSETS中,对于一些文件夹/文件,我得到了FileNotFoundException。然后我按代码打印了ASSETS文件夹中的所有文件夹/文件名,我看到并非所有文件夹/文件都打包到APK中。为什么会这样?所有文件和文件夹都有没有特殊字符的名称,例如:“Prevoz tereta i lica vozilima / Prevoz tereta i lica vozilima.json”?对于某些文件/文件夹,它可以正常工作有谁知道如何解决这个问题?提前致谢!
答案 0 :(得分:1)
我想我找到了解决问题的方法。需要在ASSETS文件夹中的文件是在我的桌面上创建的。我在Android Studio中创建了ASSETS文件夹,但是当我将文件从桌面放到资源时,我没有通过Android Studio而是通过Windows资源管理器放置它们。我在那里找到了资产文件夹和粘贴文件的位置,所以我认为Android Studio没有为其中一些编制索引。现在我通过Android Studio创建了4-5个文件和文件夹(右键单击assets文件夹 - > new - >文件/目录),并且每个文件和文件夹都打包并正常工作。所以我认为这是问题和解决方案。我将不得不在Android Studio中手动创建每个文件和文件夹,然后将数据放入这些空文件中。谢谢大家的帮助/建议。我很高兴我找到了解决方案,即使它是愚蠢的。 明天我会把它作为一个公认的答案,因为stackoverflow直到明天才允许我这样做。
答案 1 :(得分:0)
你必须以某种方式刷新你的项目。 如果您使用的是Android Studio转到文件>同步或按'CTRL + ALT + y'。 确保您的assets文件夹位于项目的src / main目录中。
答案 2 :(得分:0)
file-invalidate并重新启动
tools-android-sync项目与gradle文件
答案 3 :(得分:0)
如果将离子ATOM /其他文件和离子文件传输到ANDROIDSTUDIO,请阅读
存在IDE界面问题。 对我有用的是:像这样删除和读取android:
<div class="container">
<div class="row">
<div class="col s6">
<label>Num Pages Paginate</label>
<select id="numPagesPaginate" name="numPagesPaginate" data-ng-model="bkCtrl.page.pageSize">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
</select>
</div>
<div class="col s6">
<label>Num Ratings Edit</label>
<select id="numRatingsEdit" name="numRatingsEdit">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
</select>
</div>
</div>
</div>
<script>
$(document).ready(function () {
$('select').formSelect();
});
</script>
(您可能需要从平台上手动删除android文件夹)
ionic cordova platform remove android
然后,您可以继续生成发行文件,然后在android studio等中生成签名的apk。